2017-12-17 3 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

관련 문제