MRI dicomデータを各pixcelの信号強度のcsvファイルに一括変換する
必要なmoduleはpydicom
事前にpip install pydicomでinstall しておく
ws = 'ワークスペース用フォルダ' os.chdir(ws) import os import glob import pydicom import numpy as np import pandas as pd # path of dicom folder dcm_fd = "フォルダpathを書く" # create file list of dicom images dcm_fls = glob.glob(dcm_fd) # create folder to save csv file os.mkdir("sv_dcm2csv") for tmp_fl in dcm_fls: tmp_dcm = pydicom.read_file(tmp_fl) # get rescale factor for PHILIPS image rscale_slop = tmp_dcm.RescaleSlope # get rescale factor for PHILIPS image sacele_factor = tmp_dcm[0x2005100e] sacele_factor = sacele_factor.value # PHILIPS image img = tmp_dcm.pixel_array / rscale_slop / sacele_factor # create file name tmp_file_name = os.path.splitext(tmp_fl) tmp_file_name = tmp_file_name[0].split("/") file_name = tmp_file_name[5] save_file_name = "ワークスペースフォルダ" + "/" + file_name + ".csv" # conver to float type & save using Pandas pd.DataFrame(img).to_csv(save_file_name, index=False, header=False, float_format='%11.6f')