NVIDIA представила симуляцию на GPU для медицинской робототехники
Медицинская робототехника сталкивается с ограничениями, которых нет у автономных автомобилей и промышленных роботов. Здесь нельзя собирать данные в масштабах интернета и проводить неограниченное число экспериментов на реальных пациентах. Для каждой демонстрации нужны специализированное оборудование, клинические специалисты и доступ к пациентам или лабораторным средам.
Три проблемы медицинской робототехники
Первая проблема — дефицит данных. Для обучения современных роботизированных систем нужны демонстрации на разных типах анатомии и во множестве процедур. У большинства команд есть лишь сотни демонстраций, тогда как для устойчивой работы требуются десятки тысяч.
Даже сбор миллионов примеров не решил бы проблему полностью: наиболее важные случаи всё равно были бы представлены недостаточно. Медицина подчиняется принципу длинного хвоста — редкие особенности анатомии, сложная физиология пациентов, осложнения и сценарии отказа встречаются слишком редко, чтобы попасть в достаточном количестве в реальные наборы данных. При этом именно они критичны для клинической безопасности.
Вторая проблема — обобщение. Обучение подражанием неизбежно достигает предела на краях распределения данных. Обучение с подкреплением может помочь выйти за этот предел: оно способно исследовать миллионы взаимодействий, проверять стратегии в стрессовых условиях и учиться на ошибках. Для этого нужна симуляция, которая одновременно достаточно реалистична для формирования полезных стратегий и достаточно быстра для обучения в большом масштабе.
Третья проблема — скорость разработки. Медицинские роботы проверяют на физических моделях органов, трупах, животных и в ограниченных клинических исследованиях. Эти этапы остаются необходимыми, но идут последовательно, стоят дорого и плохо масштабируются. Поэтому изменение конструкции или алгоритма сегодня занимает месяцы, а полный цикл разработки растягивается на 4–7 лет.
Все три проблемы указывают на отсутствие общей инфраструктуры: открытой ориентированной на GPU программной платформы, способной с нужной точностью моделировать взаимодействие устройств с анатомией и использовать её для обучения роботов.
Симуляция медицинской физики
«Симуляция медицинской физики» — созданная NVIDIA программная платформа с открытым исходным кодом и ускорением на GPU внутри NVIDIA Isaac для здравоохранения. С её помощью разработчики могут создавать цифровые двойники анатомии, моделировать взаимодействие устройств с организмом и медицинскую визуализацию, а также обучать стратегии с подкреплением на GPU. Всё это работает в NVIDIA Isaac Sim и NVIDIA Isaac Lab.
Платформа включает классические физические решатели и симуляторы на основе генеративных моделей мира. Они предназначены для моделирования взаимодействия устройств с анатомией в реальном времени и обучения стратегий для разных направлений медицинской робототехники. Оба подхода образуют модульную платформу для интерактивной хирургической и интервенционной симуляции, обучения роботов, генерации синтетических данных и разработки процедур.
Симуляция и обучение выполняются на одном GPU. Это позволяет избежать постоянных переносов данных между центральным процессором и GPU, которые создают дополнительные задержки в машинном обучении.
Модуль эндолюмнальной симуляции
Модуль эндолюмнальной симуляции получил общий доступ в составе Isaac для здравоохранения. Он предназначен для симуляции диагностических и интервенционных процедур, в которых длинные гибкие инструменты перемещаются внутри полостей организма. Модуль оформлен как отдельный пакет и может независимо подключаться к разным рабочим процессам и средам.
В первой версии показана навигация катетера по сосудистой системе под контролем флуороскопии.
Модуль написан на Python с использованием NVIDIA Warp и Newton Physics. Гибкие инструменты представлены в виде стержней Косcера — математической модели, которая описывает изгиб, скручивание и растяжение материалов. Для эффективного расчёта сложной нелинейной динамики таких одномерных стержней на GPU в качестве основного метода выбрана расширенная динамика на основе положения, или XPBD.
Обычно XPBD использует локальные итеративные проекции ограничений. У длинных инструментов такой подход может потребовать много итераций, чтобы передать движение от управляемого проксимального конца к дистальному наконечнику. В представленном модуле связанные ограничения стержня объединяются в матричную систему.
Каждый сегмент стержня добавляет шесть уравнений ограничений: три отвечают за растяжение и сдвиг, ещё три — за изгиб и скручивание. В результате формируется блочно-трёхдиагональная система XPBD с блоками 6 × 6. Она решается алгоритмом Томаса за линейное относительно длины инструмента время, а независимые инструменты обрабатываются одновременно в векторизованных окружениях на GPU.
Введение и управление катетером через сосудистую модель
Источник: developer.nvidia.com
Такой глобально связанный решатель передаёт ввод — например, введение катетера и вращение его проксимальной части — по всей длине инструмента за один шаг симуляции. Это обеспечивает немедленную реакцию дистального наконечника даже у очень длинных инструментов.
Взаимодействие катетера с сосудом также вычисляется параллельно на GPU. Запросы ближайших точек со знаком выполняются непосредственно по пациент-специфичной треугольной сетке, без предварительного построения отдельного поля расстояний. Если образцы инструмента проникают через стенку, они возвращаются в просвет, сохраняя возможность скользить вдоль поверхности.
Текущая версия поддерживает жёсткое одностороннее удержание внутри сосуда. Двустороннее взаимодействие с деформируемыми стенками сосудов планируется добавить в будущем.
Управление задаётся напрямую через граничные условия и состояние покоя стержня. Введение катетера перемещает закреплённый проксимальный конец вдоль оси интродьюсера, вращение втулки задаёт его ориентацию, а управление дистальным концом меняет кривизну покоя последних сегментов стержня, вместо применения искусственной внешней силы. Ограничения изгиба и скручивания передают эти изменения по всей длине инструмента.
Модуль совместим с другими решателями Newton через общий программный интерфейс. Взаимодействие Torch и Warp через функции `wp.from_torch` и `wp.to_torch` сохраняет интерфейс управления и обучения с подкреплением без копирования данных и полностью на GPU.
Благодаря этому модуль можно подключать к NVIDIA Isaac Lab — программной платформе для масштабного обучения роботов. Isaac Lab управляет окружениями и запусками, а решатель рассчитывает динамику на GPU и возвращает тензоры, остающиеся на устройстве, для циклов наблюдения, вознаграждения и управления.
Имитация навигации катетера в сосудистой системе конкретного пациента
Источник: developer.nvidia.com
Такая совместная разработка физики и визуализации поддерживает обучение стратегий в большом масштабе. NVIDIA провела эксперименты с 512 параллельными окружениями и 1500 итерациями обучения.
Производительность составила примерно:
Полный цикл симуляции и визуализации работал с разрешением 256 × 256 пикселей. Платформа также создаёт основу для будущего обучения стратегий непосредственно по флуороскопическим изображениям и другим наблюдениям в виде пикселей.
Синхронизация физики катетера и флуороскопской визуализации
Источник: developer.nvidia.com
Рабочий процесс навигации катетера объединяет два связанных пациент-специфичных компонента. Пакет для цифрового двойника сосудистой системы создаёт данные об ослаблении излучения и геометрии: объём `mu_volume`, маску или сетку сосуда и центральную линию. Пакет эндолюмнальной симуляции рассчитывает механику катетера внутри этой анатомии с ограничениями XPBD.
На каждом кадре состояние решателя преобразуется в сегменты катетера для визуализации, после чего система fluorosim совмещает их с изображением в том же пространстве, полученном из КТ. Так физика и флуороскопия синхронизируются в едином сквозном цикле, а дополнительные эффекты отклика детектора делают итоговые изображения реалистичнее.
Модуль хирургической симуляции
Модуль хирургической симуляции доступен в режиме раннего доступа. Это ускоряемая на GPU программная платформа для хирургической симуляции в реальном времени. Она моделирует деформацию мягких тканей и действия хирурга, а также объединяет тактильную обратную связь и визуализацию в едином конвейере.
Как и модуль эндолюмнальной симуляции, он написан на Python с применением NVIDIA Warp и Newton Physics. В отличие от монолитных физических движков, его функции организованы в явно заданные последовательные системы симуляции.
Каждая процедура настраивается через порядок операций: деформация, столкновения, захват, разрезание, наложение клипс, диатермия и визуализация. Благодаря этому вычислительный конвейер на GPU можно просматривать, настраивать и расширять.
Роботизированное взаимодействие с деформируемыми мягкими тканями
Источник: developer.nvidia.com
Мягкие ткани представлены тетраэдральными сетками. Деформация рассчитывается с помощью динамики на основе положения и ограничений, сохраняющих расстояния и объём. Поправки накапливаются и усредняются на GPU. Это уменьшает артефакты, возникающие из-за порядка обработки ограничений, и поддерживает параллельные вычисления с решателем Якоби.
На GPU выполняются и симуляция, и визуализация: деформация, запросы столкновений, захват, распространение тепла, обновление топологии и восстановление поверхности. Захват графа CUDA дополнительно снижает накладные расходы на запуск вычислительных ядер, а прямой перенос данных с GPU в визуализатор через CUDA Interop устраняет ненужное копирование между центральным процессором и GPU.
В результате симуляция работает в реальном времени — более 30 кадров в секунду. Тест проводился на одной потребительской видеокарте, с восемью физическими подшагами и восемью внутренними итерациями ограничений деформации.
Имитация роботизированной холецистэктомии
Источник: developer.nvidia.com
Первая версия модуля поддерживает полный сценарий холецистэктомии — удаления желчного пузыря. Симуляция начинается с того, что роботизированные инструменты введены в раздутую брюшную полость. На экране отображаются печень, желчный пузырь и соединительная жировая ткань.
Процедура включает рассечение печёночно-пузырного треугольника, наложение клипс и разрезание пузырного протока и артерии, а затем отделение желчного пузыря от печени.
Генеративная симуляция
Генеративный подход дополняет физические решатели. Вместо явного программирования каждого взаимодействия генеративная модель мира учится по видео и другим данным тому, как выглядят реальные сцены и как они меняются со временем.
Во время обучения модель связывает визуальные наблюдения, движение и управляющие сигналы, включая действия робота. При инференсе она использует эти знания о мире, чтобы предсказывать следующие кадры видео.
Поскольку результат создаётся в визуальном пространстве, которое видят камеры и роботизированные стратегии, модель может воспроизводить детали и внешний вид сцены, которые было бы трудно вручную реализовать в обычном симуляторе. Одновременно сокращается объём ручной работы по созданию объектов, материалов и настроек освещения.
Ограничение связано с тем, что такие предсказания изучаются по данным: они могут выглядеть реалистично, но не дают явных физических гарантий, которые обеспечивает численный решатель.
Для этого подхода NVIDIA предоставляет базовые модели мира Cosmos. Видеомодели Cosmos используют архитектуру диффузионного трансформера на основе потоков с формулировкой исправленного потока. Во время генерации модель итеративно преобразует шум в сжатом представлении видео в согласованный образец из изученного распределения данных.
Средство кодирования видео сжимает кадры из пространства пикселей в скрытое представление, удобное для моделирования, а затем декодирует сгенерированные скрытые данные обратно в видео. Мультимодальное управление позволяет задавать свойства будущей сцены. Для медицинских задач широкую визуальную модель дополнительно обучают на профильных данных, адаптируя её к конкретной анатомии, устройствам, процедурам и динамике.
Семейство Cosmos-H демонстрирует несколько вариантов генеративной медицинской физической симуляции:
Cosmos-H-Surgical-Predict прогнозирует правдоподобное будущее хирургическое видео по исходному изображению и тексту. Cosmos-H-Surgical-Transfer создаёт хирургическое видео под управлением таких сигналов, как глубина, контуры, сегментация или размытие. Cosmos-H-Surgical-Simulator предсказывает следующие кадры на основе кинематики хирургического робота.
Вместе эти модели поддерживают генерацию синтетических данных, управляемый перенос между предметными областями, обучение роботов по действиям и оценку стратегий. Они не заменяют явную физику во всех сценариях, но сокращают объём ручного создания сцен и дают реалистичную симуляцию на уровне наблюдаемых изображений там, где полное моделирование с первых принципов непрактично.
Cosmos-H-Dreams
Cosmos-H-Dreams развивает этот подход в сторону интерактивной симуляции. Система превращает модель-учителя, дообученную на основе Cosmos-H-Surgical-Simulator, в причинную модель-ученика, которая за небольшое число шагов авторегрессионно выдаёт будущее хирургическое видео в ответ на действия робота.
Интерактивная симуляция наложения швов на ткани с использованием Cosmos-H-Dreams
Источник: developer.nvidia.com
Модель работает через механизм инференса FlashDreams и превращает качественную автономную модель мира в среду реального времени, способную генерировать кадры с частотой более 30 кадров в секунду. Такой средой можно управлять вручную или опрашивать её в замкнутом цикле с помощью обученной роботизированной стратегии на одном GPU рабочей станции.
Классическая и генеративная симуляция
Isaac для здравоохранения поддерживает оба подхода, поскольку медицинской робототехнике нужны разные свойства. Для доверия пользователей и количественной оценки качества — основы любой медицинской системы — необходимы физически согласованные и детерминированные окружения классической симуляции.
Генеративная симуляция, в свою очередь, создаёт разнообразные визуально реалистичные среды в большом масштабе, чего классическая симуляция не обеспечивает. Это позволяет использовать её для генерации данных и сценариев клинической работы в реальном времени.
«Симуляция медицинской физики» в составе Isaac для здравоохранения предоставляет разработчикам инструменты для создания пациент-специфичных цифровых двойников, моделирования взаимодействия устройств с анатомией, генерации синтетического опыта и обучения интеллектуальных медицинских роботов.
Для навигации катетера можно собрать симуляцию на основе ускоряемой на GPU физики, цифровых двойников анатомии и смоделированной медицинской визуализации.
Cosmos-H-Dreams поддерживает масштабную генерацию реалистичного хирургического опыта с помощью базовых моделей мира. Разработчики могут использовать предварительно обученные модели, запускать интерактивную симуляцию или адаптировать программную платформу к новым процедурам и типам роботизированных систем.
Ежедневные новости об ИИ
Каждый день отбираем важные новости об ИИ, роботах и метавселенных и рассказываем главное — без хайпа и воды. Если хотите понимать, что происходит в ИИ раньше остальных, — подписывайтесь.
Только важное — каждый день
В Telegram