本文通过可见光和红外图像,访问颜色表,恢复成彩色图片。
首先可见光和红外图像是要经过配准的,然后仪可见光图像的像素值为y坐标,红外图像的像素值为x坐标来访问颜色表:
void readcolormap(IplImage *src2, IplImage *src1)
{
//src1 src2 分离通道处理
IplImage *search=cvLoadImage("e:\\kankan\\3.bmp");
cvSplit(search, b, g, r, NULL); //颜色表分离通道处理
//r通道赋值
for (i=height-1; i>=0; i--)
{
for (j=width-1; j>=0; j--)
{
k=data1[i*step1+j];
t=data2[i*step1+j];
data4r[i*step4r+j]=data3r[k*step3r+t];
}
}
cvShowImage("qq",result);
}
思想:分离颜色表,同时也分离图片,对r,g,b三通道分别处理,最后在合成。。
附上效果图:
红外图:
可见光图: