Инверсная кинематика в системах захвата движения: алгоритм циклического покоординатного спуска и Qualisys Inverse Kinematics | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 23 ноября, печатный экземпляр отправим 27 ноября.

Опубликовать статью в журнале

Автор:

Рубрика: Технические науки

Опубликовано в Молодой учёный №20 (467) май 2023 г.

Дата публикации: 16.05.2023

Статья просмотрена: 150 раз

Библиографическое описание:

Мальцева, О. Н. Инверсная кинематика в системах захвата движения: алгоритм циклического покоординатного спуска и Qualisys Inverse Kinematics / О. Н. Мальцева. — Текст : непосредственный // Молодой ученый. — 2023. — № 20 (467). — С. 52-56. — URL: https://moluch.ru/archive/467/102719/ (дата обращения: 15.11.2024).



В данной работе изучается реализация двух алгоритмов инверсной кинематики, использующиеся в системах захвата движения. На примере верхней конечности описывается решение прямой и инверсной задач кинематики в 2D пространстве, приводится пример из лабораторной практики преобразования трехмерных координат в костный каркас с помощью программного обеспечения, использующего инверсную кинематику.

Ключевые слова: инверсная кинематика, прямая задача кинематики, система захвата движения, Qualisys, Visual 3D, алгоритм циклического покоординатного спуска, CCD-алгоритм.

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

Системы захвата движения в клинической практике

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

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

Пример создания цифровой модели пациента в системе для получения и обработки трехмерных координат Qualisys

Рис. 1. Пример создания цифровой модели пациента в системе для получения и обработки трехмерных координат Qualisys

Прямая и инверсная кинематика

Прямая кинематика — это вычисление положения рабочего органа (в нашем случае — верхней конечности) с помощью схемы, отражающей очередность передачи движения от одной точки к другой, взаимосвязь их движения и ориентации (под каким углами f 1 , f 2 ,…f n расположен сегмент верхней конечности). Инверсная кинематика — вычисление углов по заданному положению и кинематической схеме. [1]

Несмотря на то, что для углов f 1 , f 2 ,…f n всегда существует единственное местоположение, нельзя отрицать, что для данного местоположения не найдется и другая комбинация углов f 1 , f 2 ,…f n .

Рассмотрим пример верхней конечности с точки зрения прямой и инверсной задач кинематики в 2D (рисунок 2 а).

а) Кинематическая схема верхней конечности для прямой (а) и инверсной (б) задачи б) Кинематическая схема верхней конечности для прямой (а) и инверсной (б) задачи

Рис. 2. Кинематическая схема верхней конечности для прямой (а) и инверсной (б) задачи

Сустав D1 закреплен в точке О и расположен под углом Ѳ1 , сустав D2 закреплен на конце сустава D1 и повернут под углом Ѳ2 . Ограничительная точка тела находится в конце сустава D2. Прямая задача кинематики состоит в нахождении местоположения ограничительной точки тела (x, y) по заданным D1, D2, Ѳ1, Ѳ2.

Первая система отсчета — в точке крепления плеча О, вторая — в начале координат в точке крепления локтя K . Отыщем смещение второй системы координат относительно первой, координаты точки K относительно точки крепления плеча О.

В системе отсчета локтя координаты (x, y) будут:

;

Локоть D2 повернут относительно плеча на Ѳ1+ Ѳ2 в системе О:

; ;

Итого:

;

;

Инверсная задача. Необходимо найти углы , с помощью которых рука с плечом D1 и локтем D2 переместиться в заданную точку (x, y). Обратим внимание на рисунок 2б).

Прямая G соединяет начало отсчета O и заданную точку (x, y), угол между осью ОХ и прямой G , угол между прямой G и плечом D1 .

Таким образом,

Угол находится из теоремы косинусов:

;

По такой же системе найдем угол , он равен — угол ОКх:

При возможном положении точки локтя K в противоположном от прямой G месте (рисунок 3), формулы для не изменятся, но знаки углов поменяются, а будет с противоположным знаком:

Другая кинематическая схема верхней конечности для инверсной задачи

Рис. 3. Другая кинематическая схема верхней конечности для инверсной задачи

И тот, и другой способ используются на практике, однако наибольший интерес представляет инверсная кинематика.

Инверсная кинематика в системах захвата движения

ИК может использоваться на самых разных этапах и в самых разных областях при адаптации данных захвата движения к каркасной модели. В работе L. Unzeuta и коллег [2], ИК используется в системах захвата для полной реконструкции тела с использованием только таза и ограничительных точек тела: голова, лодыжки и запястья.

