Мне нужен исходный код любой программы просмотра Dicom для iOS, она может быть как для iPad, так и для iPhone. Может ли кто-нибудь помочь, предоставив ссылку на исходный код Dicom Viewer для загрузки?
Исходный код Dicom Viewer для iOS
Ответы (4)
Это не то, о чем вы просите, и, к сожалению, я не могу опубликовать свой код из-за коммерческих соображений, но написание пользовательского синтаксического анализатора DICOM для iOS оказалось не слишком сложным, когда я остановился, чтобы изучить немного своеобразную терминологию. DICOM предшествует IFF, но следует формуле в стиле фрагментов, что позволяет очень быстро погрузиться в работу. Я нашел этот сайт очень полезным, в дополнение к опубликованной спецификации .
Если вы можете использовать один из проектов с открытым исходным кодом, то, очевидно, это проще; У меня была конкретная причина для проекта, по которой я хотел иметь свой собственный, поскольку мы имеем дело с очень большими объемами данных, и поэтому оптимально оставить их на диске в виде NSData с отображением памяти (т.е. использовать систему виртуальной памяти iOS, чтобы это было точно так же, как если бы файл загружается как неизменяемый объект без необходимости тратить ОЗУ), и большинство из наших на практике поставлялись в несжатой форме (хотя формат контейнера допускает формы JPG и PNG, насколько я помню), поэтому создание собственного было существенным преимуществом потому что здесь нет шага повторной обработки — мы просто напрямую сопоставляем исходный DICOM, где данные представлены в подходящем формате.
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];
}
@ Кэти,
Ах! Святой Грааль!!
Я работаю над этой проблемой уже несколько месяцев - до сих пор нет радости.
Возможно, вам следует начать просматривать доступные бесплатные исходные коды DICOM, такие как DCMTK, VTK, GDCM и т. д. Они в основном основаны на C/C++, но трудности возникают, когда вы пытаетесь запустить что-то на iOS. Мне удалось заставить одно средство просмотра работать на Mac OSX, но мне все еще трудно заставить что-либо работать, не говоря уже о отображении изображения DICOM на iOS.
Если у вас есть какие-либо успехи, дайте мне знать.
Вот несколько веб-адресов для начала:
http://dicom.offis.de/dcmtk.php.en
http://sourceforge.net/projects/gdcm/files/
Хорошей охоты!!
Рик
Я Кэти. Попробуйте пакет OsiriX. Имеет бинарный и исходный код для IOS. Недавно портирован и на мобильные устройства Apple. Я надеюсь, что это поможет. (извините за мой плохой английский ;-))