Как стать автором
Обновить

Как мы сделали визуализатор трехмерных изображений с нуля

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров4.6K
Всего голосов 20: ↑22.5 и ↓-2.5+25
Комментарии8

Комментарии 8

Привет)

Крутая статья вышла, интересно было читать - спасибо 🤝

Насколько велик порог входа, чтобы разрабатывать подобные инструменты? К какой области разработки это относится в принципе?

Здравствуйте! Спасибо за ваш отзыв, очень рады, что статья показалась вам интересной.

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

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

Если будут еще вопросы - обращайтесь, будем рады помочь!

Это область компьютерной графики, должность - рендер инженер. Порог входа: аналитическая геометрия, линейная алгебра, c/c++. Сегодня используют 3 варианта визуализации изображения: воксельный рендеринг (он в этой статье), трассировка лучей и аксонометрическая проекция на плоскость (или рендер треугольников - самый распространённый). В результате визуализации получается растровое изображение, которое можно например вывести на экран.

Круто! Есть ли режим реконструкции поверхностей?

Не планируете ли вы сделать на базе этого движка воксельный редактор с поддержкой прозрачности? Мне кажется, он бы хорошо подошёл для моделирования анатомических структур (сосудов, нервов, фасций и т.д.). Так как, в отличие от полигонального моделирования, в воксельной сетке органы не могут пересекаться, что позволило бы легко подгонять их по форме друг к другу.

Есть ли у вас платформа для 3D-реконструкции сканов ОКТ сетчатки глаза? Большинство аппаратов ОКТ имеют очень скудные возможности по 3D-визуализации, не умеют выравнивать слои при "дрожании" глаза или головы пациента.

Приветствуем! Благодарим за интерес к статье.

Про воксельный редактор: такой редактор — отдельный непростой продукт, и пока в наши планы его создание не входит. Нам кажется, что распыляться и делать кое-как — это неправильно. Мы будем делать свое и прекрасно, а другое сделает прекрасно кто-нибудь еще.

Про ОКТ: это может быть интересным направлением развития. Спасибо за идею. Но пока мы еще не начали экспансию за пределы области рентгеновских методов.

Про реконструкцию поверхностей: пока нет, но есть в планах. Следите за нашими новостями)

Почему не вулкан?

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий