在此问题中我会直接提供我的metadata.csv文件, 里面记载着所有DICOM档案的file path: file_location 栏位當中。
请帮助我! 写一个function能够直接转换所有的DICOM档案, 转成jpg或是png档案。
满紧急的! 請各位专家帮助。
我想应该是算满简单的? , 但是对我这个程式新芽来说不太容易, 急需协助。 最好是能直接写出function!
以下我附上我的csv档案google drive链接, 我的file_path已经转换成我自己local端的绝对路径了。
https://drive.google.com/file/d/1IaDd7XYIPmX9tynBRUspqgwZtB1ZHFJp/view?usp=share_link 如果无法下载请直接加我微信跟我拿!
祝幫助我的兄弟姐妹們發!
import pydicom
import os
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
def cov_img(file):
dcm = pydicom.read_file(f"{file}.dcm")
uid = dcm.SOPInstanceUID
img_arr = dcm.pixel_array
lens = img_arr.shape[0]*img_arr.shape[1]
arr_temp = np.reshape(img_arr,(lens,))
max_val = max(arr_temp)
min_val = min(arr_temp)
img_arr = (img_arr-min_val)/(max_val-min_val)
# 绘制图像并保存
plt.figure(figsize=(12,12),dpi=250) # 图像大小可以根据文件不同进行设置
plt.imshow(img_arr,cmap=plt.cm.bone)
plt.title("UID:{}".format(uid))
plt.savefig(f"{file}.jpg")
#plt.close()
dd=pd.read_csv('e:/metadata2.csv')
for i in range(len(dd)):
file_path=dd.loc[i,'File_Location']
cov_img(file_path)
csv中存储的是图像数据,写一个程序把csv文件中的数据读取出来转为图像文件是吗?想先看下你的数据是咋样的,点击你提供的链接打不开,不知道咋回事。你要不再贴个图出来看看。