Summary

Оценка областей контакта между руками и предметами при многозначном хватании человека

Published: April 21, 2023
doi:

Summary

Когда мы хватаемся за объект, несколько областей пальцев и кисти обычно соприкасаются с поверхностью объекта. Реконструкция таких контактных областей является сложной задачей. Здесь мы представляем метод приблизительной оценки областей контакта путем объединения захвата движения на основе маркеров с существующей реконструкцией ручной сетки на основе глубокого обучения.

Abstract

Чтобы успешно захватить объект, мы должны выбрать соответствующие области контакта для наших рук на поверхности объекта. Однако выявление таких регионов является сложной задачей. В этом документе описывается рабочий процесс для оценки областей контакта на основе данных отслеживания на основе маркеров. Участники захватывают реальные объекты, в то время как мы отслеживаем 3D-положение как объектов, так и руки, включая суставы пальцев. Сначала мы определяем суставные углы Эйлера по выбору отслеживаемых маркеров, расположенных на тыльной стороне руки. Затем мы используем самые современные алгоритмы реконструкции ручной сетки для создания сетчатой модели руки участника в текущей позе и 3D-положении.

Использование объектов, которые были либо напечатаны на 3D-принтере, либо отсканированы на 3D-принтере и, таким образом, доступны как в виде реальных объектов, так и в виде данных сетки, позволяет совместно регистрировать сетки рук и объектов. В свою очередь, это позволяет оценить приблизительные области контакта путем вычисления пересечений между ручной сеткой и совместно зарегистрированной сеткой 3D-объекта. Этот метод может быть использован для оценки того, где и как люди захватывают объекты в различных условиях. Поэтому метод может быть интересен исследователям, изучающим визуальное и тактильное восприятие, управление моторикой, взаимодействие человека с компьютером в виртуальной и дополненной реальности, робототехнику.

Introduction

Способность захватывать объекты и манипулировать ими является ключевой способностью, которая позволяет людям изменять окружающую среду в соответствии со своими желаниями и потребностями. Однако эффективное управление многошарнирными руками — сложная задача, требующая сложной системы управления. Эта система управления двигателем управляется несколькими формами сенсорного ввода, среди которых зрение имеет первостепенное значение. Благодаря зрению люди могут идентифицировать объекты в окружающей среде и оценивать их положение и физические свойства, а затем могут легко достигать, захватывать и манипулировать этими объектами. Понимание сложной системы, которая связывает вход на сетчатке с двигательными командами, которые управляют руками, является ключевой проблемой сенсомоторной нейробиологии. Чтобы смоделировать, предсказать и понять, как работает эта система, мы должны сначала изучить ее в деталях. Это требует высокоточных измерений как визуальных входов, так и выходов ручного двигателя.

Прошлая технология отслеживания движения наложила ряд ограничений на изучение человеческого хватания. Например, системы, требующие кабелей, прикрепленных к рукамучастников 1,2, имеют тенденцию ограничивать диапазон движений пальцев, потенциально изменяя хватательные движения или сами измерения. Несмотря на такие ограничения, предыдущие исследования смогли выявить несколько факторов, влияющих на визуально управляемое хватание. Некоторые из этих факторов включают форму объекта 3,4,5,6, шероховатость поверхности 7,8,9 или ориентацию объекта относительно руки 4,8,10. Однако, чтобы преодолеть предыдущие технологические ограничения, в большинстве этих предыдущих исследований использовались простые стимулы и очень ограниченные задачи, таким образом, основное внимание уделялось отдельным факторам 3,4,6,7,10, двузначным точным захватам 3,4,6,9,11,12, 13,14,15,16,17,18, отдельные объекты19 или очень простые 2D-фигуры 20,21. Как предыдущие результаты обобщают такие сокращенные и искусственные лабораторные условия, неизвестно. Кроме того, измерение контакта рука с предметом часто сводится к оценке точекконтакта цифр 22. Это упрощение может быть уместно для описания небольшого подмножества захватов, в которых только кончики пальцев соприкасаются с объектом. Однако в большинстве реальных схваток обширные области пальцев и ладони соприкасаются с объектом. Кроме того, недавнее исследование23 продемонстрировало, используя тактильную перчатку, что объекты можно распознать по тому, как их поверхность соприкасается с рукой. Это подчеркивает важность изучения расширенных областей контакта между руками и захваченными объектами, а не только точек контакта между объектами и кончиками пальцев22.

Последние достижения в области захвата движения и 3D-моделирования рук позволили нам преодолеть прежние ограничения и изучить хватание во всей его сложности. Пассивное отслеживание движения на основе маркеров теперь доступно с маркерами миллиметрового размера, которые могут быть прикреплены к тыльной стороне рук участника для отслеживания движений суставов24. Кроме того, алгоритмы автоматической идентификации маркеров для пассивных маркерных систем в настоящее время достаточно надежны, чтобы практически исключить необходимость обширной ручной постобработки маркерных данных25,26,27. Безмаркерные решения также достигают впечатляющего уровня производительности при отслеживании частей тела животных в видеороликах28. Таким образом, эти методы отслеживания движения, наконец, позволяют проводить надежные и неинвазивные измерения сложных многозначных движений рук24. Такие измерения могут информировать нас о кинематике суставов и позволяют нам оценить точки контакта между рукой и объектом. Кроме того, в последние годы сообщество компьютерного зрения занимается проблемой построения моделей человеческих рук, которые могут воспроизводить деформации мягких тканей при захвате объекта и даже при самостоятельном контакте между частями руки 29,30,31,32. Такие 3D-реконструкции сетки могут быть получены из различных типов данных, таких как видеоматериалы 33,34, скелетные суставы (полученные на основе маркеров35 или безмаркерного слежения 36) и изображения 37 глубины. Первый ключевой прогресс в этой области был сделан Ромеро и др.38, которые получили параметрическую модель руки (MANO) из более чем 1000 сканирований рук 31 субъекта в различных позах. Модель содержит параметры как для позы, так и для формы руки, что облегчает регрессию из разных источников данных к полной реконструкции руки. Более позднее решение DeepHandMesh29 основано на этом подходе, создавая параметризованную модель с помощью глубокого обучения и добавляя предотвращение проникновения, которое более точно воспроизводит физические взаимодействия между частями руки. Таким образом, комбинируя такие реконструкции ручной сетки с сетками 3D-отслеживаемых объектов, теперь можно оценивать контактные области не только на поверхности объектов32, но и на поверхности руки.

