资源简介
在matlab平台上实现基于小波变化的图像匹配配准,小波变换在图像匹配领域应用较少,不过它的匹配率高,精度准确效果还是十分明显的,唯一不足就是匹配时间较长,还有待读者对之改进~
代码片段和文件信息
function testpipei_1()
%使用说明:此函数为单独使用,不具有交互性,因此必须在E盘下存在名为:P1010813.jpg的图像,
%在工作区中(此函数所在位置)必须存在名为afterCut.jpg的图像。afterCut.jpg最好是从
%P1010813.jpg的图像上剪裁下来的,P1010813.jpg图像不要太大,最好为500*500以内的,否则
%计算时间会很长
web -browser http://www.ilovematlab.cn/thread-10019-1-1.html
yuantu=imread(‘256graycup192.jpg‘);%加载原图象
pipeitu=imread(‘256graytempcup192.jpg‘);%加载匹配图象
%subplot(221)imshow(yuantu)
%subplot(222)imshow(pipeitu)
%yuantu2gray=rgb2gray(yuantu);%将原图象转换为灰度图象
%pipeitu2gray=rgb2gray(pipeitu);%将匹配图象转换为灰度图象
yuantu=double(yuantu);
pipeitu=double(pipeitu);
[pipei_heightpipei_width]=size(pipeitu);%获取匹配图象的大小尺寸,其值为[长,宽]将匹配图象的长度值赋给pipei_width将匹配图象的宽度值赋给pipei_lenth
[yuantu_heightyuantu_width]=size(yuantu);
%wavelet decomposition
[yuantu_cyuantu_s]=wavedec2(yuantu2‘db1‘);
[pipeitu_cpipeitu_s]=wavedec2(pipeitu2‘db1‘);
yuantu_A1=appcoef2(yuantu_cyuantu_s‘db1‘1);
pipeitu_A1=appcoef2(pipeitu_cpipeitu_s‘db1‘1);
%subplot(221)imshow(uint8(yuantu_A1));
%subplot(222)imshow(uint8(pipeitu_A1));
yuantu_A2=appcoef2(yuantu_cyuantu_s‘db1‘2);
pipeitu_A2=appcoef2(pipeitu_cpipeitu_s‘db1‘2);
%subplot(221)imshow(uint8(yuantu_A2));
%subplot(222)imshow(uint8(pipeitu_A2));
[pipei_height1pipei_width1]=size(pipeitu_A1);%获取匹配图象的大小尺寸,其值为[长,宽]将匹配图象的长度值赋给pipei_width将匹配图象的宽度值赋给pipei_lenth
[yuantu_height1yuantu_width1]=size(yuantu_A1);
[pipei_height2pipei_width2]=size(pipeitu_A2);%获取匹配图象的大小尺寸,其值为[长,宽]将匹配图象的长度值赋给pipei_width将匹配图象的宽度值赋给pipei_lenth
[yuantu_height2yuantu_width2]=size(yuantu_A2);
subplot(221)imshow(uint8(yuantu_A2));
hold on;
tic
for i=1:yuantu_height2-pipei_height2
for j=1:yuantu_width2-pipei_width2
temp_picture2=imcrop(yuantu_A2[jipipei_width2-1pipei_height2-1]);
%剪切图像
r=corr2(temp_picture2pipeitu_A2);
if r<0.9
continue;
elseif r>0.9
plot(j:j+pipei_width2i‘r‘);
plot(j:j+pipei_width2i+pipei_height2‘r‘);
plot(ji:i+pipei_height2‘r‘);
plot(j+pipei_width2i:i+pipei_height2‘r‘);
end
end
end
subplot(222)imshow(uint8(yuantu_A1));
hold on;
for p=i:yuantu_height1-pipei_height1
for q=j:yuantu_width1-pipei_width1
temp_picture1=imcrop(yuantu_A1[qppipei_width1-1pipei_height1-1]);
%剪切图像
r=corr2(temp_picture1pipeitu_A1);
if r<0.9
continue;
elseif r>0.9
plot(q:q+pipei_width1p‘r‘);
plot(q:q+pipei_width1p+pipei_height1‘g‘);
plot(qp:p+pipei_height1‘b‘);
plot(q+pipei_width1p:p+pipei_height1‘r‘);
end
end
end
subplot(223)imshow(uint8(yuantu));
hold on;
for u=p:yuantu_height-pipei_height
for v=q:yuantu_width-pipei_width
temp_picture=imcrop(yuantu[vupipei_width-1pipei_height-1]);
%剪切图像
r=corr2(temp_picturepipeitu);
if r<0.9
continue;
elseif r>0.9
plot(v:v+pipei_widthu‘r‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3447 2008-05-21 10:29 beifen_pipei_wavelet.m
文件 122 2008-05-14 18:20 Matlab中文论坛--助努力的人完成毕业设计.url
文件 3434 2008-05-15 08:26 使用帮助:新手必看.htm
----------- --------- ---------- ----- ----
7003 3
- 上一篇:用MATLAB对两幅图片进行图像匹配的实验
- 下一篇:阴影去除资源matlab
相关资源
- 用MATLAB对两幅图片进行图像匹配的实
- 基于matlab的图像匹配源码可直接运行
- SSDA图像匹配算法
- Matlab余弦相似度算法判断图片相似度
- FFT的图像配准
- matlab ransac 此ransac为图像匹配的一个重
- MATLAB实现基于互相关的亚像素级图像
- 图像匹配滤波器Matlab程序 附注释
- sift sift图像匹配的纯matlab代码
- stereo-disparity matlab实现图像匹配的视差
- plot 使用sift+RANSAC完成两幅图像的特征
- LBP-SIFT-image-matching-algorithm-combined
- sift
- 利用matlab编写的简单pso算法进行图像
- ransac算法求得图像匹配点
- 计算方法课程设计数字图像匹配
- 基于matlab的图像匹配
- 归一化交叉相关图像匹配算法NCC
- 归一化交叉相关图像匹配算法NCC
- 图像匹配相应matlab程序设计
- 水波优化算法用于图像匹配matlab源码
- MATLAB对两幅图片进行图像匹配
评论
共有 条评论