全仿射不变surf特征点检测方法及装置制造方法

文档序号:6546948阅读:323来源:国知局
全仿射不变surf特征点检测方法及装置制造方法
【专利摘要】本发明公开了全仿射不变SURF特征点检测方法及装置,方法包括如下步骤:CPU将原始图像的原始像素值依次线性地存储到存储器的第一存储空间内;仿射变换模块根据Flash存储器存储的原始像素坐标与目标像素坐标的坐标对应关系,查找与原始像素坐标对应的目标像素坐标,将原始像素值存储到目标像素坐标对应的第二存储空间内;FPGA的插值模块对存储于第二存储空间内的仿射变换后图像进行处理得到最终像素值;CPU将原始图像进行积分运算后得到积分图像:CPU将积分图像的积分像素值依次线性地存储到存储器的第四存储空间内;FPGA的滤波模块利用盒式滤波器对积分图像进行滤波处理;FPGA的Hession矩阵计算模块根据滤波结果计算Hession矩阵。
【专利说明】全仿射不变SURF特征点检测方法及装置
【【技术领域】】
[0001]本发明涉及图像处理领域,具体涉及全仿射不变SURF特征点检测方法及装置。【【背景技术】】
[0002]特征点匹配方法是通过检测图像中具有不变性的特征点,来描述图像的内在特征。由于特征点的描述算子包含有较强的旋转尺度及视角光照不变特征。特别适用于图像的匹配工作。因此特征点匹配方法广泛应用在物体识别,物体追踪,图像拼接等邻域。目前应用较为广泛的SIFT算法,该算法对视角、噪声等保持一定的稳定性。经过国内外学者实际应用也证明SIFT算法比其他特征描述子更加优良。后来针对SIFT的一些缺点发展出了 PCA-SIFT,SURF, GLOH等算法,但是这些算法对特征点的检测都不是完全仿射不变的。Jean-Michel Morel等人于2009年提出了 ASIFT算法。该算法使用仿射相机模型(Affinecamera model)对输入图像以特定的参数进行仿射变换来模拟摄像机光轴变化引起的扭曲变形。实验证明ASIFT有更好的仿射不变性,但与SIFT算法相比其计算量进一步增加。
[0003]受SIFT算法的启发,Herbert Bay等人提出的SURF算法有更好的检测效果,并计算量进一步减少。但是相比较ASIFT算法,该算法不是全仿射不变的,因此在图像视角有较大变化时匹配成功的特征点数量急剧减少。受到ASIFT算法的启发,很多研究者在不同的刊物上提出全仿射不变的SURF算法,该算法先使用相机仿射模型对图像进行处理,得到的仿射变换的图像由SURF算法来处理,使SURF算法达到全仿射不变的特性。极大的增强了SURF的鲁棒性。但是这种方法比单纯的SURF算法增加了几倍的运算量。远远不能满足嵌入式领域对实行性的要求。 【
【发明内容】