Здесь мы предлагаем рабочий процесс, который объединяет высокоточное 3D-отслеживание объектов и суставов рук с новыми алгоритмами реконструкции ручной сетки. Метод дает подробные карты поверхностей, контактирующих с руками и объектами. Эти измерения помогут нейробиологам сенсомоторных нейробиологов расширить наше теоретическое понимание зрительного захвата человека. Кроме того, метод может быть полезен исследователям в смежных областях. Например, исследователи человеческого фактора могут использовать этот метод для создания более совершенных систем человеко-машинного интерфейса в виртуальной и дополненной реальности18. Высокоточные измерения хватательного поведения человека также могут помочь робототехникам в разработке вдохновленных человеком роботизированных хватательных систем, основанных на принципах интерактивного восприятия 39,40,41,42,43. Таким образом, мы надеемся, что этот метод поможет продвинуть исследования в области нейробиологии и инженерии от скудных описаний сильно ограниченных задач до более полных характеристик натуралистического хватательного поведения со сложными объектами и реальными задачами. Общий подход показан на рисунке 1.

Figure 1
Рисунок 1: Ключевые этапы предлагаемого метода . (A) Камеры захвата движения отображают верстак под разными углами. (B) Объект стимула печатается на 3D-принтере из триангулированной сетчатой модели. (C) Четыре сферических светоотражающих маркера приклеиваются к поверхности реального объекта. Полуавтоматическая процедура идентифицирует четыре соответствующие точки на поверхности сетчатого объекта. Это соответствие позволяет нам рототрансформировать сетчатую модель в 3D-отслеживаемое положение реального объекта. (D) Светоотражающие маркеры прикрепляются к различным ориентирам на тыльной стороне руки участника с помощью двустороннего скотча. (E) Система захвата движения фиксирует траектории в 3D-пространстве отслеживаемого объекта и ручных маркеров в течение одного испытания. (F) Скелет руки конкретного участника конструируется с использованием программного обеспечения для компьютерной 3D-графики. Затем позы скелетных суставов оцениваются для каждого кадра каждого испытания в эксперименте с помощью обратной кинематики. (G) Совместные позы вводятся в модифицированную версию DeepHandMesh29, которая выводит предполагаемую 3D-сетку рук в текущей 3D-позе и положении. (H) Наконец, мы используем пересечение сетки для вычисления областей контакта рук и объектов. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка.

Protocol

