python如何将DICOM图片转为JPG?

python如何将DICOM格式转为JPG格式图片??

  • 确保自己安装的环境中有pydicom
    如果没有用pip或者conda安装
import os
import numpy as np
import pydicom
from PIL import Image
from os import listdir

def dicom_to_jpeg(dicom_path, output_path):
    # 加载DICOM图像
    ds = pydicom.dcmread(dicom_path)

    # 提取像素数组
    pixel_array = ds.pixel_array

    # 转换为灰度图像
    image = Image.fromarray(pixel_array).convert("L")

    # 保存为JPEG图像
    image.save(output_path)


def dicom_to_rgb(dicom_path, output_path):
    # 加载DICOM图像
    ds = pydicom.dcmread(dicom_path)

    # 提取像素数组
    pixel_array = ds.pixel_array.astype(float)
    image_temp = (np.maximum(pixel_array,0)/pixel_array.max())*255
    image = np.uint8(image_temp)
    # 转换为灰度图像
    image = Image.fromarray(image)

    # 保存为JPEG图像
    image.save(output_path)
# 调用函数进行转换
if __name__ == "__main__":
    dicom_file = rf'E:\Python\PSMA\data\DCM'
    jepg_file = rf'E:\Python\PSMA\data\RGB'
    temp_list = listdir(dicom_file)
    for filename in temp_list:
        try:
            print(filename)
            image_list = listdir(os.path.join(dicom_file, filename))
            if os.path.exists(os.path.join(jepg_file, filename)):
                pass
            else:
                os.makedirs(os.path.join(jepg_file, filename))
            for image in image_list:
                print(image)
                if image[-3:] != 'DCM' :
                    pass
                else:
                    dicom_path = os.path.join(dicom_file, filename, image)
                    jepg_path = os.path.join(jepg_file, filename, image[:-3] + 'JPG')
                    dicom_to_rgb(dicom_path, jepg_path)
        except Exception as e:
            print(e)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柚子味的羊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值