Eric12219180 2023-01-23 17:55 采纳率: 62.2%
浏览 50
已结题

我提供metadata.csv,請幫我寫一個function轉換所有DICOM檔!

在此问题中我会直接提供我的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 如果无法下载请直接加我微信跟我拿!
祝幫助我的兄弟姐妹們發!

  • 写回答

2条回答 默认 最新

  • cjh4312 2023-01-23 18:58
    关注
    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)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月31日
  • 已采纳回答 1月23日
  • 创建了问题 1月23日

悬赏问题

  • ¥15 dir815漏洞反弹shell失败
  • ¥15 支付宝小程序云函数登录获取user_id失败
  • ¥50 python for 循环速度慢
  • ¥15 CubeMX生成的代码用keil编译有报错
  • ¥15 Stata链式中介效应代码修改
  • ¥15 pip安装PyAV报错
  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 添加组件无法加载页面,某块加载卡住