Перед началом эксперимента участники должны дать информированное согласие в соответствии с институциональными руководящими принципами и Хельсинкской декларацией. Все протоколы, описанные здесь, были одобрены местным комитетом по этике Гиссенского университета им. Юстуса Либиха (LEK-FB06). 1. Установка всего необходимого программного обеспечения Загрузите репозиторий проекта в репозитории данных и кода. Установите программное обеспечение, указанное в таблице материалов (обратите внимание на версии программного обеспечения и перейдите по ссылкам, чтобы узнать о вариантах покупки и инструкциях). В репозитории данных и кода откройте командное окно и выполните следующую команду:conda env create -f environment.yml Загрузите и установите предварительно обученный экземпляр DeepHandMesh29 , следуя инструкциям, приведенным в https://github.com/facebookresearch/DeepHandMesh.Поместите DeepHandMesh в папку «deephandmesh» репозитория данных и кода. Замените файл “main/model.py” файлом model.py, содержащимся в репозитории данных и кода. 2. Подготовка системы захвата движения Расположите верстак в объеме слежения, изображенном под разными углами камерами слежения за движением, расположенными на раме, окружающей рабочее пространство (рис. 1A). Подготовьте светоотражающие маркеры, прикрепив двустороннюю клейкую ленту к основанию каждого маркера. Выполните Qualisys Track Manager (QTM) от имени администратора.ПРИМЕЧАНИЕ: Выполнение QTM от имени администратора необходимо для того, чтобы Python SDK получил контроль над интерфейсом QTM. Мы советуем всегда запускать QTM от имени администратора. 3. Калибровка камер Поместите L-образный калибровочный объект в объем отслеживания. В QTM нажмите «Калибровка» в меню «Захват» или нажмите значок палочки на панели инструментов «Захват». Подождите, пока откроется окно калибровки. Выберите продолжительность калибровки и нажмите OK. Помашите калибровочной палочкой по объему отслеживания на время калибровки. Нажмите кнопку «Экспорт» и укажите путь к файлу, в который будет экспортирована калибровка в виде текстового файла. Примите калибровку, нажав OK. 4. Создание объекта стимула Постройте виртуальную 3D-модель объекта в виде полигональной сетки. Используйте 3D-принтер для создания физической копии объектной модели.ПРИМЕЧАНИЕ: Репозиторий данных на шаге 1.1 предоставляет примеры объектов в форматах STL и Wavefront OBJ. Объекты в формате STL многообразны и готовы к 3D-печати. 5. Подготовка объекта стимула Прикрепите четыре неплоских светоотражающих маркера к поверхности реального объекта. Поместите объект в объем отслеживания. В репозитории проекта выполните скрипт Python “Acquire_Object.py”. Следуйте инструкциям, предоставленным сценарием, чтобы выполнить захват 3D-положения маркеров объекта за 1 с. Выделите все маркеры твердого тела. Щелкните правой кнопкой мыши и выберите «Определить твердое тело» (6DOF) | Текущий кадр. Введите имя твердого тела и нажмите OK. В меню « Файл » выберите « Экспорт» | В TSV. В новом окне установите флажки 3D, 6D и Skeleton в настройках типа данных . Поставьте галочки во всех полях в Общих настройках. Нажмите кнопку ОК, а затем нажмите кнопку Сохранить. 6. Совместная регистрация реальных и сетчатых модельных версий объекта стимула Откройте Blender и перейдите в рабочую область Сценарии . Откройте файл «Object_CoRegistration.py» и нажмите «Выполнить». Перейдите в рабочую область «Макет » и нажмите n , чтобы переключить боковую панель. На боковой панели перейдите на вкладку «Пользовательский ». Выберите OBJ-файл для совместной регистрации и нажмите кнопку «Загрузить объект ». Выберите файл траектории, который был экспортирован на шаге 3.3, и укажите имена маркеров, прикрепленных к жесткому объекту, разделенные точкой с запятой. В заголовке Маркер укажите строку в файле траектории, содержащую имена столбцов данных (отсчет начинается с 0). Выберите соответствующий файл твердого тела с суффиксом 6D и укажите имя твердого тела, определенное на шаге 4.1. В заголовке 6D укажите строку в файле твердого тела, содержащую имена столбцов данных. Нажмите Загрузить маркеры. Переместите и поверните объект «Маркеры» и/или объект «Объект», чтобы выровнять их. Укажите выходной файл сетки и нажмите кнопку Выполнить совместную регистрацию. При этом будет выведен OBJ-файл, содержащий совместно зарегистрированную сетку стимулов. 7. Установка маркеров на руках Прикрепите 24 сферических светоотражающих маркера к различным ориентирам руки участника с помощью двустороннего скотча.ПРИМЕЧАНИЕ: Конкретное расположение маркеров показано на рисунке 2.Расположите маркеры по центру поверх соответствующих кончиков пальцев, а также дистальных межфаланговых суставов, проксимальных межфаланговых суставов и пястно-фаланговых суставов указательного, среднего, безымянного и мизинца. Для большого пальца поместите по одному маркеру на кончик пальца и базальный пястно-пястный сустав, а также по паре маркеров на пястно-фаланговый и межфаланговый суставы.ПРИМЕЧАНИЕ: Эти пары маркеров должны быть смещены в противоположных направлениях перпендикулярно основной оси большого пальца и необходимы для оценки ориентации большого пальца. Наконец, поместите маркеры в центр запястья и на ладьетерапевтический сустав. Рисунок 2: Размещение маркера на руке участника. Аббревиатура: RH = правая рука. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка. 8. Получение одной пробной версии Попросите участника положить руку на верстак ладонью вниз и закрыть глаза. Поместите объект стимула на верстак перед участником. Во время работы QTM выполните скрипт Python «Single_Trial_Acquisition.py» в репозитории проекта. Следуйте инструкциям, предоставленным сценарием, чтобы запечатлеть одно испытание, в котором участник захватывает объект стимула.ПРИМЕЧАНИЕ: Сценарий создаст звуковой сигнал. Это подаст сигнал участнику открыть глаза и выполнить захват. В наших демонстрациях задача состоит в том, чтобы дотянуться и схватить целевой объект, поднять его вертикально примерно на 10 см, опустить и вернуть руку в исходное положение. 9. Маркировка маркеров В QTM перетащите отдельные траектории маркеров из Неопознанные траектории в Помеченные траектории и пометьте их в соответствии с соглашением об именовании на рисунке 2. Выделите все маркеры, прикрепленные к руке, щелкните правой кнопкой мыши и выберите «Создать модель AIM из выбора». В новом окне выберите Создать новую модель на основе соединений Marker из существующей модели AIM и нажмите кнопку Далее . Выберите определение модели RH_FH и нажмите кнопку Открыть. Нажмите кнопку Далее, введите имя модели AIM и нажмите кнопку ОК. Наконец, нажмите «Готово», чтобы создать модель AIM для руки участника, которая будет использоваться для автоматической идентификации маркеров в последовательных испытаниях одного и того же участника. 10. Создание персонализированного определения скелета участника В QTM перейдите в меню «Воспроизведение » и выберите « Воспроизвести с выводом в реальном времени». Откройте Maya. Перейдите к полке QTM Connect и нажмите значок «Подключиться к QTM ». В новом окне установите флажок « Маркеры» и нажмите «Подключить». Теперь нажмите кнопку Play значок на полке QTM Connect . Удерживая клавишу Shift, выделите все маркеры рук и нажмите значок «Промыть локаторы ». Выделите вымытые маркеры для рук и нажмите Ctrl + G. Это создаст групповой узел. Назовите группу Маркеры. Выделите все ручные маркеры. В меню Изменить выберите команду Поиск и замена имен. Найдите префикс RH_ и удалите префикс для маркеров. Нажмите значок Import Solver на полке QTM Connect . Загрузите определение скелета “RH_FH.xml”. В меню Windows выберите Общие редакторы | Редактор пространства имен. В новом окне щелкните :(корень) и нажмите « Создать », чтобы создать новое пространство имен RH. Щелкните пространство имен RH , нажмите «Создать» и назовите новое пространство имен ModelPose. Выберите все маркеры, щелкните пространство имен RH и нажмите «Добавить выбранное », чтобы добавить маркеры в пространство имен RH . Выделите кости скелета, щелкните пространство имен ModelPose и нажмите кнопку Добавить выбранное , чтобы добавить кости скелета в пространство имен ModelPose . Поворачивайте, переводите и масштабируйте скелет в соответствии с данными маркера. Затем для каждого сустава скелета в отдельности нажмите «Shift» + «Выберите сустав скелета и связанные с ним маркеры» и нажмите значок « Добавить вложения». Наконец, нажмите значок Export Solver , чтобы экспортировать новое определение скелета в XML-файл, который можно загрузить в QTM (см. следующий шаг).ПРИМЕЧАНИЕ: Этот шаг не является строго необходимым, но он полезен для повышения точности подгонки скелета к данным маркера. Дополнительные сведения см. в кратком руководстве QSolverQuickstartGuide на https://github.com/qualisys/QTM-Connect-For-Maya. 11. Реконструируйте позы суставов скелетных суставов. В QTM откройте настройки проекта, нажав значок шестеренки . На боковой панели перейдите к Skeleton Solver и нажмите «Загрузить », чтобы выбрать файл определения скелета. Отрегулируйте коэффициент масштабирования на 100% и нажмите «Применить». Перейдите в раздел «Экспорт TSV» и установите флажки «3D», «6D» и «Скелет» в настройках типа данных. Поставьте галочки во всех полях в Общих настройках. Нажмите кнопку Применить и закройте настройки проекта. Нажмите значок «Переработать», установите флажки « Решить скелеты » и « Экспорт в файл TSV» и нажмите «ОК». 12. Создание реконструкций ручной сетки Откройте командное окно в репозитории проекта и активируйте среду conda, выполнив команду:Conda Activate Contact-Regions Затем выполните следующую команду и следуйте инструкциям, предоставленным сценарием, чтобы создать для каждого кадра пробной версии сетку руки, реконструирующую текущую позу руки.Python Hand_Mesh_Reconstruction.py –GPU 0 –test_epoch 4ПРИМЕЧАНИЕ: Эти реконструкции сетки генерируются автоматически с использованием модифицированной версии инструмента ручной генерации сеток с открытым исходным кодом DeepHandMesh29. 13. Создание оценок области контакта рук с объектами Откройте командное окно в репозитории проекта, выполните следующую команду и следуйте инструкциям, предоставленным сценарием, чтобы создать оценки области контакта руки и объекта путем вычисления пересечения между сетками руки и объекта.blender –background –python “Contact_Region_Estimation.py”

