Гаврилов Николай Игоревич
персональная веб-страница
gavrilov86@gmail.com

Объёмный рендеринг трёхмерного rgb-изображения

Этот проект был сделан в рамках научной статьи по компьютерной графике. Был сделан рендер объёмных данных, в каждом вокселе которых закодирован цвет, а не плотность. В проекте Visible Human данные были получены путём послойного фотографирования срезов замороженных трупов с целью создания трёхмерного анатомического атласа для обучения медиков. Я взял данные отсюда - тоже, кстати, интересный веб-просмоторщик. Размер массива 920x840x561 вокселей. Чёрные воксели были сделаны прозрачными, т.к. они соответствуют воздуху.

Моя задача заключалась в том, чтобы индекcировать цвета и загрузить в GPU не 24-битный массив RGB цветов, а 8-битный массив индексов, плюс цветовую таблицу. По сути, это кодирование изображения с потерей качества - мне нужно было минимизировать эти потери, подобрав оптимальные цвета для цветовой таблицы. Чтобы численно оценить потери, на javascript была написана утилита для сравнения двух изображений по метрике PSNR.

Скачать демо (120Mb)

Скачать статью

Объёмный рендеринг трёхмерного rgb-изображения
Объёмный рендеринг трёхмерного rgb-изображения
Утилита для сравнения изображений
Утилита для сравнения изображений
e-mail:gavrilov86@gmail.com
© 2009-2024 Гаврилов Николай