这似乎是一个基本问题,但我坚持下去并希望得到一些帮助。
我正在尝试以 DICOM 格式加载和预处理一些图像,以便将它们提供给我的 Keras 模型,因为我有大约 2000 张图像,所以在我完成预处理步骤之前就消耗了 RAM。这是预处理步骤的代码:
(目录、标签是预定义的变量)
shape=(256,256)
patients_filename=tf.constant([directory+'/'+path for path in os.listdir(directory)])
dataset = tf.data.Dataset.from_tensor_slices((patients_filename,labels))
def parse_function(patientfilename,label):
var=tf.data.Dataset.list_files(patientfilename+'/*')
for image in var:
image=tf.io.read_file(image)
image = tfio.image.decode_dicom_image(image,dtype=tf.uint64)
image = tf.cast(image, tf.float32)
image=tf.image.resize(image,size=shape)/65535.0
image=tf.reshape(image,shape+(1,))
return image,label
dataset = dataset.map(parse_function).batch(8).prefetch(1)
然后我为模型提供预处理数据(数据集)。
你知道我怎样才能做得更好吗?