Representative Results

Первым требованием к предлагаемому методу является система точного отслеживания положения 3D-объектов и рук. Конкретная настройка показана на рисунке 1A и использует аппаратное и программное обеспечение, разработанное компанией Qualisys, занимающейся захватом движения. Мы располагаем верстак в объеме слежения (100 см x 100 см x 100 см), который снимается с разных ракурсов восемью камерами слежения и шестью видеокамерами, расположенными на кубической рамке, окружающей рабочее пространство. Камеры слежения отслеживают 3D-положение светоотражающих маркеров в объеме слежения со скоростью 180 кадров в секунду и с субмиллиметровым 3D-пространственным разрешением. Мы используем светоотражающие маркеры толщиной 4 мм, которые прикрепляются к предметам и рукам с помощью удобной для кожи двусторонней клейкой ленты. Положение 3D-маркеров обрабатывается программным обеспечением для захвата движения. В дискуссионном разделе также рассматриваются альтернативные системы захвата движения, которые могут быть использованы с предлагаемым методом. Чтобы получить точные 3D-реконструкции реальных объектов, которые захватываются и манипулируются, мы предлагаем два варианта. Первый, который принят здесь, заключается в том, чтобы начать с виртуальной 3D-объектной модели в виде полигональной сетки. Такие 3D-модели могут быть построены с использованием соответствующего программного обеспечения (например, Blender 3D44), а затем напечатаны на 3D-принтере (рис. 1B). Второй вариант заключается в том, чтобы взять существующий, реальный 3D-объект и использовать технологию 3D-сканирования для создания реплики сетчатой модели объекта. Какой бы ни была стратегия, конечная цель состоит в том, чтобы получить как реальный 3D-объект, так и соответствующую виртуальную модель сетки 3D-объекта. Следует отметить, что описанный здесь подход работает только с жесткими (т.е. недеформируемыми) объектами. После того, как 3D-поверхность объекта доступна в виде сетчатой модели, ее положение должно быть отслежено и совместно зарегистрировано (рис. 1C). Для этого к поверхности реального объекта прикрепляются четыре неплоских светоотражающих маркера, и объект помещается в объем слежения. Затем кратко фиксируются 3D-положения маркеров объектов. Этот захват используется для установления соответствия между четырьмя маркерами и четырьмя вершинами модели сетки объекта. Это делается с помощью простого специального программного маршрута, написанного в API Python Blender. В Blender’s Viewport программа представляет виртуальный объект вместе с позициями маркеров, которые представлены в виде единого сетчатого объекта, состоящего из одной сферы для каждого маркера. Затем пользователь может поворачивать и переводить объект и/или маркеры, чтобы выровнять их таким образом, чтобы они совпали с реальными маркерами, размещенными на реальном объекте. Программа зарегистрирует вращения и перемещение, которые применяются для вычисления одного ротационного перемещения, которое, наконец, применяется к исходной сетке объекта, обеспечивая сетку объекта, которая регистрируется совместно с определением твердого тела в QTM. Установив соответствие, всякий раз, когда реальный объект перемещается в пределах отслеживаемого объема, виртуальный объект может быть помещен в новое положение, вычислив ротационное перемещение между отслеживаемыми маркерами и четырьмя соответствующими вершинами сетки. Вместо этого для записи динамики захвата в общей сложности 24 сферических светоотражающих маркера прикреплены к различным ориентирам руки с помощью двустороннего скотча (рис. 1D и рис. 2). В начале испытания (рис. 1E) участник кладет руку на верстак ладонью вниз и закрывает глаза. Экспериментатор помещает целевой объект на верстак перед участником. Затем звуковой сигнал сигнализирует участнику, чтобы он открыл глаза и выполнил захват. В наших демонстрациях задача состоит в том, чтобы дотянуться и схватить целевой объект, поднять его вертикально примерно на 10 см, опустить и вернуть руку в исходное положение. Эксперимент управляется сценарием, написанным на Python 3.7. В каждом испытании сценарий выбирает и сообщает экспериментатору текущие настройки условий (например, идентификацию и позиционирование объекта). Сценарий также управляет временем пробного периода, включая слуховые сигналы, а также начало и остановку записи захвата движения. Конечности характеризуются не только их положением в 3D-пространстве, но и их позой. Таким образом, чтобы получить полную 3D-реконструкцию человеческой руки, выполняющей реальный захват, нам требуются не только положения каждого сустава в 3D-пространстве, но и относительное положение (перемещение и вращение) каждого сустава по отношению к его родительскому суставу (рис. 1F). Положение и ориентация скелетных суставов могут быть выведены из положения маркеров с использованием обратной кинематики. Для этого здесь мы используем решатель скелетов, предоставляемый программным обеспечением QTM. Чтобы решатель работал, мы должны сначала предоставить определение скелета, которое связывает положение и ориентацию каждого сустава с несколькими позициями маркеров. Таким образом, строится определение скелета, и скелетная установка связывается с данными маркера с помощью плагина QTM Connect для Maya. Мы создаем персонализированные определения скелета для каждого участника, чтобы максимально точно скелет соответствовал данным маркера. Для каждого участника мы вручную подгоняем скелет руки к одному кадру данных захвата движения. Получив определение скелета для конкретного участника, мы затем запускаем решатель скелета, чтобы оценить позы скелетных суставов для каждого кадра каждого испытания в эксперименте. Для каждого кадра каждого испытания в эксперименте мы генерируем ручную сетку, которая реконструирует текущую позу руки с помощью предварительно обученного инструмента генерации ручной сетки с открытым исходным кодом DeepHandMesh28 (рис. 1G). DeepHandMesh — это глубокая сеть кодировщиков-декодеров, которая генерирует персонализированные ручные сетки из изображений. Во-первых, кодировщик оценивает положение руки на изображении (т. е. суставные углы Эйлера). Затем предполагаемая поза руки и персонализированный вектор идентификатора вводятся в декодер, который оценивает набор из трех аддитивных корректирующих элементов для сфальсифицированной сетки шаблона. Наконец, сетка шаблона деформируется в соответствии с предполагаемой позой руки и корректирующими факторами с использованием линейного смешивания кожи. Первая коррекция представляет собой ID-зависимую коррекцию скелета, с помощью которой скелетная установка настраивается для включения специфических для человека положений суставов. Два других корректирующих элемента представляют собой сетчатые коррективы, с помощью которых вершины сетки корректируются, чтобы лучше представлять поверхность руки участника. Одним из корректирующих факторов сетки является коррекция сетки, зависящая от идентификатора, которая учитывает структуру поверхности руки отдельного участника. Окончательная коррекция сетки вместо этого представляет собой коррекцию вершины, зависящую от позы, которая учитывает деформации поверхности руки из-за текущей позы руки. DeepHandMesh обучается с использованием слабого надзора с 2D-совместными ключевыми точками и картами глубины сцены. Здесь мы используем только предварительно обученный декодер DeepHandMesh для создания реконструкций ручной сетки, модифицированных следующими способами (рис. 3). Во-первых, поскольку сеть не обучается на конкретных участниках, используется универсальная коррекция сетки, зависящая от идентификатора, поставляемая с предварительно обученной моделью (рис. 3A). Кроме того, ID-зависимая коррекция скелета выводится с использованием скелетного решателя QTM, как описано выше (рис. 3B). Предполагается пропорциональное масштабирование руки с длиной скелета, а толщина сетки равномерно масштабируется с помощью коэффициента, полученного из относительного масштабирования скелета, так что сетка лучше приближается к размеру руки участника (рис. 3C). Эта модифицированная сетка вводится в декодер вместе с текущим положением руки (полученным из данных маркера), а также 3D-положением и ориентацией запястья. Таким образом, декодер вычисляет текущую коррекцию, зависящую от позы, применяет все коррекции и ротационные перемещения и выводит 3D-реконструкцию ручной сетки текущей позы руки в той же системе координат, что и сетка 3D-отслеживаемого объекта (рис. 3D). Рисунок 3: Модификации предварительно обученного декодера DeepHandMesh . (A) Исправлена, универсальная коррекция сетки, зависящая от идентификатора. (B) ID-зависимая коррекция скелета, полученная с помощью обратной кинематики на шаге 10. (C) Размер кистевой сетки определяется по тому же коэффициенту, что и скелетные суставы. (D) Окончательная 3D-реконструкция текущей позы рук. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка. Реконструировав 3D-модели сетки как для руки участника, так и для захваченного объекта, области контакта руки с объектом можно оценить, вычислив пересечение между сетками руки и объекта (рис. 1H). Предположение, стоящее за этим, заключается в том, что настоящая рука деформируется при контакте с поверхностью, а это означает, что скелет может подойти ближе к поверхности, чем это было бы возможно, если бы рука была жесткой, что позволяет частям ручной сетки проходить через сетку объекта. В результате области контакта могут быть аппроксимированы как области перекрытия между двумя сетками. В частности, чтобы вычислить эти области перекрытия, мы определяем вершины сетки объектов, которые содержатся в 3D-объеме ручной сетки, как находящиеся в контакте с рукой. Эти вершины идентифицируются с использованием стандартного подходатрассировки лучей 45. Для каждой вершины сетки объектов луч отбрасывается от этой вершины к произвольной 3D-точке за пределами ручной сетки. Затем мы оцениваем количество пересечений, которые происходят между литым лучом и треугольниками, составляющими поверхность руки. Если число пересечений нечетное, то вершина объекта содержится внутри ручной сетки. Если число пересечений четное, то вершина объекта находится за пределами ручной сетки. Таким образом, контактные области на поверхности объекта могут быть аппроксимированы как набор граней треугольника, вершины которых содержатся в ручной сетке. Мы можем применить то же самое обоснование к вершинам ручной сетки, содержащимся в 3D-объеме сетки объекта, для оценки областей контакта на поверхности руки. Примечательно, что можно было бы использовать и более продвинутые подходы к логическим сетчатым операциям31. На видео 1 показано видео, на котором рука, отслеживаемые точки и совместно зарегистрированная сетка движутся бок о бок во время одного захвата фигурки кошки, напечатанной на 3D-принтере. Вместо этого на рисунке 4A показан один кадр в момент контакта руки с объектом от захвата до круассана, напечатанного на 3D-принтере, вместе с реконструкциями сетки рука и объект (рис. 4B) и предполагаемыми областями контакта на поверхности круассана (рис. 4C). Рисунок 4: Предполагаемые области контакта рук с предметом. (A) Отслеживаемая рука и объект, просматриваемые с одной из камер слежения во время захвата. (B) Реконструированная сетка рук и сетка отслеживаемого объекта, визуализированная с той же точки обзора, что и камера слежения. (C) Контактные области на поверхности объекта, видимые с нескольких точек зрения. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка. Видео 1: Сетчатые реконструкции руки и предмета. Gif-анимация руки, отслеживаемых маркеров и реконструкции сетки рук и объектов во время одного захвата, просматриваемого с одной и той же точки зрения камеры. Пожалуйста, нажмите здесь, чтобы загрузить это видео.

