机器视觉与智能检测相关课题创新实践-实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《机器视觉与智能检测相关创新实践》
课外实验报告
实验一、图像融合
1.实验内容:
对同一场景的红外图像和可见光图像进行融合,采用图1中的参考图形,以及自己
的手掌图像(可见光图像和红外光图像),并对结果进行简要分析,融合方法可采
用以下方法中的一种或多种:直接加权融合方法,傅里叶变换融合方法,小波变换
融合方法;
2.实验目标:
1). 了解融合的概念;
2). 比较融合方法中不同参数的效果(如直接加权融合中权值的分配)
3.参考图像:
(a)红外图像(b)可见光图像
图1 待融合图像
4.实验内容
1)直接加权融合方法:
线性混合操作也是一种典型的二元(两个输入)的像素操作:
通过在范围内改变。
核心代码:image((Y1+Y2)/2); %权值相等
图2 直接融合图像1
图3 直接融合图像2
改变参数的影响:那个图的参数比例高,那个图在融合图像中的影响就越高。2)傅里叶变换融合:
对一张图像使用傅立叶变换就是将它分解成正弦和余弦两部分。也就是将图像从空间域(spatial domain)转换到频域(frequency domain)。然后通过在频域的处理来实现融合。
图4傅里叶变换融合图像1
图5 傅里叶变换融合2
3)小波融合:
小波变换(Wavelet Transform)是一种新型的工程数学工具,由于其具备的独特数学性质与视觉模型相近,因此,小波变换在图像处理领域也得到了广泛的运用。用在图像融合领域的小波变换,可以说是金字塔方法的直接拓展。
图6 小波融合1
图7 小波融合2
5.实验完整代码
1.直接融合
addpath('E:\学习\课件\机器视觉创新实践\曾东明') Y1=imread('1.PNG');
subplot(1,3,1);
imshow(Y1);
title(' 直接融合1.PNG');
Y2=imread('2.PNG');
subplot(1,3,2);
imshow(Y2);
subplot(1,3,3);
image((Y1+Y2)/2);
Y1=imread('057_L_VL.bmp'); subplot(1,3,1);
imshow(Y1);
title('直接融合图像1');
Y2=imread('057_L_IR.bmp'); subplot(1,3,2);
imshow(Y2);
title('图像2');
subplot(1,3,3);
Y1=rgb2gray(Y1);
image((Y1+Y2)/2);
2.傅里叶变换
Y1=imread('1.PNG');
subplot(1,3,1);
imshow(Y1);
title('傅里叶变换融合1.PNG'); Y2=imread('2.PNG');
subplot(1,3,2);
imshow(Y2);
title('2.PNG');
F1=fft2(Y1);
F2=fft2(Y2);
X=abs(ifft2(F1+F2)/2);
subplot(1,3,3);
image(X);
Y1=imread('057_L_VL.bmp'); subplot(1,3,1);
imshow(Y1);
title('傅里叶变换融合图像1'); Y2=imread('057_L_IR.bmp'); subplot(1,3,2);
imshow(Y2);
title('图像2');
Y1=rgb2gray(Y1);
F1=fft2(Y1);
F2=fft2(Y2);
X=abs(ifft2(F1+F2)/2);
subplot(1,3,3);
image(X);
3.小波融合
addpath('E:\学习\课件\机器视觉创新实践\曾东明') Y1=imread('1.PNG');
subplot(1,3,1);
imshow(Y1);
title('db4 小波变换1.PNG');
Y2=imread('2.PNG');
subplot(1,3,2);
imshow(Y2);
title('2.PNG');
Y1=double(Y1);
Y2=double(Y2);
[c3,L1]=wavedec2(Y1,2,'db4');
[c4,L2]=wavedec2(Y2,2,'db4');
W=c3+c4;
YY=waverec2(W,L1,'db4');
subplot(1,3,3);
YY=double(YY);
image(YY);
Y1=imread('057_L_VL.bmp');
subplot(1,3,1);
imshow(Y1);
title('db4小波融合图像1');
Y2=imread('057_L_IR.bmp');
subplot(1,3,2);
imshow(Y2);
title('图像2');
Y1=rgb2gray(Y1);
Y1=double(Y1);
Y2=double(Y2);
[c3,L1]=wavedec2(Y1,2,'db4');
[c4,L2]=wavedec2(Y2,2,'db4');
W=c3+c4;
YY=waverec2(W,L1,'db4');
subplot(1,3,3);
YY=double(YY);
image(YY);