Доброго всем вечера, Столкнулся для себя с нестандартной проблемой - надо посмотреть файлы DICOM. Дали CD-диск с файлами AUTORUN.INF CDVIEWER.EXE CDVIEWER.JAR DICOMDIR в корне, дирами A и вложенной в нее дирой B в которой находятся собственно DICOM-файлы. Это все дело прислали мне эл. почтой. > $ file AUTORUN.INF > AUTORUN.INF: Microsoft Windows Autorun file.
> $ file CDVIEWER.EXE > CDVIEWER.EXE: PE32 executable for MS Windows (GUI) Intel 80386 32-bit > $ file DICOMDIR > DICOMDIR: DICOM medical imaging data > file A00 > A00: DICOM medical imaging data Нашел в дистре сквизи такие пакеты: ~$ aptitude search dicom i dicom3tools - DICOM medical image files manipulation and i dicomnifti - конвертирует файлы DICOM в формат NIfTI i dicomscope - The OFFIS DICOM Viewer i python-dicom - DICOM medical file reading and writing Установил их. Пытаюсь открыть файлы в dicomscope - ничего не открывает, пишет - Load Failed. Не совсем правда понимаю, что грузить, пытался грузить и сами dicom-файлы, и файл DICOMDIR - без толку. В Process Log в окошке дикомдира никакого лога при этом не вижу. Пытаюсь исполнить strace dicomscope, лается на то, что: > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/tls/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/tls/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/tls/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/tls", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../lib/amd64/jli", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/tls/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/tls/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/tls/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/tls", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/bin/../jre/lib/amd64/jli", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/tls/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/tls/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/tls/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/tls", 0x7fff6f258be0) > = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/libz.so.1", O_RDONLY) > = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/tls/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/tls/x86_64", 0x7fff6f258be0) > = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/tls/libz.so.1", O_RDONLY) = > -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/tls", 0x7fff6f258be0) = -1 > ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/x86_64/libz.so.1", O_RDONLY) > = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/x86_64", 0x7fff6f258be0) = -1 > ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/libz.so.1", O_RDONLY) = -1 > ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/lib/amd64", {st_mode=S_IFDIR|0755, > st_size=4096, ...}) = 0 > open("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/tls/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/tls/x86_64", > 0x7fff6f258be0) = -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/tls/libz.so.1", O_RDONLY) > = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/tls", 0x7fff6f258be0) = -1 > ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/x86_64/libz.so.1", > O_RDONLY) = -1 ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/x86_64", 0x7fff6f258be0) = > -1 ENOENT (No such file or directory) > open("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64/libz.so.1", O_RDONLY) = -1 > ENOENT (No such file or directory) > stat("/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64", 0x7fff6f258be0) = -1 > ENOENT (No such file or directory) нет файлов, которые похоже проге нужны. Вроде бы основные пакеты оупджавы в системе есть: > $ aptitude search openjdk > p openjdk-6-dbg > - Java runtime based on OpenJDK (debugging symbols) > > p openjdk-6-demo > - Java runtime based on OpenJDK (demos and examples) > > p openjdk-6-doc > - OpenJDK Development Kit (JDK) documentation > > p openjdk-6-jdk > - комплект разработчика OpenJDK > > i A openjdk-6-jre > - OpenJDK Java runtime, using Hotspot JIT > > i A openjdk-6-jre-headless > - OpenJDK Java runtime, using Hotspot JIT (headless) > > i A openjdk-6-jre-lib > - OpenJDK Java runtime (architecture independent libraries) > > v openjdk-6-jre-shark > - > > p openjdk-6-jre-zero > - Alternative JVM for OpenJDK, using Zero/Shark > > p openjdk-6-source , не знаю какого рожна ему не хватает, не документации же или сырцов оупнджавы?! В dicom3tools входят следующие утилиты: > /usr/bin/andump > /usr/bin/dcentvfy > /usr/bin/dcsrdump > /usr/bin/dcsort > /usr/bin/dctable > /usr/bin/dcdirdmp > /usr/bin/dcdump > /usr/bin/dcfile > /usr/bin/dchist > /usr/bin/dckey > /usr/bin/dciodvfy > /usr/bin/dcstats > /usr/bin/jpegdump но ни одной из них я не смог посмотреть картинки. В лучшем случае получал какую-то метаинформацию о файле. Как пользоваться python-dicom вообще не понял, видимо он нужен для написания питон-скриптов для чтения этих файлов, в чем я не силен. Утилита dicomhead из пакета dicomnifti выдает какую-то фигню: > $ dicomhead DICOMDIR > > **** DICOMImage::Mosaic: Cannot get value of image type in image > DICOMDIR > $ dicomhead A/B/A00 > > **** DICOMImage::NumSlices: Cannot get number of slices from A/B/A00 > **** Setting value to 1 (can be changed with '-s' option on command > line.) > > > **** DICOMImage::GetRepetitonTime: Cannot get value of acquisition > repetition time in image A/B/A00 При употреблении указанной опции -s ругается, что не может открыть файл -s, воспринимая ее не как опцию, а как файл (в man нет вообще опций никаких). Что за NIfTI format и как его читать, если в него конвертнуть, я честно не совсем понимаю. Пытался wine'ом открыть CDVIEWER.EXE - ругается, что нужна java 1.5 или выше, видимо пойду в виртмашину открывать в винде, хотя эта идея мне особо не нравиться... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/51374c49.5010...@lavabit.com