Discussion

Предложен метод, позволяющий оценить области контакта при взаимодействии рук с объектами при многозначных захватах. Поскольку полное отслеживание всей поверхности руки в настоящее время трудноразрешимо, мы предлагаем использовать реконструкцию ручной сетки, поза которой определяется редкими ключевыми точками на руке. Для отслеживания этих разреженных ключевых точек в нашем решении используется система захвата движения исследовательского уровня, основанная на пассивном отслеживании маркеров. Конечно, с предлагаемым методом можно использовать и другие системы захвата движения, при условии, что они дают достаточно точные 3D-данные о местоположении. Мы не рекомендуем использовать активные системы захвата движения маркеров (такие как популярный, но снятый с производства Optotrak Certus), поскольку они требуют прикрепления кабелей и/или электронных устройств к рукам участников, что может ограничивать движения или, по крайней мере, давать менее типичные захваты, поскольку участники более сознательно осознают позу своих рук. Перчатки для отслеживания движения с использованием инерциальных измерительных блоков могут быть возможны, хотя эти системы, как известно, страдают от дрейфа, могут также ограничивать движения рук и не позволяют поверхности руки вступать в полный и прямой контакт с поверхностями объекта. Коммерческие решения для отслеживания рук без маркеров (например, Leap Motion46,47,48) также могут быть возможны, хотя может быть невозможно отслеживать положение объектов только с помощью этих систем. Наиболее перспективным альтернативным вариантом системы захвата движения исследовательского уровня являются решения для отслеживания без маркеров с открытым исходным кодом (например, Mathis et al.28). При использовании с несколькими совместно зарегистрированными камерами49 такие системы потенциально могут отслеживать положения суставов рук и объекты в 3D без необходимости использования маркеров, перчаток или кабелей. Однако эти решения, а также эта система на основе маркеров могут страдать от проблем с потерей данных из-за окклюзии.