[0004]为了克服现有技术的不足,本发明提供了一种全仿射不变SURF特征点检测方法及装置,以提高对全仿射不变SURF特征点检测的速度。
[0005]一种全仿射不变SURF特征点检测方法,包括如下步骤:
[0006]CPU将原始图像的原始像素值依次线性地存储到存储器的第一存储空间内;
[0007]FPGA的仿射变换模块根据原始图像的原始像素值所在的存储器的存储地址,计算出原始像素值的原始像素坐标;
[0008]所述仿射变换模块根据Flash存储器存储的原始像素坐标与目标像素坐标的坐标对应关系,查找与所述原始像素坐标对应的目标像素坐标,将所述原始像素坐标的原始像素值存储到目标像素坐标对应的第二存储空间内;
[0009]FPGA的插值模块对存储于第二存储空间内的仿射变换后图像进行如下处理:
[0010]I1 (X,y) = I (X,y) (1-dx) +I (x+1, y) dx
[0011 ] I2 (x, y) = I (χ, y+1) (1-dx) +I (x+1, y+1) dx ;
[0012]I3 (χ, y) = I1 (x,y) (l-dy) +I2 (x, y) dy
[0013]其中,I (x, y)表示仿射变换后图像的目标像素坐标(X,y)的目标像素值,dx表示已知的X坐标的小数部分,dy表示已知的y坐标的小数部分,I1 (x, y),I2 (x, y)表示运算中间结果,I3(x,y)为最终像素值;
[0014]所述插值模块将最终像素值存储到第三存储空间内;
[0015]所述FPGA向所述CPU发送仿射变换完成的信号;
[0016]CPU将原始图像进行积分运算后得到积分图像:
[0017]
【权利要求】
1.一种全仿射不变SURF特征点检测方法,其特征是,包括如下步骤: CPU将原始图像的原始像素值依次线性地存储到存储器的第一存储空间内; FPGA的仿射变换模块根据原始图像的原始像素值所在的存储器的存储地址,计算出原始像素值的原始像素坐标; 所述仿射变换模块根据Flash存储器存储的原始像素坐标与目标像素坐标的坐标对应关系,查找与所述原始像素坐标对应的目标像素坐标,将所述原始像素坐标的原始像素值存储到目标像素坐标对应的第二存储空间内; FPGA的插值模块对存储于第二存储空间内的仿射变换后图像进行如下处理:
11(X,y) = I (X,y) (1-dx) +I (x+1, y) dx
12(x, y) = I (x, y+1) (1-dx) +I (x+1, y+1) dx ;
13(X,y) = I1 (X,y) (l-dy) +I2 (x, y) dy 其中,I (x, y)表示仿射变换后图像的目标像素坐标(X,y)的目标像素值,dx表示已知的X坐标的小数部分,dy表示已知的y坐标的小数部分,I1 (x, y),I2 (x, y)表示运算中间结果,I3(x,y)为最终像素值; 所述插值模块将最终像素值存储到第三存储空间内; 所述FPGA向所述CPU发送仿射变换完成的信号; CPU将原始图像进行积分运算后得到积分图像:

