我正在尝试读取 DIACOM 图像并将其转换为 jpg,为什么在读取扩展名为 .dcm 的图像时发生此错误
应该如何解决这个问题?
图像大小重要还是数据类型重要?
首先,是的,尺寸很重要,您需要所有图像具有相同的尺寸,并以相同的方式存储,这就是预处理的目的。
但是我不确定我明白你想要做什么,如果你想使用深度学习将 dicom 转换为 jpg,请注意,存在一种算法可以完成此操作,你可以在这里找到更多相关信息https://medium.com/@vivek8981/dicom-to-jpg-and-extract-all- Patients-information-using-python-5e6dd1f1a07d以及这里使用python读取和打开dicom图像,它不太完整但这就是我找到第一个链接的地方
如果这不是您想要做的,或者您仍然想做,那么我将如何进行预处理:
首先为您愿意的最大图像设置一个尺寸,您使用的所有图像都将设置为该尺寸,通过填充黑色像素或剪切 然后从每个图像中提取像素:
import pydicom as dicom
def extract(path):
ds = dicom.dcmread(image_path)
return ds.pixel_array
然后填充或剪切每个图像,我不包括该步骤,因为它有很多代码,但不是很复杂:
切割也是同样的事情
完成后,将所有图片放入列表中并开始训练
要将图像导出为 jpg,只需执行以下操作:
import cv2
cv2.imwrite(path + '.jpg', pixel_array)```