В докторской диссертации J. Anderson и J. Bornold [3], исследуя различные методы ИК и их производительность, наилучшим алгоритмом, который можно использовать для устранения недостающих положений суставов в его текущем состоянии, считает циклический покоординатный спуск (ЦПС) или ССD (Cyclic Coordinate Descent). Суть метода заключается в сведении к минимуму ошибки положения и ориентации путем преобразования одной совместной переменной за раз. Представим данный алгоритм в виде графического изображения на рисунке 4:

Визуальное решение задачи алгоритмом ЦПС

Рис. 4. Визуальное решение задачи алгоритмом ЦПС

Как работает алгоритм: а) исходное положение тела и цели, б) находим угол θ между ограничительной точкой тела, суставом т3 и целью и поворачиваем сустав т4 на этот угол, в) находим угол θ между ограничительной точкой тела, суставом т2 и целью и поворачиваем суставы т4 и т3 под этим углом, г), д) и е) повторяем весь процесс столько итераций, сколько необходимо. Останавливаемся, когда ограничительная точка тела достигнет цели или подойдет достаточно близко.

Хотя алгоритм ЦПС иногда создает нереалистичные позы, поскольку он часто совершает «цикл в себя», придавая чрезмерное значение движениям суставов ближе к ограничительной точке тела, этот метод хорошо справляется с отслеживанием движущейся цели, избегая колебаний и прерывистостей движения.

На базе известных ИК-алгоритмов компания Qualisys создала собственный QIK (Qualisys Inverse Kinematics), который используется для определения углов сочленений и положений сегментов конечностей на основании положений маркеров, фиксируемых системой. QIK оптимизирован для работы в режиме реального времени и способен обрабатывать объемные по вычислительным мощностям приложения для систем захвата, такие как Visual 3D и Any Body.

Алгоритм QIK вычисляет положение каждого сегмента тела испытуемого, принимая во внимание углы сочленения, длину сегментов и ориентацию сегментов. Рассмотрим основные из них:

Оценка суставных углов: QIK сначала оценивает суставные углы тела испытуемого на основе положения маркеров и предопределенной модели скелета. Алгоритм учитывает ограничения на «слияние», такие как пределы сочленений, чтобы гарантировать физическую реалистичность углов сочленения.

Ориентация сегментов: Ориентация каждого сегмента определяется ориентацией его проксимального сустава относительно дистального.

Расчет положения сегмента: Алгоритм начинается с положения дистального сочленения сегмента и применяет поворот, чтобы выровнять ориентацию сегмента с углом сочленения. Затем он перемещает сегмент на длину сегмента в направлении его ориентации, чтобы определить положение проксимального сустава. Этот процесс повторяется для каждого сегмента скелета.

На рисунке 5 изображены маркеры, расположенные на тазе человека. В данном случае — IOR marker set full body [4, 5], где R_IAS/ L_IAS — передний верхний подвздошный отдел таза справа/слева, R_IPS/ L_IPS — задний верхний подвздошный отдел таза справa/слева. С помощью алгоритмов ИК, построенная таким образом модель переносится на костный каркас, например через программное обеспечение Visual 3D (рисунок 6).

Визуализация местоположения маркеров таза в пространстве Визуализация местоположения маркеров таза в пространстве Визуализация местоположения маркеров таза в пространстве Визуализация местоположения маркеров таза в пространстве

Рис. 5. Визуализация местоположения маркеров таза в пространстве

Результат моделирования таза человека Результат моделирования таза человека

Рис. 6. Результат моделирования таза человека

Выводы

В данной работе был представлен обзор и реализация на практике наиболее часто встречающихся алгоритмов, связанных с задачей инверсной кинематики в моей лабораторной практике, а именно — с анализом походки пациентов. Автоматизация данного процесса позволяет делать вывод о состоянии опорно-двигательного аппарата человека, анализируя углы поворота голеностопа, колена, моменты суставов и множество других параметров.

Литература:

  1. Фу К., Гонсалес Р., Ли К., Робототехника: Пер. с англ. — М.: Мир, 1989. — 624 с.
  2. L. Unzueta, M. Peinado, R. Boulic, A. Suescun, Full-body performance animation with sequential inverse kinematics, Graphical models, 2008, 87–104.
  3. J. Anderson, J. Bornold, A Real-time Adaptation of Inverse Kinematics for Motion Capture, 2015, 56–57.
  4. Leardini, A., Biagi, F., Merlo, A., Belvedere, C., & Benedetti, M.G. (2011). Multi-segment trunk kinematics during locomotion and elementary exercises. Clinical Biomechanics, 26, 562–571.
  5. Sint Jan, S. Van (2007). Color Atlas of Skeletal Landmark Definitions. Guidelines for Reproducible Manual and Virtual Palpations. Edinburgh: Churchill Livingstone
