2016-07-21 2 views
0

Je suis à la recherche d'un moyen de compresser les fichiers DICOM et les envoyer à un serveur distant (nodejs dans mon cas)fichiers DICOM Compresser à envoyer à un serveur distant

J'essayées compression bz2 et il semble fonctionner très bien sur les gros fichiers dicom (testé avec un fichier de 10 Mo qui m'a donné un fichier compressé de 5 Mo).

En matière de petite taille (comme un fichier 250Kb), je reçois une taille réduite par un très peu kb (5 à 10 kb dans la plupart des cas) qu'il ne sera pas la peine

quelqu'un peut-il S'il vous plaît expliquez-moi pourquoi bz2 fonctionne très bien avec de grands fichiers dicom et y at-il un meilleur moyen de compresser les fichiers dicom que je peux utiliser afin de les envoyer via internet.

merci d'avance.

+0

Comment voulez-vous transférer les fichiers via Internet? DICOM C-STORE ou un protocole propriétaire? De quel genre d'images parlez-vous? Couleur/Niveaux de gris, Résolution? –

+0

merci pour la réponse, un transfert avec poste http, je ne suis pas sûr de la sorte dicom, y at-il pas une méthode de compression sans perte adaptative qui fonctionnera pour tout type (?) – user3711521

Répondre

0

Si vous souhaitez compresser un jeu de données DICOM avec des images, nous vous recommandons d'utiliser l'un des types de compression pris en charge par DICOM Standard. Cela inclut JPEG, JPEG 2000, JPEG-LS et RLE avec et sans perte pour n'en nommer que quelques-uns. Standard prend également en charge l'encodage des niveaux de gris étendus (niveaux de gris 12-16 bits) en utilisant les techniques de compression standard. L'élément Syntaxe de transfert (0002, 0010) indique si l'image dans l'ensemble de données DICOM est déjà compressée ou non. Comme par exemple, la recompression d'une image déjà compressée va apparaître avec moins de taux de compression par rapport à l'original. Donc, la meilleure façon de mesurer est de comparer avec l'image originale non compressée. Si votre image d'origine est déjà compressée, vous pouvez calculer la taille de l'image non compressée en utilisant (Lignes x Colonnes x Bits alloués/8 x Échantillon par pixel x Nombre de trames). De plus, le taux de compression varie en fonction du type d'image (couleur et échelle de gris) et de la technique de compression utilisée. En règle générale, vous obtiendrez une meilleure compression lorsque vous traitez une image couleur réelle par rapport à une image en niveaux de gris telle qu'une image X-RAY. En ce qui concerne l'utilisation du protocole HTTP pour télécharger le fichier, vous pouvez également utiliser le service défini par le standard DICOM, tel que le service REST DICOMWeb (STOW-RS). Je travaille pour LEAD Technologies et si vous voulez tester diverses compressions sur vos fichiers DICOM, nous avons une démo exe (Syntaxe de transfert) qui est livrée avec notre SDK d'évaluation gratuit de 60 jours que vous pouvez utiliser pour tester. En outre, il existe une démo pour tester les services DICOMWeb REST. Vous pouvez télécharger la copie d'évaluation sur notre site Web.

0

Il n'y a pas une solution qui convient parfaitement tous ...

BZ2 est basée sur le principe selon lequel « les couleurs » (ou valeurs de gris, mais j'utiliser des « couleurs » dans cette explication) qui souvent se produire dans l'image sont codés avec moins de bits que les couleurs qui sont rares. Ainsi, en règle générale: plus l'image est grande, meilleur est le taux de compression.

JPEG est une approche différente qui décompose l'image en carreaux et optimise le codage pour chaque carreau. Ainsi, le taux de compression dépend moins de la taille de l'image que pour BZ2. JPEG a différentes saveurs (avec perte, sans perte, JPEG 2000 qui peuvent créer différentes sérialisations des données compressées à des fins différentes, par exemple un raffinement progressif).

algorithmes de compression moins populaires qui sont valides en DICOM mais pas largement pris en charge par les produits DICOM sont:

RLE (Run Length Encoding) - les données de pixels est décrit par des paires de couleurs et le nombre de pixels, il se comprime très bien lorsque vous avez de grandes zones homogènes dans l'image. Dans tous les autres cas, il augmente plutôt la taille de la « compressée » image

JPEG-LS - Je ne sais pas comment il fonctionne en interne, mais il fournit un algorithme sans perte et un algorithme lossy dans lequel vous pouvez contrôler la perte d'information (différence maximale d'une valeur de pixel après compression à la valeur de pixel d'origine). On dit qu'il atteint de meilleurs rapports que le JPEG traditionnel, mais comme il n'est pas largement supporté, je ne l'ai pas encore utilisé en pratique.

Si vous ne voulez pas sélectionner l'algorithme de compression en fonction du type d'image, JPEG-Lossless est probablement un bon compromis pour vous. Dans les images médicales typiques, il atteint un taux de compression moyen d'environ 1: un peu plus avec JPEG-2000.

+0

JPEG-Lossless réalise environ 1: 2 parfois Taux de compression 1: 3 pour la plupart des cas. Avec les images médicales, JPEG-Lossless est assez commun, alors que JPEG-LS et JPEG-2000 ne le sont pas. –