利用python实现.dcm格式图像转为.jpg格式

yipeiwu_com6年前Python基础

如下所示:

import pydicom 
import matplotlib.pyplot as plt 
import scipy.misc 
import pandas as pd
import numpy as np
import os 


def Dcm2jpg(file_path):
  #获取所有图片名称
  c = []
  names = os.listdir(file_path) #路径
  #将文件夹中的文件名称与后边的 .dcm分开
  for name in names:
    index = name.rfind('.')
    name = name[:index]
    c.append(name)
 
  for files in c :
    picture_path = "/home/dell/Desktop/Dcm/"+files+".dcm"
    out_path = "/home/dell/Desktop/Dcm1/"+files+".jpg" 
    ds = pydicom.read_file(picture_path)
    img = ds.pixel_array # 提取图像信息 
    scipy.misc.imsave(out_path,img) 
  
  print('all is changed')
      
Dcm2jpg('/home/dell/Desktop/Dcm')

在此处需要安装pydicom库,直接在终端命令窗口使用pip install pydicom命令安装

将.bmp格式图片转为.jpg图像

#import scipy.misc 
import os 
from PIL import Image
def bmp2jpg(file_path,out_path): 
#获取所有图片名称 
  c = [] 
  names = os.listdir(file_path) #路径 #将文件夹中的文件名称与后边的 .bmp分开 
  for name in names: 
    index = name.rfind('.') 
    name = name[:index] 
    c.append(name) 
  for files in c : 
    picture_path = "/home/dell/Desktop/unet/d/Mask/"+files+".bmp" 
    out_path = "/home/dell/Desktop/unet/d/Mask1/"+files+"_mask.gif" 
    im = Image.open(picture_path)
    im.save(out_path)#scipy.misc.imsave(out_path,im) 
  print('all is changed') 
bmp2jpg('/home/dell/Desktop/unet/d/Mask','/home/dell/Desktop/unet/d/Mask1')

以上这篇利用python实现.dcm格式图像转为.jpg格式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python改变日志(logging)存放位置的示例

实现了简单版本的logging.config,支持一般的通过config文件进行配置。感觉还有更好的方法,是直接利用logging.config.fileConfig(log_confi...

使用pdb模块调试Python程序实例

在Python中,语法错误可以被Python解释器发现,但逻辑上错误或变量使用错误却不容易发现,如果结果没有符合预期,则需要调试,一个很好的调试工具:Python自带的pdb模块。pdb...

Python嵌套列表转一维的方法(压平嵌套列表)

前一段去云英面试,技术官很”不厚道“了问了一个非常简单的问题:如何将多维列表转化了一维的?当时虽然想到了使用迭代或者列表生成式可以做到,但是可以没能可行的代码,回来后一顿后悔。 对于规范...

对python mayavi三维绘图的实现详解

对python mayavi三维绘图的实现详解

网上下载mayavi的官方帮助文档,里面有很多例子,下面的记录都是查看手册后得到的。 http://code.enthought.com/projects/mayavi/docs/dev...

Python脚本实现集群检测和管理功能

Python脚本实现集群检测和管理功能

场景是这样的:一个生产机房,会有很多的测试机器和生产机器(也就是30台左右吧),由于管理较为混乱导致了哪台机器有人用、哪台机器没人用都不清楚,从而产生了一个想法--利用一台机器来管理所有...