Основные термины (генерируются автоматически): инверсная кинематика, QIK, верхняя конечность, угол, инверсная задача, система захвата движения, алгоритм, кинематическая схема, тело, клиническая практика.


Ключевые слова

прямая задача кинематики, инверсная кинематика, система захвата движения, Qualisys, Visual 3D, алгоритм циклического покоординатного спуска, CCD-алгоритм

Похожие статьи

Кинематическое управление шестиногим шагающим роботом

В данной работе строится кинематическая модель шестиногого робота, рассматривается обратная задача кинематики построенной модели в двух формах: аналитической и численной. Затем решается задача генерации походки в случае движения по ровной поверхности...

Построение графиков функций в решении задач по общей физике с помощью программы Excel (на примере домашнего задания по теме «Электромагнитная индукция»)

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

Анализ передаточной функции структурной схемы вентильного двигателя с помощью системы MATLAB

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

Применение вычислительного дизайна при разработке рационального очертания пространственной стержневой конструкции

В статье авторы рассматривают моделирование пространственной стержневой системы с помощью методов вычислительного дизайна. Исследуют применимость алгоритмического проектирования в задачах моделирования однослойных стержневых оболочек с треугольным де...

Распознавание шрифтов методом Box-Counting Dimension

В статье рассматривается вопрос применения фрактальной размерности Минковского (метод Box-Counting Dimension) для определения использованного в тексте шрифта на основе результата цифрового копирования или фотографического изображения. Анализируются п...

Адаптивное воспроизведение мультисинусоидального сигнала в системе с запаздыванием по входу

Данная работа посвящена решению задачи синтеза алгоритма адаптивного управления системами с запаздыванием по входу, дается описание существующего неадаптивного решения для таких систем, предлагается адаптивный алгоритм с использованием фильтрации, по...

К расчёту переходных процессов в линейных электрических цепях с помощью графов переменных состояния

Статья посвящена расчету переходных процессов в линейных электрических цепях методом пространства параметров состояния, в котором матрица перехода цепи и сами переходные кривые определяются оптимальным в вычислительном плане способом: по виду графов ...

Сохранение энергии при прямом численном моделировании многофазных потоков с разрешением на границе раздела фаз

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

Математическое моделирование физической модели автоколебания тока

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

Моделирование сложных динамических систем и механизмов методом компьютерного моделирования высокой детализации (КМВД)

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

Похожие статьи

Кинематическое управление шестиногим шагающим роботом

В данной работе строится кинематическая модель шестиногого робота, рассматривается обратная задача кинематики построенной модели в двух формах: аналитической и численной. Затем решается задача генерации походки в случае движения по ровной поверхности...

Построение графиков функций в решении задач по общей физике с помощью программы Excel (на примере домашнего задания по теме «Электромагнитная индукция»)

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

Анализ передаточной функции структурной схемы вентильного двигателя с помощью системы MATLAB

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

Применение вычислительного дизайна при разработке рационального очертания пространственной стержневой конструкции

В статье авторы рассматривают моделирование пространственной стержневой системы с помощью методов вычислительного дизайна. Исследуют применимость алгоритмического проектирования в задачах моделирования однослойных стержневых оболочек с треугольным де...

Распознавание шрифтов методом Box-Counting Dimension

В статье рассматривается вопрос применения фрактальной размерности Минковского (метод Box-Counting Dimension) для определения использованного в тексте шрифта на основе результата цифрового копирования или фотографического изображения. Анализируются п...

Адаптивное воспроизведение мультисинусоидального сигнала в системе с запаздыванием по входу

Данная работа посвящена решению задачи синтеза алгоритма адаптивного управления системами с запаздыванием по входу, дается описание существующего неадаптивного решения для таких систем, предлагается адаптивный алгоритм с использованием фильтрации, по...

К расчёту переходных процессов в линейных электрических цепях с помощью графов переменных состояния

Статья посвящена расчету переходных процессов в линейных электрических цепях методом пространства параметров состояния, в котором матрица перехода цепи и сами переходные кривые определяются оптимальным в вычислительном плане способом: по виду графов ...

Сохранение энергии при прямом численном моделировании многофазных потоков с разрешением на границе раздела фаз

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

Математическое моделирование физической модели автоколебания тока

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

Моделирование сложных динамических систем и механизмов методом компьютерного моделирования высокой детализации (КМВД)

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

Задать вопрос