python处理红外热像数据
python处理红外热像数据
问题说明
经红外热像仪导出的.csv数据⽂件内存放温度值,每⼀张帧图像在其中是⼀个⼤⼩固定的矩阵(464348),若想处理该⽂件将其⽣成图⽚格式,需对⽂件内数据进⾏预处理,将其划分成⼤⼩为464348的矩阵,进⽽变换成图像。
数据预处理
数据预处理部分主要是将⼀些⽆⽤数据删除,例如开头的⽂件地址,csv中数据起始位置的⽂字。这些处理完后在对数据进⾏切⽚分割。
lists =[]
data =[]
with open((),'r',encoding='gbk',errors='ignore')as file:
for string in file:
data.append(string.rstrip('\n').split(',')[1:])
lists = data[2:]#此时list中存放的都为有⽤数据
数据切分
将lists中的数据进⾏切分,形成多个⼤⼩为464*348的矩阵,形成矩阵的数量视csv⽂件中的帧数决定。
num+=1
for k in range(0,len(lists),348):
s = lists[k:k+348]
num +=1
self.progressBar_2.setValue(num)
self.label_8.setText(str(num))
a = np.array(s)
list1 =[]
for i in range(0,348):# 194184
for j in range(464):
list1.append((round(float(a[i][j]),1)))#将温度数据保存⼀位⼩数
martix = np.array(list1).reshape(348,len(a[0]))# 形成图像矩阵
⽣成图像
图像可有martix矩阵⽣成,如果想图像为灰度图,则⽤cv2.imwrite()保存;若想⽣成为彩⾊图,则⽤
plt.imshow(martix,vmax=800,vmin=150,interpolation='nearest',uplot,origin='upper')#cmap是⾃定义温度图标
#保存
plt.savefig(⽂件路径+⽂件名,bbox_inches="tight", pad_inches=0)
⾃定义⾊标
cmap可选的⾊标
color_list =['Accent','Accent_r','Blues','Blues_r','BrBG','BrBG_r','BuGn','BuGn_r','BuPu','BuPu_r','CMRmap','CMRmap_r',\ 'Dark2','Dark2_r','GnBu','GnBu_r','Greens','Greens_r','Greys','Greys_r','OrRd','OrRd_r','Oranges','Oranges_r',\
'PRGn','PRGn_r','Paired','Paired_r','Pastel1','Pastel1_r','Pastel2','Pastel2_r','PiYG','PiYG_r','PuBu','PuBuGn',\
'PuBuGn_r','PuBu_r','PuOr','PuOr_r','PuRd','PuRd_r','Purples','Purples_r','RdBu','RdBu_r','RdGy','RdGy_r','RdPu',\
'RdPu_r','RdYlBu','RdYlBu_r','RdYlGn','RdYlGn_r','Reds','Reds_r','Set1','Set1_r','Set2','Set2_r','Set3','Set3_r',\
'Spectral','Spectral_r','Wistia','Wistia_r','YlGn','YlGnBu','YlGnBu_r','YlGn_r','YlOrBr','YlOrBr_r','YlOrRd','YlOrRd_r',\
'afmhot','afmhot_r','autumn','autumn_r','binary','binary_r','bone','bone_r','brg','brg_r','bwr','bwr_r','cividis',\
'cividis_r','cool','cool_r','coolwarm','coolwarm_r','copper','copper_r','cubehelix','cubehelix_r','flag','flag_r',\
'gist_earth','gist_earth_r','gist_gray','gist_gray_r','gist_heat','gist_heat_r','gist_ncar','gist_ncar_r','gist_rainbow',\
'gist_rainbow_r','gist_stern','gist_stern_r','gist_yarg','gist_yarg_r','gnuplot','gnuplot2','gnuplot2_r','gnuplot_r',\
'gray','gray_r','hot','hot_r','hsv','hsv_r','inferno','inferno_r','jet','jet_r','magma',\
'magma_r','nipy_spectral','nipy_spectral_r','ocean','ocean_r','pink','pink_r','plasma','plasma_r',\
'prism','prism_r','rainbow','rainbow_r','seismic','seismic_r','spring','spring_r','summer',\
python怎么读csv数据'summer_r','tab10','tab10_r','tab20','tab20_r','tab20b','tab20b_r','tab20c','tab20c_r','terrain','terrain_r',\
'twilight','twilight_r','twilight_shifted','twilight_shifted_r','viridis','viridis_r','winter','winter_r']
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论