0

特定のボクセル値を 1 にし、残りを 0 にしたい SimpleITK 画像を作成しようとしています。

とにかく、ボクセル値を 1 として割り当てる、生成したいくつかのインデックスがあります。ただし、これらのサンプルが空間内で互いにどのように方向付けられているかを視覚化できるようにしたいと考えています。必要なインデックスが 1 のゼロでいっぱいの配列を NIFTI 画像に変換する方法を複数試しましたが、まだ視覚化できず、これらの点がどのように見えるかを確認できません

以下は、私が試した基本的なコードスニペットです

 def WriteSampleToDisk():
"""Creates an empty image, assigns generated samples with voxel value 1 and writes it to disk.

returns image written to disk"""

img = sitk.Image(512, 512, 416, sitk.sitkInt16)
img.SetOrigin((0, 0, 0))
img.SetSpacing((1, 1, 1))

#Some code to get indices 
for i in range(len(dimx)): #Same number of elements in every index dimension
    img.SetPixel(dimz[i], dimy[i], dimx[i], 1)#Sitk convention takes z axis as the first axis
arr = sitk.GetArrayFromImage(img)
print(np.argwhere(arr == 1)) --> It's giving me the indices where I have Set the voxel value as 1
sitk.WriteImage(img, "image.nii")
return img

ただし、しきい値を設定した後でもパラビューで表示しようとすると、何も表示されません。この理由は何でしょうか?この問題を回避する方法はありますか?

4

1 に答える 1