python 將dicom圖片轉換成jpg圖片的實例
更新時間:2020年01月13日 15:27:33 作者:GoHowz
今天小編就為大家分享一篇python 將dicom圖片轉換成jpg圖片的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
主要原理:調(diào)整dicom的窗寬,使之各個像素點上的灰度值縮放至[0,255]范圍內(nèi)。
使用到的python庫:SimpleITK
下面是一個將dicom(.dcm)圖片轉換成jpg圖片的demo:
import SimpleITK as sitk import numpy as np import cv2 def convert_from_dicom_to_jpg(img,low_window,high_window,save_path): lungwin = np.array([low_window*1.,high_window*1.]) newimg = (img-lungwin[0])/(lungwin[1]-lungwin[0]) #歸一化 newimg = (newimg*255).astype('uint8') #將像素值擴展到[0,255] cv2.imwrite(save_path, newimg, [int(cv2.IMWRITE_JPEG_QUALITY), 100]) if __name__ == '__main__': # 下面是將對應的dicom格式的圖片轉成jpg dcm_image_path = '/DICOM_image/lung001.dcm' #讀取dicom文件 output_jpg_path = 'JPG_image/lung001.jpg' ds_array = sitk.ReadImage(dcm_image_path) #讀取dicom文件的相關信息 img_array = sitk.GetArrayFromImage(ds_array) #獲取array # SimpleITK讀取的圖像數(shù)據(jù)的坐標順序為zyx,即從多少張切片到單張切片的寬和高,此處我們讀取單張,因此img_array的shape #類似于 (1,height,width)的形式 shape = img_array.shape img_array = np.reshape(img_array, (shape[1], shape[2])) #獲取array中的height和width high = np.max(img_array) low = np.min(img_array) convert_from_dicom_to_jpg(img_array, low, high, output_jpg_path) #調(diào)用函數(shù),轉換成jpg文件并保存到對應的路徑 print('FINISHED')
以上這篇python 將dicom圖片轉換成jpg圖片的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python使用Pickle模塊進行數(shù)據(jù)保存和讀取的講解
今天小編就為大家分享一篇關于Python使用Pickle模塊進行數(shù)據(jù)保存和讀取的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-04-04Django admin 實現(xiàn)search_fields精確查詢實例
這篇文章主要介紹了Django admin 實現(xiàn)search_fields精確查詢實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03實例講解Python腳本成為Windows中運行的exe文件
在本篇文章里小編給大家分享了關于Python腳本成為Windows中運行的exe文件的相關知識點內(nèi)容,有興趣的朋友們學習下。2019-01-01