2016-10-21 3 views
0

J'utilise à la fois OpenCV et ITK. Je me demande si ITK peut décoder une image médicale d'un tampon, comme OpenCV peut, avec cv::imdecode(). Par exemple, si j'ai un fichier DICOM lu dans un tampon buf en utilisant fread(), est-il une API dans ITK que je peux utiliser pour obtenir un itk::Image de buf?analogique de OpenCV imdecode() dans ITK

Merci.

Répondre

1

ITK dispose d'un mécanisme d'E/S pour déterminer le type de fichier en fonction de son extension et utiliser la classe ImageIO appropriée pour effectuer la lecture proprement dite. L'interface ImageIO est uniforme. Un exemple simple est un pour NRRD, et un plus compliqué est GDCM.

La solution simple consiste à écrire ce tampon dans un file in temp folder, puis le lire en utilisant le mécanisme IO régulière.

+0

Merci! La raison pour laquelle j'ai besoin de cela est parce que j'utilise ITK dans un environnement distribué, où un nœud peut envoyer une image compressée à un autre sur un réseau. J'ai besoin d'éviter les fichiers I/O, malheureusement. On dirait que la seule solution que j'ai est d'envoyer une image décodée et ses métadonnées sur le réseau. –

+0

Cette bibliothèque pourrait vous faciliter la tâche: http://openigtlink.org/ –