Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];

Вниз

Реконструкция трехмерного изображения   Найти похожие ветки 

 
Cyber   (2003-06-30 11:08) [0]

Исходя из сабжа хочется узнать, что для этого необходимо. В наличии имеются томографические срезы в формате DICOM 3.0 Есть ли где компоненты для доступа к заголовку и графическим данным этого формата? Этапность разработки приложения для реконструкции трехмерного изображения в полуавтоматическом и/или автоматическом режимах обработки данных(?). Задачу нужно реализовать програмным способом, поэтому предложения по обработке картнок через 3DMax и подобные не подходят.


 
pasha676   (2003-06-30 11:17) [1]


> срезы в формате DICOM 3.0 Есть ли где компоненты для доступа
> к заголовку и графическим данным этого формата?

Сомнительно. Копаться самому придеться. Можно посмотреть на предмет, а конвертит ли DICOM эти данные в другой формат? Или писать что то самому (гемор, без описания формата не рекомендуется). Как насчет COM интерфейсов в этом самом DICOM?


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

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


 
Cyber   (2003-06-30 11:59) [2]

Допустим, что с форматом я разобрался и картнку могу получить в градациях серого в любой палитре хоть до 255, хоть от 0 до 1 - glFloat. Я так понимаю, что задача сводится к выделению контуров однородных областей. Интерполяции однородных данных между линиями принадлежащих одному объекту и визулизации в виде трехмерной модели. В этом случае получаются очень интересные грабли - большой объем вершин для визуализации, что очень затрудняет производительность программы. Нами было это решено в виде полуавтоматического выделения однородных областей и сопоставления их в пространстве. Хочется автоматизировать процесс.


 
Cyber   (2003-06-30 12:03) [3]

И еще вопрос: как сохранить трехмерную модель в виде файла данных? Т.к. реконструкция занимает время (3-4 минуты) и не хочется каждый раз пересчитывать.


 
pasha676   (2003-06-30 12:27) [4]

Насчет автоматизации трудно сказать. Смотря как будет сделана отрисовка (оптимизируешь же ты отрисовку в конце концов). Но в принцыпе нормальная машина и нормально написанная программа держит очень большое число вертексов и фэйсов (под сотню тысяч - и то не предел). А оптимизация и сглаживание 3Д объектов - штука, имхо, сложная. И зависит от представления данных у тебя внутрях. Что будешь использовать? ТРеугольники, поверхности Безье, наборы вершин? В зависимости от этого надо разрабатывать алгоритмы оптимизации.
Сохранение в свой формат - это из разряда, как удобней - так и делай. Очень трудно что то советовать. Но опять же все сводиться в предавлении, а как у тебя это храниться?


 
Cyber   (2003-06-30 12:33) [5]

На данный момент 1.310.720 вершин обрабатывается и хранится в памяти. Тормоза страшные на пне4 1.3 ГГц с ГФ2 64 Мб. Плюс линии около сотни.


 
pasha676   (2003-06-30 13:26) [6]

До фига. Надо убивать.


 
Cyber   (2003-07-01 12:12) [7]

Согласен. Но как?


 
pasha676   (2003-07-01 12:28) [8]

Смотря как задаеться поверхность. Если поверзность у тебя - совокупность точек, т.е. что то вроде трехмерного массива - то можно попробывать в лоб. Берем четыре соседние точки (проекции на плоскость, на "землю", по x и y) и сводим их в одну. Т.е. даем им среднее значение по х y и z. Пробежались по всему массивчмку и стало в четыре раза меньше вертексов. По идеи (если у тебя повехность аж 1.5 млн точек) качество картинки упадет очень не значительно. Можно и более сложные вещи. Анализировать ближайшие точки по x,y на предмет незначительного отклонения по z и заменять их совокупность на один полигон.


 
Cyber   (2003-07-02 10:19) [9]

В нете нашел файлик - FI_Dicom.dll и исходники на VC 6.0 к нему. Интересно, как мне узнать имена функций описанных в нем доступных для использования извне. С VC 6.0 я не сильно знаком. Лежит здесь: http://meridian.tomsk.ru:8101/~tomomed/FI_Dicom.exe


 
Cyber   (2003-07-02 10:22) [10]

и вообще может ли он работать с файлами формата DICOM?


 
pasha676   (2003-07-03 10:36) [11]


> и вообще может ли он работать с файлами формата DICOM?

А хто его знает. Я вообще название такое впервые слышу. Но вот в Си рекомендю разобраться по такому поводу. Там не сложно, а результат будет на фэйсе. Не говорю уж что такую длл можно на дельфи перекатать, но юзать можно будет быстро. Лишь бы работала. Там все очень просто, но посидеть придеться. Просто отыскивать то что надо можно долго и согласование по параметрам сделать.


 
ARV   (2003-08-04 18:20) [12]

Напиши подробно задачу на root@cld.nkz.ru , попробую пособить.
Работаю над медицинскими прогами.



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
6-11686
alexb
2003-10-03 23:28
2003.12.04
Нужна программа для упр. удалённым компом!


9-11575
greenrul
2003-05-19 02:55
2003.12.04
Реализация изменцивых от ситуации диалогов в RPG:


4-11712
SergeySEM
2003-10-10 12:59
2003.12.04
вылов клавиш


6-11666
Ahmad K
2003-10-05 15:04
2003.12.04
Работа в паутине.


11-11597
mega-chel
2003-03-24 13:56
2003.12.04
Нужны diskinfo, и dsgnintf под 7 delphi,





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский