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 高通安卓11提取完整线刷包软件,或者优博讯dt50顺丰刷机包
  • ¥20 C,有个译码器,换了信道就跑不出原来数据
  • ¥15 MIMIC数据库安装问题
  • ¥60 基于JTag协议开发Fpga下载器上位机,哪位大🐂有偿指导?
  • ¥20 全书网Java爬取数据
  • ¥15 怎么获取红包封面的原始链接,并且获取红包封面序列号
  • ¥100 微信小程序跑脚本授权的问题
  • ¥100 房产抖音小程序苹果搜不到安卓可以付费悬赏
  • ¥15 STM32串口接收问题
  • ¥15 腾讯IOA系统怎么在文件夹里修改办公网络的连接