我正在尝试从图像网上的预训练模型中进行转移学习,以解决肺部CT切片的分类任务。
这些切片存储在dicom
文件中,因此它们的值以Hounsfield标度的12位表示。我的问题是:preprocess_input
的keras / tf2 api需要[0,255]中的值矩阵,因此如何预处理图像以将其馈送到经过预先训练的convnet?我可以规范[0,1]中的图像范围,还是必须使用模型preprocess_input
?如果preprocess_input
是强制性的,如何映射[0,255]范围内的12位值?
答案 0 :(得分:1)
您可以使用pydicom库将图像从Dicom格式转换为其他格式(即PNG)。然后,您可以正常地提供那些转换后的图像。
安装:
pip install pydicom
用途:
import pydicom
import cv2
ds = pydicom.read_file(path) # read dicom image
img = ds.pixel_array
cv2.imwrite(save_path, img)