Исходный код Dicom Viewer для iOS

Мне нужен исходный код любой программы просмотра Dicom для iOS, она может быть как для iPad, так и для iPhone. Может ли кто-нибудь помочь, предоставив ссылку на исходный код Dicom Viewer для загрузки?


person Cathy    schedule 23.03.2011    source источник
comment
Здравствуйте, я автор библиотеки Dicom Imebra (imebra.com). Это открытый исходный код (BSD), и он должен компилироваться где угодно. Вы можете использовать класс drawBitmap для передачи изображения Dicom в растровый буфер RGB.   -  person Paolo Brandoli    schedule 23.03.2011


Ответы (4)


Это не то, о чем вы просите, и, к сожалению, я не могу опубликовать свой код из-за коммерческих соображений, но написание пользовательского синтаксического анализатора DICOM для iOS оказалось не слишком сложным, когда я остановился, чтобы изучить немного своеобразную терминологию. DICOM предшествует IFF, но следует формуле в стиле фрагментов, что позволяет очень быстро погрузиться в работу. Я нашел этот сайт очень полезным, в дополнение к опубликованной спецификации .

Если вы можете использовать один из проектов с открытым исходным кодом, то, очевидно, это проще; У меня была конкретная причина для проекта, по которой я хотел иметь свой собственный, поскольку мы имеем дело с очень большими объемами данных, и поэтому оптимально оставить их на диске в виде NSData с отображением памяти (т.е. использовать систему виртуальной памяти iOS, чтобы это было точно так же, как если бы файл загружается как неизменяемый объект без необходимости тратить ОЗУ), и большинство из наших на практике поставлялись в несжатой форме (хотя формат контейнера допускает формы JPG и PNG, насколько я помню), поэтому создание собственного было существенным преимуществом потому что здесь нет шага повторной обработки — мы просто напрямую сопоставляем исходный DICOM, где данные представлены в подходящем формате.

person Tommy    schedule 25.03.2011

Imebra также можно скомпилировать на iOS и Mac. Это GPL, но есть коммерческая лицензия для проектов без открытого исходного кода.

Обратите внимание, что для доступа к файлам c++ ваш код Objective-C должен находиться в файле с расширением «.mm» (обратите внимание на двойное m, а не просто «.m»).

Просто используйте следующие помощники для преобразования из/в NSString/std::wstring

std::wstring NSStringToStringW ( NSString* str )
{
    const char* wstr = [str cStringUsingEncoding:NSUTF32LittleEndianStringEncoding];
    if(wstr == 0)
    {
        return L"";
    }
    return std::wstring((wchar_t*)wstr);
}


NSString* StringWToNSString ( const std::wstring& str )
{
    NSString* pString = [[NSString alloc] initWithBytes:str.data()
            length:str.size() * sizeof(wchar_t)
          encoding:NSUTF32LittleEndianStringEncoding];
    return [pString autorelease];
}
person Paolo Brandoli    schedule 04.10.2013

@ Кэти,

Ах! Святой Грааль!!

Я работаю над этой проблемой уже несколько месяцев - до сих пор нет радости.

Возможно, вам следует начать просматривать доступные бесплатные исходные коды DICOM, такие как DCMTK, VTK, GDCM и т. д. Они в основном основаны на C/C++, но трудности возникают, когда вы пытаетесь запустить что-то на iOS. Мне удалось заставить одно средство просмотра работать на Mac OSX, но мне все еще трудно заставить что-либо работать, не говоря уже о отображении изображения DICOM на iOS.

Если у вас есть какие-либо успехи, дайте мне знать.

Вот несколько веб-адресов для начала:

http://dicom.offis.de/dcmtk.php.en

http://sourceforge.net/projects/gdcm/files/

Хорошей охоты!!

Рик

person rick    schedule 23.03.2011
comment
Спасибо!! Рик, я попробую. - person Cathy; 23.03.2011
comment
привет @cathy .. ты нашел какой-нибудь исходный код, какую-нибудь ссылку. поделитесь пожалуйста. тоже ищу такой же. - person Muhammed Sadiq.HS; 04.02.2013
comment
@Cathy Вы получили исходный код. Пожалуйста, поделитесь кодом, если вам удалось заставить его работать. Это очень поможет. - person Siddharth; 19.02.2013
comment
Извините за задержку с ответом... Меня не было. Боюсь, никакой радости на этом конце. У меня ушло слишком много человеко-часов, чтобы разобраться с этим / он был отложен до тех пор, пока у меня не появится немного больше времени. Я все еще заинтересован в его доработке. Когда я вернусь к этому, я опубликую любой прогресс / код, чтобы помочь. Рик - person rick; 20.02.2013

Я Кэти. Попробуйте пакет OsiriX. Имеет бинарный и исходный код для IOS. Недавно портирован и на мобильные устройства Apple. Я надеюсь, что это поможет. (извините за мой плохой английский ;-))

person Guido    schedule 05.05.2013