?'<x' /Σ(χ',_)/) = Z艺/(/,./)其中,l(i, j)表示原始像素坐标(i,j)处的原始像素值,

i=0 j=0ΙΣ (χ’,y’)表示原始像素坐标(X’,?)处的积分像素值; CPU将积分图像的积分像素值依次线性地存储到存储器的第四存储空间内; FPGA的滤波模块利用盒式滤波器对所述积分图像进行滤波处理: 盒式滤波子计算步骤:λ Σ = λ也+?1)-?。-?1)),其中^、8、(:和0表示盒式滤波器中权值为λ的矩形区域,ΡΑ、ΡΒ、Ρ。和Pd分别表示以像素坐标(x,y)为邻域的与矩形区域对应的左上角、右上角、左下角和右下角位置的积分像素值; 将盒式滤波器的多个不同权值的矩形区域分别进行所述盒式滤波子计算步骤处理,将得到的多个结果进行相加即得到盒式滤波结果; 滤波模块对所述积分图像分别进行X方向、Y方向和XY方向进行盒式滤波分别得到X盒式滤波结果Dxx,Y盒式滤波结果Dxy和XY盒式滤波结果Dyy ; FPGA的Hession矩阵计算模块进行如下计算: H = DxxDyy — CODly ;其中,H为包含了全仿射不变SURF特征点的Hession矩阵,ω为修正参数; FPGA将所述Hession矩阵存储到所述存储器的第五存储空间内; FPGA向所述CPU发送Hession矩阵计算完毕的信号。
2.如权利要求1所述的全仿射不变SURF特征点检测方法,其特征是,当所述最终像素值存储到所述第三存储空间内后,所述FPGA向所述CPU发送中断信号,所述CPU根据所述中断信号从所述第三存储空间取出对应的最终像素值。
3.如权利要求1所述的全仿射不变SURF特征点检测方法,其特征是,当所述Hession矩阵存储到所述存储器的第五存储空间内后,所述FPGA向所述CPU发送中断信号,所述CPU根据所述中断信号从所述第五存储空间内取出所述Hession矩阵。
4.如权利要求1所述的全仿射不变SURF特征点检测方法,其特征是,修正参数ω为.0.8。
5.如权利要求1所述的全仿射不变SURF特征点检测方法,其特征是,积分图像中被滤波的像素坐标(χ, y)满足:
S≤X ≤ W-S
s ≤ y≤ h-s ; 其中W,h分别表示原始图像的宽和高,S表示盒式滤波器的尺寸。
6.一种全仿射不变SURF特征点检测装置,其特征是,包括CPU、FPGA和双口 RAM,所述(PU通过第一数据线、第一地址线和第一控制线与所述双口 RAM连接,所述FPGA通过第二数据线、第二地址线和第二控制线与所述双口 RAM连接,所述FPGA包括仿射变换模块、插值模块、滤波模块和Hession矩阵计算模块;CPU用于,将原始图像的原始像素值依次线性地存储到存储器的第一存储空间内;FPGA的仿射变换模块用于,根据原始图像的原始像素值所在的存储器的存储地址,计算出原始像素值的原始像素坐标;根据所述Flash存储器存储的原始像素坐标与目标像素坐标的坐标对应关系,查找与所述原始像素坐标对应的目标像素坐标,将所述原始像素坐标的原始像素值存储到目标像素坐标对应的第二存储空间内; FPGA的插值模块用于,对存储于第二存储空间内的仿射变换后图像进行如下处理:
11(x, y) = I (x, y) (1-dx) +I (x+1, y) dx
12(χ, y) = I (χ, y+1) (1-dx) +I (x+1, y+1) dx ;
13(X,y) = I1 (X,y) (l-dy) +I2 (x, y) dy 其中,I (χ, y)表示仿射变换后图像的目标像素坐标(χ,y)的目标像素值,dx表示已知的χ坐标的小数部分,dy表示已知的y坐标的小数部分,I1 (x, y),I2 (x, y)表示运算中间结果,I3(x,y)为最终像素值; 所述插值模块还用于,将最终像素值存储到第三存储空间内; 所述FPGA还用于,向所述CPU发送仿射变换完成的信号; CPU还用于,将原始图像进行积分运算后得到积分图像: 7?(χ) = ΣΣ7^./')其中,I (i,j)表示原始像素坐标(i,j)处的原始像素值,

/=0 J=OΙΣ (χ’,y’)表示原始像素坐标(χ’,?)处的积分像素值; CPU还用于,将积分图像的积分像素值依次线性地存储到存储器的第四存储空间内; FPGA的滤波模块用于,利用盒式滤波器对所述积分图像进行滤波处理: 盒式滤波子计算步骤:λ Σ = λ也+?1)-?。-?1)),其中^、8、(:和0表示盒式滤波器中权值为λ的矩形区域,ΡΑ、ΡΒ、Ρ。和Pd分别表示以像素坐标(x,y)为邻域的与矩形区域对应的左上角、右上角、左下角和右下角位置的积分像素值; 将盒式滤波器的多个不同权值的矩形区域分别进行所述盒式滤波子计算步骤处理,将得到的多个结果进行相加即得到盒式滤波结果;滤波模块对所述积分图像分别进行X方向、Y方向和XY方向进行盒式滤波分别得到X盒式滤波结果Dxx,Y盒式滤波结果Dxy和XY盒式滤波结果Dyy ; FPGA的Hession矩阵计算模块进行如下计算: H = DxxDyy - 0)Drv;其中,H为包含了全仿射不变SURF特征点的Hession矩阵,ω为修正参数; FPGA将所述Hession矩阵存储到所述存储器的第五存储空间内; FPGA向所述CPU发送Hession矩阵计算完毕的信号。
7.如权利要求6所述的全仿射不变SURF特征点检测装置,其特征是,当所述最终像素值存储到所述第三存储空间内后,所述FPGA向所述CPU发送中断信号,所述CPU根据所述中断信号从所述第三存储空间取出对应的最终像素值。
8.如权利要求6所述的全仿射不变SURF特征点检测装置,其特征是,当所述Hession矩阵存储到所述存储器的第五存储空间内后,所述FPGA向所述CPU发送中断信号,所述CPU根据所述中断信号从所述第五存储空间内取出所述Hession矩阵。
9.如权利要求6所述的全仿射不变SURF特征点检测装置,其特征是,修正参数ω为0.8。
10.如权利要求6所述的全仿射不变SURF特征点检测装置,其特征是,积分图像中被滤波的像素坐标(χ, y)满足:
S ≤ X ≤ W-S
s ≤y≤ h-s ; 其中W,h分别表示原始图像的宽和高,S表示盒式滤波器的尺寸。
【文档编号】G06T7/00GK104021549SQ201410212300
【公开日】2014年9月3日 申请日期:2014年5月19日 优先权日:2014年5月19日
【发明者】王好谦, 张新, 邵航, 戴琼海 申请人:清华大学深圳研究生院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1