目录
[5.1 圆投影变换原理](#5.1 圆投影变换原理)
[5.2 伪Zernike矩原理](#5.2 伪Zernike矩原理)
[5.3 亚像素精定位](#5.3 亚像素精定位)
1.前言
在机器视觉、目标识别与精密测量领域,图像匹配是核心技术之一。传统像素级匹配算法受限于采样分辨率,难以满足高精度定位需求。亚像素匹配技术通过对像素间信息进行插值估计,可将定位精度提升至像素以下量级,广泛应用于工业检测、卫星遥感、医学影像等场景。基于圆投影(Circular Projection)与伪Zernike矩(Pseudo-Zernike Moments)的亚像素匹配算法,结合了圆投影的旋转不变性与伪Zernike矩的多尺度描述能力,在抗噪性、旋转鲁棒性和定位精度方面表现优异。
2.算法测试效果图预览


3.算法运行软件版本
matlab2024B
4.部分核心程序
%相关变量
Img_2 = rgb2gray(imread('cameraman.jpg'));
Number = 12; %%%%%%% //圆投影匹配时,将数字圆等分的份数
n = 7; %%%%%%% //伪Zernike矩的阶数
delta = 5; %%%%%%% //进行伪Zernike矩匹配时,将圆投影匹配到的点以正方形扩展的长度,单位,像素
mask0 = rgb2gray(imread('cameraman.jpg'));
mask = mask0(128-76:128+76,128-76:128+76);
tic;
[row_2, col_2,row_2sub, col_2sub] = RPT_PZM_new(Img_2,mask,n,Number,delta);
toc;
figure;
imshow(Img_2);
rectangle('Position',[col_2,row_2,size(mask,2),size(mask,1)],'Curvature',[1,1], 'EdgeColor','y');
hold on;
plot(col_2+(size(mask,2)-1)/2,row_2+(size(mask,2)-1)/2,'r*');
hold on;
plot(col_2sub+(size(mask,2)-1)/2,row_2sub+(size(mask,2)-1)/2,'g.');
title(['参考像素坐标点:(',num2str(row_2),',',num2str(col_2),');','实际坐标点:(',num2str(row_2sub),',',num2str(col_2sub),')',]);
[row_2, col_2]
fprintf('%3.2f %3.2f\n\n',[row_2sub, col_2sub]);
X1=[row_2sub, col_2sub];
Img_2 = (imread('Shifted image.jpg'));
tic;
[row_2, col_2,row_2sub, col_2sub] = RPT_PZM_new(Img_2,mask,n,Number,delta);
toc;
disp('-----------------------------------------------------------------------------')
figure;
imshow(Img_2);
title('Rotation');
rectangle('Position',[col_2,row_2,size(mask,2),size(mask,1)],'Curvature',[1,1], 'EdgeColor','y');
hold on;
plot(col_2+(size(mask,2)-1)/2,row_2+(size(mask,2)-1)/2,'r*');
hold on;
plot(col_2sub+(size(mask,2)-1)/2,row_2sub+(size(mask,2)-1)/2,'g.');
[row_2, col_2]
fprintf('%3.2f %3.2f\n\n',[row_2sub, col_2sub]);
X2=[row_2sub, col_2sub];
title(['位移后参考像素坐标点:(',num2str(row_2),',',num2str(col_2),');','实际坐标点:(',num2str(row_2sub),',',num2str(col_2sub),')',]);
5.算法理论概述
该算法的核心思想是:首先利用圆投影将二维图像信息压缩为一维投影序列,消除旋转带来的影响;然后通过伪Zernike矩对投影特征进行正交分解,提取具有旋转、缩放和平移不变性的高阶矩特征;最后通过特征向量的相似性度量实现粗匹配,再结合相位相关或曲面拟合技术实现亚像素级精确定位。
圆投影变换将图像从笛卡尔坐标系映射到极坐标系下的积分投影,使旋转目标转化为投影序列的相位偏移,从而将二维旋转匹配问题简化为一维信号的相位匹配问题。伪Zernike矩则作为正交矩的一种,能够用有限阶数完整描述图像形状信息,且具有低冗余、抗噪声的优良特性。二者结合可在保证匹配精度的同时显著降低计算复杂度。
5.1 圆投影变换原理


由此可见,圆投影结果与旋转角度无关,具有严格的旋转不变性。这一特性使得算法无需预先校正图像方向即可进行匹配,大幅提升了工程实用性。
5.2 伪Zernike矩原理

与传统Zernike矩相比,伪Zernike矩的径向多项式含有更多项,在相同阶数下能提取更丰富的特征信息,且数值稳定性更好。


通过选取多阶矩的幅值构造特征向量,可获得对旋转、平移和缩放均具有鲁棒性的图像描述子。
5.3 亚像素精定位
在粗匹配位置的邻域内,利用曲面拟合法实现亚像素级定位。以粗匹配点(x0,y0)为中心,取其3×3邻域内的相关系数值,构造二次曲面:

该算法具有多方面的技术优势。首先,圆投影变换从本质上消除了旋转因素的影响,使算法对任意角度旋转的目标均能稳定匹配,无需额外的旋转校正步骤。其次,伪Zernike矩的正交性保证了各阶特征之间相互独立,信息冗余度低,能够用较少的特征维数完整描述图像形状。再次,两步匹配策略(像素级粗匹配+亚像素精定位)在保证精度的同时兼顾了计算效率,适合实时性要求较高的应用场景。最后,伪Zernike矩对噪声和轻微形变具有较强的鲁棒性,在低信噪比环境下仍能保持较高的匹配准确率。
6.算法完整程序工程
OOOOO
OOO
O
关注GZH后输入回复:0056