Ограничения и будущие направления
Поскольку ручные реконструкции, полученные с помощью этого метода, не будут полностью точными, существуют некоторые ограничения на типы экспериментов, для которых следует использовать этот метод. Отклонения в реконструкциях ручной сетки от наземной истины будут проявляться в отклонениях в предполагаемых областях контакта рук с объектом. Таким образом, применение этого метода для получения абсолютных показателей потребует оценки точности оценок контактного региона. Тем не менее, даже приблизительные оценки все еще могут быть полезны в экспериментальных проектах внутри участников, потому что потенциальные смещения метода, вероятно, будут влиять на различные экспериментальные условия внутри участника аналогичным образом. Поэтому статистический анализ и выводы должны проводиться только по таким показателям, как различия в площади контакта между условиями, где направление эффекта будет коррелировать с соответствующей основной истиной. В будущих исследованиях мы планируем дополнительно проверить наш подход, например, сравнивая оценки области контакта с тепловыми отпечатками пальцев на объектах, покрытых термохромной краской.

Большинство этапов обработки, начиная со сбора данных и заканчивая окончательной оценкой области контакта, полностью автоматизированы и, таким образом, вносят важный вклад в стандартизированную процедуру оценки области контакта с ручным объектом. Тем не менее, первоначальная подгонка индивидуализированных скелетов к 3D-позициям отслеживаемых маркеров по-прежнему должна выполняться вручную, чтобы получить определение скелета для каждого участника. По мере увеличения числа участников эксперимента увеличивается и количество ручных подгонок, и в настоящее время это самый трудоемкий этап процедуры, требующий некоторого знакомства с ручной оснасткой в программном обеспечении Autodesk Maya. В будущем мы стремимся автоматизировать этот шаг, чтобы избежать влияния человека на процедуру, добавив автоматическую процедуру калибровки скелета.

Рабочий процесс, описанный здесь, основан на аппаратном и программном обеспечении Qualisys (например, решателе скелета QTM). В настоящее время это ограничивает доступность нашего метода для лабораторий, которые имеют аналогичную установку. В принципе, однако, метод может быть применен к любому источнику данных захвата движения. Чтобы расширить доступность, в текущей работе мы изучаем альтернативы, которые должны обобщить наш рабочий процесс и сделать его менее зависимым от конкретных лицензий на оборудование и программное обеспечение.

Другим важным ограничением метода является то, что в его нынешнем виде он может быть применен только к жестким (недеформируемым) объектам. В будущем это ограничение может быть преодолено с помощью методов регистрации формы поверхности захваченного объекта по мере его деформации. Кроме того, из-за своего приблизительного характера метод в настоящее время не очень хорошо подходит для очень маленьких или тонких объектов.

В заключение, интегрируя современное отслеживание движения с высокоточным моделированием поверхности руки, мы предлагаем метод оценки областей контакта руки с объектом во время захвата и манипуляций. В будущих исследованиях мы планируем использовать этот метод для изучения и моделирования визуально управляемого хватательного поведения у людей16. В дальнейшем мы планируем интегрировать эти инструменты с айтрекингом 46,50,51,52 и системами виртуальной/дополненной реальности 53,54,55 для исследования визуально управляемого моторного управления движением рук и глаз в реальных и виртуальных натуралистических средах 18,46,56,57 . По этим причинам предложенный метод может представлять интерес для исследователей, изучающих тактильное восприятие58, моторный контроль и взаимодействие человека с компьютером в виртуальной и дополненной реальности. Наконец, точные измерения хватательных способностей человека могут помочь в разработке надежных роботизированных систем, основанных на принципах интерактивного восприятия 39,40,41,42,43, и могут иметь трансляционное применение для протезирования верхних конечностей.

Disclosures

The authors have nothing to disclose.

Acknowledgements

Это исследование финансировалось Deutsche Forschungsgemeinschaft (DFG, Немецкое научно-исследовательское общество: проект No 222641018-SFB/TRR 135 TP C1 и IRTG-1901 «Мозг в действии») и исследовательским кластером «Адаптивный разум», финансируемым Программой передового опыта Министерства высшего образования, науки, исследований и искусства Гессена. Авторы благодарят команду поддержки Qualisys, в том числе Матиаса Банкея и Джеффри Тингволда, за помощь в разработке наших методов. Авторы также благодарят Микаэлу Йешке за то, что она позировала в качестве ручной модели. Все данные и сценарии анализа для воспроизведения метода и результатов, представленных в рукописи, доступны на Zenodo (doi: 10.5281/zenodo.7458911).

Materials

