醫學圖像處理 小知識

以前我在處理醫學圖像數據時,往往都是處理nii 的數據。我要需要對圖像進行切片時。直接讀出矩陣時就可以了。最近有一批新的數據是dcm 類型的。由於dcm數據的獨特性。每一個文件基本就是一個切片。因此我就直接進行讀取了。我使用了

label_path = 'H:\\CTdata3\headCTA\\DICOM'
slices = [pydicom.dcmread(label_path + '\\' + s) for s in os.listdir(label_path)]

然後我就開始繼續進行其他操作。最後發現讀取出來的數據原來的切片的數據的順序完全不一樣了。

我打開文件夾一看發現

文件夾裏面的數據都是這樣。發現直接遍歷是很難按順序讀出來。最後發現數據再上面的代碼中加一段就可以了。

slices.sort(key = lambda x: int(x.InstanceNumber))

這樣整個文件都可以按照順序讀出來了。

在這裏讀出來之後也許你還想保存下來,把這些重新編號排序。可以這麼操作

for i in range(736):
         s=image[i]
         s.save_as("H:\\CTdata3\\labeldcm\\IM"+str(i))

這樣你就可以按順序保存成 dcom 數據了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章