2010-07-07 11 views
4

Ma ligne de travail nécessite l'utilisation de fichiers DICOM. Chaque fichier DICOM constitue plusieurs fichiers .dcm dans un seul répertoire. Je suis obligé d'envoyer ces fichiers sur le réseau, un processus qui est quelque peu dû à la taille massive des fichiers. Je suis aussi un programmeur et je me demandais quel est le moyen idéal pour compresser de tels fichiers? Je parle d'une compression qui sera faite sur l'ordinateur local et plus tard décompressée sur l'ordinateur de destination (à savoir la compression est uniquement pour accélérer le transfert sur le réseau du fichier). Y at-il un moyen simple de recadrer les fichiers DICOM? (Les fichiers contiennent l'imagerie d'une tête entière, alors que je ne suis intéressé que par une petite partie de la tête).Compression de fichier DICOM

Merci!

Répondre

1

Vous pouvez utiliser un élément simple comme la compression lzma à une extrémité pour emballer les fichiers et les envoyer. C'est la solution la plus simple, puisque vous pouvez saisir quelque chose comme gzip et empaqueter/décompresser les fichiers facilement par programmation. Cela peut aider considérablement, car les ordinateurs modernes préfèrent transmettre/recevoir un gros fichier sur de nombreux petits fichiers (un seul fichier de 1 Go transférera beaucoup plus rapidement que 10000 fichiers de 100 Ko). En ce qui concerne la réduction de la taille globale, chaque fichier .dcm est probablement une tranche (si vous regardez quelque chose comme des données IRM ou CT), et la visionneuse que vous utilisez reconstruit les tranches dans l'image 3D. Les recadrer n'est pas impossible, mais analyser le format DICOM est un peu délicat. Je ne connais pas de programmes gratuits qui vous aideront à analyser les fichiers DICOM, mais je n'ai pas cherché depuis longtemps. Étant donné que DICOM est un format de conteneur, les données d'image que vous recherchez sont généralement stockées dans un format commun (tel que JPEG), donc si vous êtes en mesure de saisir la partie pertinente du fichier pour extraire les données d'image, vous pouvez utiliser le format JPEG. pouvez utiliser l'une des charges des outils de traitement d'image disponibles pour recadrer l'image à toutes les dimensions que vous choisissez.

3

Dans le contexte médical, la compression avec perte est quelque part entre non encouragée et interdite. Si vous insistez pour recadrer des ensembles de données existants, la norme vous oblige à créer au moins de nouveaux ID d'image &. La norme permet la compression sans perdant sous la forme de jpeg2000, mais c'est assez rare - si je devais parier que je dirais que votre ensemble de données est complètement décompressé. Selon mon expérience, il est préférable de compresser un ensemble de données médicales sous la forme d'une archive solide, c'est-à-dire d'unifier toutes les images en un seul flux. Cela fait beaucoup de sens, car il y a généralement beaucoup de similitude entre les images proches et ce est le moyen de tirer parti de cette similitude (un dictionnaire de compression unifié). Ceci est disponible en tant qu'option de ligne de commande pour les compresseurs rar et gzip.

+0

salut, votre réponse semble intéressant, pouvez-vous donner nous un exemple en utilisant gzip? Qu'entendez-vous par "dictionnaire de compression unifié"? – Arash

+1

Dans 7z, l'option de ligne de commande est -s: http://sevenzip.sourceforge.jp/chm/cmdline/switches/method.htm#Solid. Recherchez la référence pour l'outil que vous utilisez. Un dictionnaire est l'appareil par lequel les chaînes longues octets communes sont remplacées par une représentation plus courte: http://en.wikipedia.org/wiki/Dictionary_coder. Dans une archive solide, les chaînes 'communes' sont recherchées dans tous les fichiers compressés. –

+0

'Dans le contexte médical, la compression avec perte est quelque part entre non encouragée et interdite': C'est un peu fort. De nombreux types d'images en médecine peuvent et doivent être compressés avec perte. Cela inclut les documents de référence, l'imagerie non diagnostique et, en effet, même ces derniers peuvent être compressés en toute sécurité. L'Association canadienne de radiologie recommande même les [ratios pour chaque modalité] (http://fluxinc.ca/guidelines-for-jpeg-compression-of-dicom/). Je n'aurais pas peur de cela en général, cependant, je suis d'accord que la compression de flux est géniale, mais surtout parce que c'est plus facile à implémenter. – gamut

2

Solution:

gdcmconv --jpeg uncompressed.dcm compressed.dcm 

ou pour un meilleur taux de compression:

gdcmconv --jpegls uncompressed.dcm compressed.dcm 

Voir: http://gdcm.sourceforge.net/html/gdcmconv.html

Je recommande également à la compression avec perte, vous devez être un assistant DICOM pour le faire correctement (voir mécanisme de dérivation dans la norme DICOM). Je recommanderais également de ne pas rogner l'image (vous devrez régénérer les UID, mettre à jour le cadre ou la référence ...))

HTH