Anaconda Python distribution  (Anaconda 5.3.1 or later); https://repo.anaconda.com/archive/ scripts and functions were generated in Python version 3.7
Autodesk Maya Autodesk, Inc. Maya2022; https://www.autodesk.com/products/maya/overview 3D computer graphics application.  
Blender  Blender Foundation  Blender 2.92; https://download.blender.org/release/ 3D computer graphics application.  
Computer Workstation N/A N/A OS: Windows 10 or higher.
DeepHandMesh Meta Platforms, Inc. (Meta Open Source) https://github.com/facebookresearch/DeepHandMesh Pre-trained hand mesh generation tool.
Miqus M5 Qualisys Ab https://www.qualisys.com/cameras/miqus/  Passive marker motion tracking camera (8 units).
Miqus video camera Qualisys Ab https://www.qualisys.com/cameras/miqus-video/ Color video camera, synchronized with Miquis M5 tracking cameras (6 units).
Project repository  N/A Data and Code Repository  Data and code to replicate the current project. The repository is currently under construction, but we provide a private link where reviewers can download the current and most up-to-date version of the repository. The final repository will be made publicly available upon acceptance. 
Python 3 Python Software Foundation Python Version 3.7 Python3 and associated built-in libraries.
QTM Connect for Maya Qualisys Ab https://github.com/qualisys/QTM-Connect-For-Maya  Stream skeleton, rigid bodies and marker data from QTM to Maya
QTM Qualisys Track Manager Qualisys Ab Qualisys Track Manager 2021.2; https://www.qualisys.com/software/qualisys-track-manager/  Motion capture software
Qualisys SDK for Python Qualisys Ab https://github.com/qualisys/qualisys_python_sdk  Implements communication between QTM and Python

