1数字图像,红外图像处理,高温定标点校正程序
%读取高温定标点二进制数据,将数据信息存储到pic2矩阵里
clc;clear;
a1=fopen('handdat_34.dat','rb','b'); %打开二进制数据信息
pic1=fread(a1,[200 200]); %将二进制数据信息读出到200*200的多维数组里面
a2=fopen('hidat_62.dat','rb','b');
pic2=fread(a2,[200 200]);
a3=fopen('low31dat_62.dat','rb','b');
pic3=fread(a3,[200 200]);
b=mean2(pic2); %求pic2的平均值将结果返回给b
A=b*ones(200);
K=A./pic2; %计算校正因子200*200矩阵数组K
pic2_K_hi=K.*pic2; %高稳定点校正高温图片
pic3_K_hi=K.*pic3; %高稳定点校正低温图片
pic1_K_hand_hi=K.*pic1; %高稳定点校正目标成像图片
figure(1);
subplot(131) ,imshow(uint8(pic2_K_hi),[ ]), title('高温定点校正高温图片'); ;
subplot(132) ,imshow(uint8(pic3_K_hi),[ ]),title('高温定点校正低温图片'); subplot(133) ,imshow(uint8(pic1_K_hand_hi),[ ]),title('高温定点校正目标成像图片');
figure(2);
subplot(131) ,mesh(1:200,1:200,roundn(pic2_K_hi,-3)),title('高温定点校正高温三维图');
subplot(132) ,mesh(1:200,1:200,pic3_K_hi),title('高温定点校正低温三维图'); subplot(133) ,mesh(1:200,1:200,pic1_K_hand_hi),title('高温定点校正目标成像三维图');
colormap gray; % 选为灰度