资源简介
利用SSDA算法实现模板匹配,该算法可快速有效地完成图像匹配。
代码片段和文件信息
function [ybeginxbegint2R]=SSDA(S T)
%-------------------------------------------------------------------------%
%该函数用来查找原始图像S中的子区块T的位置,位置值取匹配区域的左上角坐标。
%函数使用互相关法实现。为了减小搜索区域,先将原图像和子图像抽取至较小范围,获取
%相应位置后,再在原图像相应点附近详细搜索。
%返回值xbegin、ybegin是相应的坐标值;t2是计算出来的匹配时间;R是累加次数矩阵。
%-------------------------------------------------------------------------%
%时间计算开始
t0=cputime;
hbar = waitbar(0‘Image matching‘);
tic;
%若原图为彩色,转换为灰度图像(我用的是R2011b版本,isrgb函数不能使用)
if size(S3)==3
S=rgb2gray(S);
end
%若模板为彩色,转换为灰度图像
if size(T3)==3
T=rgb2gray(T);
end
%两矩阵数值由整形转换为双精度型,便于后面的计算需要
S=double(S);
T=double(T);
%利用size函数得到两矩阵的大小
[THeight TWidth] = size(T);
[imgH imgW] = size(S);
%求取模板图片的灰度平均值TAverage
T1=0;
for I=1:THeight
for J=1:TWidth
T1=T1+T(IJ);
end;
end;
TAverage=T1/(THeight*TWidth);
%阈值Tk和累计次数矩阵R(Tk可调整大小,R初始设置为0)
R=zeros(imgH-THeight+1imgW-TWidth+1);Tk=1;
% 从左上角开始运算
for i=1:(imgH-THeight+1)
for j=1:(imgW-TWidth+1)
% 求子图片的平均值SijAverage
Sij=S(i:(i+THeight-1)j:(j+TWidth-1));
SijAverage=0;
for m=1:THeight
for n=1:TWidth
SijAverage=(SijAverage+Sij(mn));
end;
end;
SijAverage=SijAverage/(THeight*TWidth);
% 随机选点,求误差e和累积误差Sum
Sum=0;
while ((Sum X=round(rand*(THeight-1)+1);
Y=round(rand*(TWidth-1)+1);
e=abs(Sij(XY)-SijAverage-(T(XY)-TAverage));
Sum=Sum+e;
R(ij)=R(ij)+1;
end;
end;
end;
%找出累计次数最大的点以及显示目标点的坐标,并且保存
Max=max(max(R)) ;
[rowcol]=find(R==Max);
ybegin = col;
xbegin = row;
%计算结束,求取总的计算时间
t2=toc;
close(hbar);
t1=cputime-t0
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 340746 2012-09-17 17:28 基于图像灰度的SSDA匹配算法.pdf
文件 294083 2012-09-18 09:14 SSDA图像匹配算法的研究及实现.pdf
文件 3942 2012-06-04 21:00 Mark0.bmp
文件 2094 2012-09-19 11:14 SSDA.m
文件 543 2012-09-19 11:14 test.m
文件 954910 2006-12-24 17:32 MAIN0.bmp
相关资源
- 基于Matlab的最大熵模糊图像复原算法
- KITTI雷达点云与图像数据融合matlab源码
- matlab 解码 NMEA0183格式GGA数据
- 一个有关飞机的模板匹配的跟踪的m
- 基于MATLAB的电弧模型仿真
- PRI信号分选
- Matlab论文:基于Matlab的二进制数字调
- 802.11协议吞吐量随节点数性能仿真
- matlab图片rgb转yuv,存.yuv文件 播放器
- Duda模式分类Pattern Classification MATLAB 代
- dijkstra算法的matlab实现31274
- 随机路径生成函数matlab
- matlab语音信号处理工具箱
- matlab2013激活文件
- matlab实现游程编码
- 暗通道先验+引导滤波MATLAB代码
- 边缘检测中的canny算法及其matlab实现
- 通过达曼光栅生成点阵的matlab程序.
- MATLAB核函数算法
- 求控制系统的性能指标MptrtsFAI,matl
- matlab 求DTFT
- 逆变器重复控制算法MATLAB仿真
- MATLAB R2014b 许可协议文件
- matlab读取comtrade格式的程序
- 基于Matlab的RC一阶电路仿真
- Las点云数据读取代码
- 雷达回波加天线方向图模拟程序
- MATLAB 2017b 安装文件及其破解文件百度
- Matlab实现音频降噪
- matlab实现导航卫星系统中计算多普勒
评论
共有 条评论