References

  1. Derzsi, Z., Volcic, R. MOTOM toolbox: MOtion Tracking via Optotrak and Matlab. Journal of Neuroscience Methods. 308, 129-134 (2018).
  2. Eloka, O., Franz, V. H. Effects of object shape on the visual guidance of action. Vision Research. 51 (8), 925-931 (2011).
  3. Lederman, S. J., Wing, A. M. Perceptual judgement, grasp point selection and object symmetry. Experimental Brain Research. 152 (2), 156-165 (2003).
  4. Schettino, L. F., Adamovich, S. V., Poizner, H. Effects of object shape and visual feedback on hand configuration during grasping. Experimental Brain Research. 151 (2), 158-166 (2003).
  5. Chen, Z., Saunders, J. A. Online processing of shape information for control of grasping. Experimental Brain Research. 233 (11), 3109-3124 (2015).
  6. Burstedt, M. K., Flanagan, J. R., Johansson, R. S. Control of grasp stability in humans under different frictional conditions during multidigit manipulation. Journal of Neurophysiology. 82 (5), 2393-2405 (1999).
  7. Paulun, V. C., Gegenfurtner, K. R., Goodale, M. A., Fleming, R. W. Effects of material properties and object orientation on precision grip kinematics. Experimental Brain Research. 234 (8), 2253-2265 (2016).
  8. Klein, L. K., Maiello, G., Fleming, R. W., Voudouris, D. Friction is preferred over grasp configuration in precision grip grasping. Journal of Neurophysiology. 125 (4), 1330-1338 (2021).
  9. Mamassian, P. Prehension of objects oriented in three-dimensional space. Experimental Brain Research. 114 (2), 235-245 (1997).
  10. Paulun, V. C., Kleinholdermann, U., Gegenfurtner, K. R., Smeets, J. B. J., Brenner, E. Center or side: biases in selecting grasp points on small bars. Experimental Brain Research. 232 (7), 2061-2072 (2014).
  11. Goodale, M. A., et al. Separate neural pathways for the visual analysis of object shape in perception and prehension. Current Biology. 4 (7), 604-610 (1994).
  12. Kleinholdermann, U., Franz, V. H., Gegenfurtner, K. R. Human grasp point selection. Journal of Vision. 13 (8), 23 (2013).
  13. Maiello, G., Paulun, V. C., Klein, L. K., Fleming, R. W. Object visibility, not energy expenditure, accounts for spatial biases in human grasp selection. i-Perception. 10 (1), 204166951982760-20 (2019).
  14. Maiello, G., Schepko, M., Klein, L. K., Paulun, V. C., Fleming, R. W. Humans can visually judge grasp quality and refine their judgments through visual and haptic feedback. Frontiers in Neuroscience. 14, 591898 (2021).
  15. Klein, L. K., Maiello, G., Paulun, V. C., Fleming, R. W. Predicting precision grip grasp locations on three-dimensional objects. PLoS Computational Biology. 16 (8), 1008081 (2020).
  16. Maiello, G., Paulun, V. C., Klein, L. K., Fleming, R. W. The sequential-weight illusion. i-Perception. 9 (4), 204166951879027 (2018).
  17. Chessa, M., Maiello, G., Klein, L. K., Paulun, V. C., Solari, F. Grasping objects in immersive Virtual Reality. 2019 IEEE Conference on Virtual Reality and 3D User Interfaces (VR). , 1749-1754 (2019).
  18. Crajé, C., Lukos, J. R., Ansuini, C., Gordon, A. M., Santello, M. The effects of task and content on digit placement on a bottle). Experimental Brain Research. 212 (1), 119-124 (2011).
  19. Lukos, J., Ansuini, C., Santello, M. Choice of contact points during multidigit grasping: Effect of predictability of object center of mass location. Journal of Neuroscience. 27 (14), 3894-3903 (2007).
  20. Gilster, R., Hesse, C., Deubel, H. Contact points during multidigit grasping of geometric objects. Experimental Brain Research. 217 (1), 137-151 (2012).
  21. Schot, W. D., Brenner, E., Smeets, J. B. J. Robust movement segmentation by combining multiple sources of information. Journal of Neuroscience Methods. 187 (2), 147-155 (2010).
  22. Sundaram, S., et al. Learning the signatures of the human grasp using a scalable tactile glove. Nature. 569 (7758), 698-702 (2019).
  23. Yan, Y., Goodman, J. M., Moore, D. D., Solla, S. A., Bensmaia, S. J. Unexpected complexity of everyday manual behaviors. Nature Communications. 11 (1), 3564 (2020).
  24. Han, S., et al. Online optical marker-based hand tracking with deep labels. ACM Transactions on Graphics. 37 (4), 1-10 (2018).
  25. Clouthier, A. L., et al. Development and validation of a deep learning algorithm and open-source platform for the automatic labelling of motion capture markers. IEEE Access. 9, 36444-36454 (2021).
  26. . Qualisys AB Qualisys Track Manager User Manual (Version 2022.1) Available from: https://www.qualisys.com/ (2022)
  27. Mathis, A., et al. DeepLabCut: Markerless pose estimation of user-defined body parts with deep learning. Nature Neuroscience. 21 (9), 1281-1289 (2018).
  28. Moon, G., Shiratori, T., Lee, K. M. DeepHandMesh: A weakly-supervised deep encoder-decoder framework for high-fidelity hand mesh modeling. ECCV 2020. , (2020).
  29. Smith, B., et al. Constraining dense hand surface tracking with elasticity. ACM Transactions on Graphics. 39 (6), 219 (2020).
  30. Taheri, O., Ghorbani, N., Black, M. J., Tzionas, D. GRAB: A dataset of whole-body human grasping of objects. Computer Vision – ECCV 2020: 16th European Conference. , 581-600 (2020).
  31. Brahmbhatt, S., Tang, C., Twigg, C. D., Kemp, C. C., Hays, J. ContactPose: A dataset of grasps with object contact and hand pose. Computer Vision – ECCV 2020. , 361-378 (2020).
  32. Wang, J., et al. RGB2Hands: Real-time tracking of 3D hand interactions from monocular RGB video. ACM Transactions on Graphics. 39 (6), 218 (2020).
  33. Zhang, X., Li, Q., Mo, H., Zhang, W., Zheng, W. End-to-end hand mesh recovery from a monocular RGB image. 2019 IEEE/CVF International Conference on Computer Vision (ICCV). , 2354-2364 (2019).
  34. Endo, Y., Tada, M., Mochimaru, M. Reconstructing individual hand models from motion capture data). Journal of Computational Design and Engineering. 1 (1), 1-12 (2014).
  35. Mueller, F., et al. GANerated hands for real-time 3D hand tracking from monocular RGB. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. , 49-59 (2018).
  36. Mueller, F., et al. Real-time pose and shape reconstruction of two interacting hands with a single depth camera. ACM Transactions on Graphics. 38 (4), 49 (2019).
  37. Romero, J., Tzionas, D., Black, M. J. Embodied hands: Modeling and capturing hands and bodies together. ACM Transactions on Graphics. 36 (6), 245 (2017).
  38. Kappler, D., Bohg, J., Schaal, S. Leveraging big data for grasp planning. 2015 IEEE International Conference on Robotics and Automation (ICRA). , 4304-4311 (2015).
  39. Kokic, M., Kragic, D., Bohg, J. Learning task-oriented grasping from human activity datasets). IEEE Robotics and Automation Letters. 5 (2), 3352-3359 (2020).
  40. Shao, L., et al. UniGrasp: Learning a unified model to grasp with multifingered robotic hands. IEEE Robotics and Automation Letters. 5 (2), 2286-2293 (2020).
  41. Shao, L., Migimatsu, T., Zhang, Q., Yang, K., Bohg, J. Concept2Robot: Learning manipulation concepts from instructions and human demonstrations. Robotics: Science and Systems XVI. , (2020).
  42. Bohg, J. Interactive perception: Leveraging action in perception and perception in action. IEEE Transactions on Robotics. 33 (6), 1273-1291 (2017).
  43. . Blender Foundation Available from: https://www.blender.org (2022)
  44. Roth, S. D. Ray casting for modeling solids. Computer Graphics and Image Processing. 18 (2), 109-144 (1982).
  45. Maiello, G., Kwon, M., Bex, P. J. Three-dimensional binocular eye-hand coordination in normal vision and with simulated visual impairment. Experimental Brain Research. 236 (3), 691-709 (2018).
  46. Weichert, F., Bachmann, D., Rudak, B., Fisseler, D. Analysis of the accuracy and robustness of the leap motion controller. Sensors. 13 (5), 6380-6393 (2013).
  47. Guna, J., Jakus, G., Pogačnik, M., Tomažič, S., Sodnik, J. An analysis of the precision and reliability of the leap motion sensor and its suitability for static and dynamic tracking. Sensors. 14 (2), 3702-3720 (2014).
  48. Sheshadri, S., Dann, B., Hueser, T., Scherberger, H. 3D reconstruction toolbox for behavior tracked with multiple cameras. Journal of Open Source Software. 5 (45), 1849 (2020).
  49. Maiello, G., Harrison, W. J., Bex, P. J. Monocular and binocular contributions to oculomotor plasticity. Scientific Reports. 6, 31861 (2016).
  50. Caoli, A., et al. A dichoptic feedback-based oculomotor training method to manipulate interocular alignment. Scientific Reports. 10, 15634 (2020).
  51. Gibaldi, A., Vanegas, M., Bex, P. J., Maiello, G. Evaluation of the Tobii EyeX eye tracking controller and Matlab toolkit for research. Behavior Research Methods. 49 (3), 923-946 (2017).
  52. Chessa, M., Maiello, G., Borsari, A., Bex, P. J. The Perceptual quality of the Oculus Rift for immersive virtual reality. Human-Computer Interaction. 34 (1), 51-82 (2016).
  53. Maiello, G., Chessa, M., Bex, P. J., Solari, F. Near-optimal combination of disparity across a log-polar scaled visual field. PLoS Computational Biology. 16 (4), 1007699 (2020).
  54. Maiello, G., Chessa, M., Solari, F., Bex, P. J. The (in)effectiveness of simulated blur for depth perception in naturalistic images. PLoS One. 10 (10), 0140230 (2015).
  55. Maiello, G., Chessa, M., Solari, F., Bex, P. J. Simulated disparity and peripheral blur interact during binocular fusion. Journal of Vision. 14 (8), 13 (2014).
  56. Maiello, G., Kerber, K. L., Thorn, F., Bex, P. J., Vera-Diaz, F. A. Vergence driven accommodation with simulated disparity in myopia and emmetropia. Experimental Eye Research. 166, 96-105 (2018).
  57. Moscatelli, A., et al. The change in fingertip contact area as a novel proprioceptive cue. Current Biology. 26 (9), 1159-1163 (2016).

Play Video

Cite This Article
Hartmann, F., Maiello, G., Rothkopf, C. A., Fleming, R. W. Estimation of Contact Regions Between Hands and Objects During Human Multi-Digit Grasping. J. Vis. Exp. (194), e64877, doi:10.3791/64877 (2023).

View Video