def convert(nav_acq): save_folder=nav_acq+"_8bit/" if not os.path.isdir(save_folder): os.makedirs(save_folder) for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j) if (file_j[-3:]=='raw') and 'mask' not in file_j: if (file_j[-4:]=='zraw'): file_org_mhd=file_org.replace('zraw','mhd') file_new_mhd=file_new.replace('zraw','mhd') else: file_org_mhd=file_org.replace('raw','mhd') file_new_mhd=file_new.replace('raw','mhd') org_file_mhd = open(file_org_mhd) new_file_mhd = open(file_new_mhd,'w') convert=False for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: newline='' convert=True elif 'ElementSize' in line: newline='' elif 'DimSize' in line: newline=line temp=line.split() if len(temp) == 5: dimSize=[int(temp[2]),int(temp[3]),int(temp[4])] elif len(temp) == 4: dimSize=[int(temp[2]),int(temp[3])] else: newline =line new_file_mhd.write(newline) new_file_mhd.close() org_file_mhd.close() dimSize=np.hstack([3,dimSize]) if convert: raw_file = CxDataHandler.rawFileReader(file_org,dimSize) data=raw_file.get_samples() data=np.mean(data,axis=0) rawWrither = CxDataHandler.rawFileWrither(file_new,data) else: shutil.copy2(file_org, file_new) elif (file_j[-3:]=='mhd') and not ('mask' in file_j): continue else: shutil.copy2(file_org, file_new)
def convert(nav_acq): save_folder = nav_acq + "_8bit/" if not os.path.isdir(save_folder): os.makedirs(save_folder) for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j) if (file_j[-3:] == 'raw') and 'mask' not in file_j: if (file_j[-4:] == 'zraw'): file_org_mhd = file_org.replace('zraw', 'mhd') file_new_mhd = file_new.replace('zraw', 'mhd') else: file_org_mhd = file_org.replace('raw', 'mhd') file_new_mhd = file_new.replace('raw', 'mhd') org_file_mhd = open(file_org_mhd) new_file_mhd = open(file_new_mhd, 'w') convert = False for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: newline = '' convert = True elif 'ElementSize' in line: newline = '' elif 'DimSize' in line: newline = line temp = line.split() if len(temp) == 5: dimSize = [ int(temp[2]), int(temp[3]), int(temp[4]) ] elif len(temp) == 4: dimSize = [int(temp[2]), int(temp[3])] else: newline = line new_file_mhd.write(newline) new_file_mhd.close() org_file_mhd.close() dimSize = np.hstack([3, dimSize]) if convert: raw_file = CxDataHandler.rawFileReader(file_org, dimSize) data = raw_file.get_samples() data = np.mean(data, axis=0) rawWrither = CxDataHandler.rawFileWrither(file_new, data) else: shutil.copy2(file_org, file_new) elif (file_j[-3:] == 'mhd') and not ('mask' in file_j): continue else: shutil.copy2(file_org, file_new)
def convert(nav_acq): if nav_acq[-1] == '/': save_folder = nav_acq[0:-1] + "_png/" else: save_folder = nav_acq + "_png/" print save_folder if not os.path.isdir(save_folder): os.makedirs(save_folder) just_positive = True for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: if "Velocity" not in file_j: continue print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j.replace('.zraw', '.raw')) if (file_j[-4:] == 'zraw') and 'mask' not in file_j: file_org_mhd = file_org[0:-4] + 'mhd' org_file_mhd = open(file_org_mhd) convert = False channels = 1 for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: channels = 3 elif 'ElementType' in line: temp = line.split() ElementType = temp[-1] elif 'DimSize' in line: temp = line.split() if len(temp) == 5: dimSize = [ int(temp[2]), int(temp[3]), int(temp[4]) ] elif len(temp) == 4: dimSize = [int(temp[2]), int(temp[3])] org_file_mhd.close() if channels == 3: dimSize = np.hstack([3, dimSize]) raw_file = CxDataHandler.rawFileReader(file_org, dimSize, ElementType=ElementType) data = raw_file.get_samples() idx_n = data < 0 if sum(sum(data < 0)) == 0: just_positive = False idx_p = data > 0 data = data * 0 + 125 data[idx_n] = 0 data[idx_p] = 255 # rawWrither = CxDataHandler.rawFileWrither(file_new,data,ElementType=ElementType) print data.shape if just_positive: print("Only positive values")
def convert(nav_acq): if nav_acq[-1] == '/': save_folder=nav_acq[0:-1]+"_raw/" else: save_folder=nav_acq+"_raw/" print save_folder if not os.path.isdir(save_folder): os.makedirs(save_folder) for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j.replace('.zraw','.raw')) if (file_j[-4:]=='zraw') and 'mask' not in file_j: file_org_mhd=file_org[0:-4] + 'mhd' file_new_mhd=file_new[0:-3] + 'mhd' org_file_mhd = open(file_org_mhd) new_file_mhd = open(file_new_mhd,'w') convert=False channels=1 for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: newline=line channels=3 elif 'CompressedData ' in line: newline='CompressedData = False\n' elif 'CompressedDataSize' in line: newline='' elif '.raw' in line: newline=line.replace('zraw','raw') elif 'ElementType' in line: temp=line.split() ElementType=temp[-1] newline=line elif 'DimSize' in line: newline=line temp=line.split() if len(temp) == 5: dimSize=[int(temp[2]),int(temp[3]),int(temp[4])] elif len(temp) == 4: dimSize=[int(temp[2]),int(temp[3])] elif 'ElementDataFile' in line: newline = 'ElementDataFile = ' + file_j.replace('.zraw','.raw') else: newline =line new_file_mhd.write(newline) new_file_mhd.close() org_file_mhd.close() if channels == 3: dimSize=np.hstack([3,dimSize]) raw_file = CxDataHandler.rawFileReader(file_org,dimSize,ElementType=ElementType) data=raw_file.get_samples() rawWrither = CxDataHandler.rawFileWrither(file_new,data,ElementType=ElementType) elif (file_j[-3:]=='mhd') and not ('mask' in file_j): continue else: shutil.copy2(file_org, file_new)
def convert(nav_acq): if nav_acq[-1] == '/': save_folder = nav_acq[0:-1] + "_png/" else: save_folder = nav_acq + "_png/" print save_folder if not os.path.isdir(save_folder): os.makedirs(save_folder) for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: if "Velocity" not in file_j: continue print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j.replace('.zraw', '.png')) if (file_j[-4:] == 'zraw') and 'mask' not in file_j: file_org_mhd = file_org[0:-4] + 'mhd' org_file_mhd = open(file_org_mhd) convert = False channels = 1 for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: channels = 3 elif 'ElementType' in line: temp = line.split() ElementType = temp[-1] elif 'DimSize' in line: temp = line.split() if len(temp) == 5: dimSize = [ int(temp[2]), int(temp[3]), int(temp[4]) ] elif len(temp) == 4: dimSize = [int(temp[2]), int(temp[3])] org_file_mhd.close() if channels == 3: dimSize = np.hstack([3, dimSize]) raw_file = CxDataHandler.rawFileReader(file_org, dimSize, ElementType=ElementType) data = raw_file.get_samples() if channels == 3: data = np.swapaxes(data, 0, 2) plt.imshow(data) else: data = np.swapaxes(data, 0, 1) idx_n = data < 0 idx_p = data > 0 data = data * 0 + 125 data[idx_n] = 0 data[idx_p] = 255 plt.imshow(data, cmap="gray") print data.shape plt.savefig(file_new) plt.close()
def convert(nav_acq): if nav_acq[-1] == '/': save_folder = nav_acq[0:-1] + "_raw/" else: save_folder = nav_acq + "_raw/" print save_folder if not os.path.isdir(save_folder): os.makedirs(save_folder) for dirpath, dirnames, filenames in os.walk(nav_acq): for file_j in filenames: print file_j file_org = os.path.join(dirpath, file_j) file_new = os.path.join(save_folder, file_j.replace('.zraw', '.raw')) if (file_j[-4:] == 'zraw') and 'mask' not in file_j: file_org_mhd = file_org[0:-4] + 'mhd' file_new_mhd = file_new[0:-3] + 'mhd' org_file_mhd = open(file_org_mhd) new_file_mhd = open(file_new_mhd, 'w') convert = False channels = 1 for line in org_file_mhd: if 'ElementNumberOfChannels = 3' in line: newline = line channels = 3 elif 'CompressedData ' in line: newline = 'CompressedData = False\n' elif 'CompressedDataSize' in line: newline = '' elif '.raw' in line: newline = line.replace('zraw', 'raw') elif 'ElementType' in line: temp = line.split() ElementType = temp[-1] newline = line elif 'DimSize' in line: newline = line temp = line.split() if len(temp) == 5: dimSize = [ int(temp[2]), int(temp[3]), int(temp[4]) ] elif len(temp) == 4: dimSize = [int(temp[2]), int(temp[3])] elif 'ElementDataFile' in line: newline = 'ElementDataFile = ' + file_j.replace( '.zraw', '.raw') else: newline = line new_file_mhd.write(newline) new_file_mhd.close() org_file_mhd.close() if channels == 3: dimSize = np.hstack([3, dimSize]) raw_file = CxDataHandler.rawFileReader(file_org, dimSize, ElementType=ElementType) data = raw_file.get_samples() rawWrither = CxDataHandler.rawFileWrither( file_new, data, ElementType=ElementType) elif (file_j[-3:] == 'mhd') and not ('mask' in file_j): continue else: shutil.copy2(file_org, file_new)