2017-12-17 33 views
2

私はSimpleITKを使ってMetaImageデータを読み込んでいます。SimpleITK、イメージ配列をロードせずにメタデータを読み込む

時々、私はメタデータ(キー=値.mhdファイルに格納されています)にアクセスする必要がありますが、それを行うための唯一の方法はReadImageを呼び出すことです。

import SimpleITK as sitk 

mhd = sitk.ReadImage(filename) 
origin = mhd.GetOrigin() 
spacing = mhd.GetSpacing() 
direction = mhd.GetDirection() 

完全なイメージをロードせずに原点の間隔と方向にアクセスする方法はありますか?

答えて

3

ITK自体がこの機能をサポートしていますが、SimpleITKではサポートしていません。 https://github.com/SimpleITK/SimpleITK/issues

UPDATE:

プロジェクトで機能要求を作成してください

この新機能は、1.1リリースのSimpleITKマスターブランチに追加されました。問題は、ここで作成された基準については

if len (sys.argv) < 2: 
    print("Usage: DicomImagePrintTags <input_file>") 
    sys.exit (1) 

reader = sitk.ImageFileReader() 

reader.SetFileName(sys.argv[1]) 
reader.LoadPrivateTagsOn(); 

reader.ReadImageInformation(); 

for k in reader.GetMetaDataKeys(): 
    v = reader.GetMetaData(k) 
    print("({0}) = = \"{1}\"".format(k,v)) 

print("Image Size: {0}".format(reader.GetSize())); 
print("Image PixelType: {0}".format(sitk.GetPixelIDValueAsString(reader.GetPixelID()))); 
+1

:ここ

は、新しいインタフェースの一例であるhttps://github.com/SimpleITK/SimpleITK/issues/356 – blowekamp

+0

右、申し訳ありませんが、私は忘れてしまいましたここで質問を更新してください。私は、質問を開いたままにして、その機能がSimpleITKでマージされるときにそれを更新してみましょう。 – filippo

関連する問題