Ваа3D
Vaa3D (по-китайски «挖三维») — это пакет программного обеспечения для визуализации и анализа с открытым исходным кодом, созданный в основном Ханьчуаном Пэном и его командой в исследовательском кампусе Джанелия , HHMI и Институте наук о мозге Аллена . [1] [2] Программное обеспечение выполняет 3D, 4D и 5D-рендеринг и анализ очень больших наборов данных изображений, особенно тех, которые созданы с использованием различных современных методов микроскопии , и связанных с ними трехмерных поверхностных объектов. Это программное обеспечение использовалось в нескольких крупных проектах в области нейробиологии и ряде приложений в других областях. В недавней обзорной статье Nature Methods он был назван одним из ведущих пакетов программного обеспечения с открытым исходным кодом в смежных областях исследований. [3] Кроме того, исследования с использованием этого программного обеспечения были удостоены премии Коццарелли 2012 года Национальной академии наук . [4]
Создание
[ редактировать ]Vaa3D был создан в 2007 году для реализации крупномасштабного проекта по картированию мозга на ферме Джанелия Медицинского института Говарда Хьюза . Первоначальная цель состояла в том, чтобы быстро визуализировать любое из десятков тысяч больших стопок изображений мозга плодовых мух, полученных с помощью 3D- лазерной сканирующей микроскопии , каждое объемом в несколько гигабайт. Низкоуровневый 3D-рендеринг на основе OpenGL был разработан для обеспечения прямого рендеринга многомерных стеков изображений. C/ C++ и Qt использовались для обеспечения кроссплатформенной совместимости, поэтому программное обеспечение может работать на Mac, Linux и Windows. Мощные функции для синхронизации нескольких 2D/3D/4D/5D-рендеринговых изображений, создания глобальных и локальных 3D-просмотров, а также виртуального пальца позволяют Vaa3D оптимизировать ряд операций для сложных задач науки о мозге, например, сравнения мозга и реконструкции нейронов. . Vaa3D также предоставляет расширяемый интерфейс плагинов , в котором в настоящее время размещены десятки плагинов с открытым исходным кодом, созданных исследователями со всего мира.
3D-визуализация данных 3D, 4D и 5D изображений.
[ редактировать ]Vaa3D способен быстро отображать данные 3D, 4D и 5D (X, Y, Z, цвет, время). Объемный рендеринг обычно имеет масштаб в несколько гигабайт и может быть расширен до масштаба в терабайты на набор изображений. Визуализация выполняется быстро за счет непосредственного использования OpenGL.
Vaa3D решает проблему визуализации больших данных с помощью нескольких методов. Одним из способов является объединение синхронизированного и асинхронного рендеринга данных, при котором данные в полном разрешении отображаются только тогда, когда вращение или другое динамическое отображение данных приостанавливается, а в противном случае отображается только изображение грубого уровня.
Альтернативный метод, используемый в Vaa3D, — это объединение глобальных и локальных средств просмотра 3D. Глобальное средство просмотра 3D-изображений дополнительно отображает только изображение с пониженной дискретизацией, тогда как локальное средство просмотра 3D-изображений отображает изображение в полном разрешении, но только в определенных локальных областях. Интуитивная 3D-навигация осуществляется путем определения интересующей 3D-области с использованием техники Virtual Finger с последующим созданием в реальном времени специального локального 3D-просмотрщика для такой интересующей области.
Быстрое 3D-взаимодействие человека и машины, виртуальный палец и 3D WYSIWYG
[ редактировать ]3D-визуализация стопки изображений — это, по сути, пассивный процесс наблюдения за данными. Сочетание активного способа ввода предпочтений пользователя в отношении определенных мест значительно повышает эффективность исследования содержимого трехмерных или многомерных изображений. Тем не менее, «исследование содержимого трехмерного изображения» требует, чтобы пользователь был способен эффективно взаимодействовать и количественно профилировать шаблоны объектов изображения, используя графический пользовательский интерфейс инструментов визуализации трехмерных изображений. Техника виртуального пальца, или 3D- WYSIWYG («Что вы видите в 2D, то и получаете в 3D»), позволяет эффективно генерировать и использовать информацию о местоположении в 3D из 2D-ввода пользователя на обычном 2D-дисплее или сенсорных устройствах.
Метод Virtual Finger отображает идентифицированный 2D-пользовательский ввод через устройства 2D-дисплея, такие как экран компьютера, обратно в объемное 3D-пространство изображения. Математически это зачастую сложная обратная задача. Однако, используя информацию о пространственной разреженности и непрерывности во многих наборах данных трехмерных изображений, эта обратная проблема может быть хорошо решена, как показано в недавней статье. [5]
Технология Virtual Finger Vaa3D позволяет мгновенно и в произвольном порядке исследовать сложное содержимое трехмерных изображений, подобно тому, как настоящие пальцы исследуют реальный трехмерный мир, используя один щелчок или движение для поиска трехмерных объектов. Он использовался для повышения производительности сбора, визуализации, управления, аннотирования, анализа и использования данных изображений для экспериментов в реальном времени, таких как микрохирургия.
Рендеринг поверхностных объектов
[ редактировать ]Vaa3D отображает три основных типа объектов трехмерной поверхности:
- Облако точек: набор трехмерных сферических объектов, каждый из которых имеет свой цвет, тип, размер и другие свойства. Это часто используется для моделирования популяции клеток или аналогичных частицоподобных объектов.
- Реляционные данные (граф, трубчатая сеть): каждый узел графа имеет определенный размер и тип и связан с другими узлами. Это часто используется для моделирования морфологии нейронов, топологии сети и т. д.
- Объекты с неправильной поверхностью: каждая 3D-поверхность имеет неправильную форму и моделируется с использованием сложной поверхностной сетки.
Эти трехмерные поверхностные объекты также часто располагаются в виде «наборов». Vaa3D может отображать несколько наборов любых из этих поверхностных объектов, которые также можно накладывать поверх данных вокселей изображения, используя различные отношения наложения. Эти функции полезны для колокализации, количественной оценки, сравнения и других целей.
Приложения
[ редактировать ]Программное обеспечение использовалось в ряде приложений, таких как следующие примеры.
Реконструкция нейронов и количественная оценка
[ редактировать ]Vaa3D предоставляет пакет Vaa3D-Neuron для реконструкции, количественной оценки и сравнения трехмерной морфологии отдельных нейронов ряда видов.
Vaa3D-Neuron позволяет использовать несколько способов отслеживания нейронов.
- Ручная трассировка: пользователь может использовать 3D Virtual Finger для быстрой ручной реконструкции или редактирования структуры нейрона в 3D.
- Полуавтоматическое отслеживание: пользователь может указать некоторые ключевые конечные точки, которых должна достичь трассировка нейронов, как и раньше, а затем попросить Vaa3D автоматически завершить 3D-реконструкцию. Затем пользователь также может редактировать 3D-реконструкцию вручную.
- Полностью автоматическая трассировка: пользователь может использовать очень быструю функцию All-Path-Pruning 1. [6] или обрезка всех путей 2 [7] для автоматического отслеживания всего нейрона в 3D и использования NeuronCrawler для отслеживания очень большого стека изображений (десятки гигабайт на набор данных нейрона). Пользователь также может использовать несколько других алгоритмов автоматической трассировки нейронов, портированных на Vaa3D, включая трассировку FarSight Snake Tracing, трассировку NeuTube (фитинг трубки) и трассировку MOST на основе пакетов лучей. Методы-оболочки, такие как UltraTracer, которые расширяют любой из этих базовых трассировщиков до произвольно больших объемов многомерных изображений, также были разработаны и интегрированы в Vaa3D. [8]
Анализ отдельных клеток C. elegans , плодовой мушки и мыши
[ редактировать ]Vaa3D использовался для извлечения отдельных клеток в ходе нескольких исследований нематоды C. elegans . [9] насекомое плодовая мушка , [10] мышь, [11] и другие виды. Основными используемыми функциями были сегментация 3D-изображений для извлечения и количественной оценки уровней экспрессии генов отдельных клеток, а также быстрый подсчет клеток в определенных областях мозга. Vaa3D также предоставляет методы для аннотирования этих ячеек и определения их имен.
Vaa3D также предоставляет алгоритм SRS (одновременная сегментация и распознавание). [12] для 3D-сегментации сложных клеток, которые часто соприкасаются друг с другом. Это было сделано путем адаптивного сопоставления предопределенного «атласа» (карты расположения некоторых ячеек) с изображением итеративно с использованием алгоритма максимизации ожидания до сходимости. Было показано, что SRS уменьшает ошибки чрезмерной и недостаточной сегментации по сравнению с обычно используемым методом сегментации водораздела.
Картирование мозга и регистрация 3D-изображений
[ редактировать ]Vaa3D использовался в нескольких проектах по картированию мозга как с точки зрения выравнивания (регистрации) шаблонов, так и анализа на основе мультиплексирования.
- Выравнивание и регистрация шаблонов: Vaa3D предоставляет ряд плагинов и функций для выравнивания шаблонов 3D-изображений, [13] а затем синхронизируйте 3D-отображение этих выровненных шаблонов.
- Анализ на основе мультиплексирования: Vaa3D включает в себя менеджер шаблонов Atlas Manager. [14] который отображает серию выровненных шаблонов изображений в электронной таблице, с помощью которой подмножества этих шаблонов можно раскрасить по-разному и смешать вместе для анализа колокализации.
Расширения
[ редактировать ]Vaa3D можно расширить с помощью интерфейса плагина. Для создания базового шаблона нового плагина предусмотрен мастер под названием «Создатель плагинов».
В настоящее время выпущены следующие основные категории плагинов.
- Мастер создания плагинов
- Управление цветовыми каналами
- Ввод-вывод и преобразование данных
- Генерация Атласа
- Приложения C. elegans
- Подсчет ячеек (на основе машинного обучения или сегментации изображений)
- Фильтры изображений
- Геометрия изображения
- Регистрация изображения
- Сегментация изображений
- Сшивка изображений и визуализация больших изображений
- Поколение фильмов
- Трассировка нейронов
- Набор инструментов Нейрон
- Панель инструментов синхронизации
- Утилиты FlyWorkstation (для рабочей станции Janelia Farm Fly)
Vaa3D также был расширен для поддержки ITK, Matlab , Bioformats, OpenCV и другого широко используемого программного обеспечения. Одно из расширений, называемое Vaa3D-TeraFly, предназначено для визуализации терабайтов данных изображений с использованием углубленного представления данных в стиле Google Earth.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Пэн, Х.; и др. (2010). «V3D обеспечивает 3D-визуализацию в реальном времени и количественный анализ крупномасштабных наборов данных биологических изображений» . Природная биотехнология . 28 (4): 348–353. дои : 10.1038/nbt.1612 . ПМЦ 2857929 . ПМИД 20231818 .
- ^ Пэн, Х.; и др. (2014). «Расширяемая визуализация и анализ многомерных изображений с использованием Vaa3D». Протоколы природы . 9 (1): 193–208. дои : 10.1038/нпрот.2014.011 . ПМИД 24385149 . S2CID 11837559 .
- ^ Элисейри, К; и др. (2012). «Программные средства биологической визуализации» . Природные методы . 9 (7): 697–710. дои : 10.1038/nmeth.2084 . ПМЦ 3659807 . ПМИД 22743775 .
- ^ «PNAS объявляет шесть лауреатов премии Коццарелли 2012 года» . www.nasonline.org . Издательство Оксфордского университета. 12 марта 2013 г. Архивировано из оригинала 1 мая 2013 г. Проверено 20 мая 2018 г.
- ^ Пэн, Х.; и др. (2014). «Виртуальный палец ускоряет трехмерную визуализацию и микрохирургию, а также визуализацию и анализ изображений терабайтных объемов» . Природные коммуникации . 5 : 4342. Бибкод : 2014NatCo...5.4342P . дои : 10.1038/ncomms5342 . ПМК 4104457 . ПМИД 25014658 .
- ^ Пэн, Х.; и др. (2011). «Автоматическое 3D-отслеживание нейронов с использованием обрезки всех путей» . Биоинформатика . 27 (13): i239–i247. doi : 10.1093/биоинформатика/btr237 . ПМК 3117353 . ПМИД 21685076 .
- ^ Сяо, Х.; и др. (2013). «APP2: автоматическое отслеживание 3D-морфологии нейронов на основе иерархической обрезки деревьев расстояний взвешенных по серому изображений» . Биоинформатика . 29 (11): 1448–1454. doi : 10.1093/биоинформатика/btt170 . ПМК 3661058 . ПМИД 23603332 .
- ^ Пэн, Ханьчуань; Чжоу, Чжи; Мейеринг, Эрик (2016). «Автоматическое отслеживание сверхобъемных изображений нейронов». bioRxiv 10.1101/087726 .
- ^ Лонг, Ф.; и др. (2009). «3D-цифровой атлас C. elegans и его применение для анализа одиночных клеток» . Природные методы . 6 (9): 667–672. дои : 10.1038/nmeth.1366 . ПМК 2882208 . ПМИД 19684595 .
- ^ Хекшер, Э.; и др. (2014). «Программное обеспечение Atlas-Builder и атлас eNeuro: ресурсы для биологии развития и нейробиологии» . Разработка . 141 (12): 2524–2532. дои : 10.1242/dev.108720 . ПМК 4050700 . ПМИД 24917506 .
- ^ Апонте, Ю.; и др. (2011). «Нейронов AGRP достаточно, чтобы быстро и без тренировки управлять пищевым поведением» . Природная неврология . 14 (3): 351–355. дои : 10.1038/nn.2739 . ПМК 3049940 . ПМИД 21209617 .
- ^ Цюй, Л.; и др. (2011). «Одновременное распознавание и сегментация клеток: применение у C.elegans» . Биоинформатика . 27 (20): 2895–2902. doi : 10.1093/биоинформатика/btr480 . ПМК 3187651 . ПМИД 21849395 .
- ^ Цюй, Л.; и др. (2014). «LittleQuickWarp: сверхбыстрый инструмент деформации изображений». Методы . 73 : 38–42. дои : 10.1016/j.ymeth.2014.09.002 . ПМИД 25233807 .
- ^ Пэн, Х.; и др. (2011). «BrainAligner: 3D-атласы регистрации мозга дрозофилы» . Природные методы . 8 (6): 493–498. дои : 10.1038/nmeth.1602 . ПМК 3104101 . ПМИД 21532582 .