法律状态公告日
法律状态信息
法律状态
2013-06-19
专利实施许可合同备案的生效 IPC(主分类):G06T7/00 合同备案号:2013330000106 让与人:浙江工商大学 受让人:浙江省公安厅居民身份证制作中心 发明名称:一种基于灰度统计特征的灰度模板匹配方法 申请公布日:20091223 授权公告日:20120627 许可种类:独占许可 备案日期:20130426 申请日:20090727
专利实施许可合同备案的生效、变更及注销
2012-06-27
授权
授权
2010-02-17
实质审查的生效
实质审查的生效
2009-12-23
公开
公开
技术领域
本发明属于图像检索技术领域,特别是涉及一种基于灰度统计特征的灰度模板匹配的方法。
背景技术
根据已知的灰度模式T(模板图像),在另一幅灰度图像I中搜索相似子图G的过程称为灰度模板匹配。灰度模板匹配可以运用于灰度图像模板检索应用中。灰度模板图像检索不同于传统的基于内容的灰度图像检索,前者是根据模板T对灰度图像数据库中所有的图像I进行模板匹配,模板T和图像I的尺寸大小可以不一致,而后者要求检索图像和数据库中图像I的尺寸大小一致。由此可见,灰度模板图像检索具有更加广泛的使用用途,由于快速灰度模板匹配方法可以提高灰度模板图像检索的检索速度。此外,灰度信息是彩色图像的一个重要信息,灰度模板图像匹配也可以用于彩色模板图像匹配应用,因此快速灰度模板匹配方法也具有非常好的使用前景。
发明内容
本发明的目的在于提供一种使用灰度统计特征的灰度模板匹配方法。
本发明方法的具体步骤是:
步骤(1).设定灰度模板T的宽度为N1、高度为N2,待匹配图像I的宽度为M1、高度为M2,M1=k1·N1+α(k1=1,2,3…,0≤α<N1),M2=k2·N2+β(k2=1,2,3…,0≤β<N2);如果α>0,则将待匹配图像I的横向的边沿进行复制延伸,使得α=N1,则延伸后的待匹配图像I的宽度为M′1=(k1+1)·N1,复制延伸的图像在横向为一个像素;如果β>0,则将待匹配图像I的纵向的边沿进行复制延伸,使得β=N2,则延伸后的待匹配图像I的高度为M′2=(k2+1)·N2,复制延伸的图像在纵向为一个像素;
步骤(2).将待匹配图像I以灰度模板T为单元进行分块:对于复制延伸过的待匹配图像I,分为(M′1/N1)×(M′2/N2)块;对于未进行复制延伸的待匹配图像I,分为(M1/N1)×(M2/N2)块;按照先从左到右、再从上到下的顺序将各块图像进行编号为像素块Ci,i=1,2,3…;
步骤(3).按照像素块Ci编号的顺序,将图像I的像素块Ci与灰度模板T进行比对,具体的比对方法是:
(a).对灰度模板T的模板当前像素点P1从灰度模板T的左上角开始,按照先从左到右、再从上到下顺序在模板T中以一个像素单位进行移动,模板当前像素点P1与灰度模板T左上角的像素点为对角线构成像素子块矩阵TZ,该像素子块矩阵TZ的宽度为NW,高度为NH;模板当前像素点P1在模板T中移动过程中,得到N1×N2个不同的像素子块矩阵TZ,计算每个像素子块矩阵TZ的灰度统计特征,所述的灰度统计特征包括灰度统计直方图、灰度级位置方差和灰度图像pq阶几何矩;
图像像素矩阵的灰度统计直方图是灰度级函数,表示图像矩阵中具有每种灰度级的象素的个数。灰度图像矩阵像素的灰度值为[0,255]之间的整数值,将灰度图像的灰度级平均分为16个灰度等级,第一灰度等级范围是[0,15],第二个灰度等级是[16,31],...,最后一个是[240,255]。对灰度图像的所有像素,统计每个灰度级范围的像素的个数,统计的像素个数就是灰度统计直方图在此灰度级的值。用公式(1)表示:
I(j)=I(j,n) (1)
其中,j表示第j灰度级,I(j)表示灰度统计直方图在第j灰度级的值,I(j,n)表示灰度图像中所有灰度值在第j灰度级范围内的像素的个数。
以图像矩阵的左下角为原点,灰度级位置方差如公式(2)表示:
>>
其中σjx表示灰度图像中的所有灰度值在第j灰度级范围内的像素的x坐标值的灰度级位置方差;σjy表示灰度图像中所有灰度值在第j灰度级范围的像素的y坐标值的灰度级位置方差;Nj表示灰度图像中所有灰度值在第j灰度级范围的像素的个数;xj表示灰度图像中所有灰度值在第j灰度级范围内的像素横坐标值;xj表示灰度图像中所有灰度值在第j灰度级范围内的象素的横坐标平均值;yj表示灰度图像中所有灰度值在第j灰度级范围内的像素的纵坐标值;yj表示灰度图像中所有灰度值在第j灰度级范围内的象素的纵坐标平均值;E(·)是期望值。
灰度图像pq阶几何矩如公式(3)表示:
>
Mpq表示图像的pq阶矩,f(x,y)表示灰度图像在(x,y)位置处的像素灰度值。∑表示灰度图像的所有像素。x表示灰度图像像素的横坐标值,y表示灰度图像像素的纵坐标值。
(b).把像素子块矩阵TZ划分为四个区域:
像素子块矩阵TZ的右下角的一个像素点为区域D;
区域D所在的行去除区域D的一个像素点后的所有像素点的集合为区域B;
区域D所在的列去除区域D的一个像素点后的所有像素点的集合为区域C;
像素子块矩阵TZ去除区域B、C、D后的所有像素点的集合为区域A;
区域A是当前像素点P1在灰度模板T移动过程中的一个像素子块矩阵;区域A和区域B合并构成的区域A+B是当前像素点P1在灰度模板T中移动过程中的一个像素子块矩阵;区域A和区域C合并构成的区域A+C是当前像素点P1在灰度模板T中移动过程中的一个像素子块矩阵。区域A,区域D,区域A+B,区域A+C,区域A+B+C+D的灰度统计直方图的关系有:
I(A+B+C+D)(j)=I(A+B)(j)+I(A+C)(j)-IA(j)+ID(j) (4)
其中,I(A+B+C+D)(j)表示A+B+C+D区域的灰度统计直方图的第j灰度级的值,I(A+B)(j)表示A+B区域的灰度统计直方图的第j灰度级的值,I(A+C)(j)表示A+C区域的灰度统计直方图的第j灰度级的值,I(A)(j)表示A区域的灰度统计直方图的第j灰度级的值,I(D)(j)表示D区域的灰度统计直方图的第j灰度级的值。
区域A,区域D,区域A+B,区域A+C,区域A+B+C+D的像素横坐标值关系有:
>
>
>>
σ(A+B+C+D)jx2=E(A+B+C+D)(x(j)2)-x(j)2
其中,x(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域A、区域D、区域A+B、区域A+C、区域A+B+C+D的像素的纵坐标值关系有:
>
>
>>
σ(A+B+C+D)jy2=E(A+B+C+D)(y(j)2)-y(j)2
其中y(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域A、区域D、区域A+B、区域A+C、区域A+B+C+D像素矩阵的几何矩的关系有:
>
>
其中fj(x,y)表示在(x,y)坐标处并且灰度图像中所有灰度值在第j灰度级范围内的像素的灰度值。
从上述公式可以看到,区域A+B+C+D的灰度统计直方图,灰度级位置方差,pq阶几何矩可以使用区域A,区域D,区域(A+B),区域(A+C)的灰度统计直方图,灰度级位置方差,pq阶几何矩分别进行计算。
(c).Ci的当前像素点P′1从划分块Ci的右下角开始,按照先从右到左、再从下到上的顺序在Ci中以一个像素单位进行移动,以Ci的当前像素点P′1与划分块Ci的右下角的像素点为对角线构成像素子块矩阵T′Z,T′Z的宽度为N′W、高度为N′H;Ci的当前像素点P1′在划分块Ci的移动过程中,得到N1×N2个不同的像素子块矩阵T′Z;按照步骤(a)的方法定义每个像素子块矩阵T′Z的灰度统计直方图,灰度级位置方差,pq阶几何矩;
(d).把像素子块矩阵T′Z划分为四个区域:
像素子块矩阵T′Z的左上角的一个像素点为区域H;
区域H所在的行去除区域H的一个像素点后的所有像素点的集合为区域J;
区域H所在的列去除区域H的一个像素点后的所有像素点的集合为区域F;
像素子块矩阵T′Z去除区域F、J、H后的所有像素点的集合为区域E;
区域E是Ci的当前像素点P′1在划分块Ci移动过程中的一个像素子块矩阵;区域E和区域F合并构成的区域E+F是当前像素点P′1在划分块Ci中的移动过程中的一个像素子块矩阵;区域E和区域J合并构成的区域E+J是当前像素点P′1在划分块Ci中的移动过程中的一个像素子块矩阵;区域E、区域H、区域E+F、区域E+J、区域E+F+J+H的灰度统计直方图的关系有:
I(E+F+J+H)(j)=I(E+F)(j)+I(E+J)(j)-IE(j)+IH(j) (4)
其中,I(E+F+J+H)(j)表示E+F+J+H区域的灰度统计直方图的第j灰度级的值,I(E+F)(j)表示E+F+J+H区域的灰度统计直方图的第j灰度级的值,I(E+J)(j)表示E+J区域的灰度统计直方图的第j灰度级的值,I(H)(j)表示H区域的灰度统计直方图的第j灰度级的值,I(E)(j)表示E区域的灰度统计直方图的第j灰度级的值。
区域E、区域E+F、区域E+J、区域H、区域E+F+J+H的像素横坐标值关系有:
>
>
>>
σ(E+F+J+H)jx2=E(E+F+J+H)(x(j)2)-x(j)2
其中x(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域E、区域H、区域E+F、区域E+J、区域E+F+J+H的像素的纵坐标值关系有:
>
>
>>
σ(E+F+J+H)jy2=E(E+F+J+H)(y(j)2)-y(j)2
其中y(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域E、区域H、区域E+F、区域E+J、区域E+F+J+H像素矩阵的几何矩的关系有:
>
>
其中fj(x,y)表示在(x,y)坐标处并且灰度图像中所有灰度值在第j灰度级范围内的像素的灰度值。
从上述公式可以看到,区域E+F+J+H的灰度统计直方图,灰度级位置方差,pq阶几何矩可以使用区域E,区域H,区域E+F,区域E+J的灰度统计直方图,灰度级位置方差,pq阶几何矩分别进行计算。
(e).将当前像素点P1从灰度模板T的左上角以先从左到右、再从上到下的顺序的每一次移动所得到的TZ与当前像素点P′1从划分块Ci的右下角开始以先从右到左、再从下到上的顺序在Ci中的每一次移动所得到的T′Z相对应;采用欧拉距离计算公式计算TZ和T′Z的灰度统计直方图的距离DI,采用欧拉距离计算公式计算每个灰度级的灰度级位置方差的距离,并计算所有灰度级位置方差距离的总和Dσ。采用欧拉距离计算公式计算灰度图像的pq阶几何矩的距离DM。将DI,Dσ,DM求和得到TZ和T′Z的距离D;对T和划分块Ci的所有对应的TZ和T′Z的距离D进行排序,获得D最小的TZ和T′Z,距离D最小的T′Z的左上角的当前像素点P′1为移动像素点Si;
(f).计算图像I的每个划分块Ci的Si,移动像素点Si的个数与图像I的划分块的个数是相等;对每一个Si,将Si作为左上角,在图像I中取大小和灰度模板T一致的像素块Ki,按照步骤(a)的定义计算Ki的灰度统计直方图,灰度级位置方差,pq阶几何矩。
对于Ki和模板T,采用欧拉距离计算公式计算Ki和T的灰度统计直方图的距离D′I,采用欧拉距离计算公式计算每个灰度级的灰度级位置方差的距离,并计算所有灰度级位置方差距离的总和D′σ。采用欧拉距离计算公式计算灰度图像的pq阶几何矩的距离D′M。将D′I,D′σ,D′M求和得到Ki和T的距离D′;对所有Ki和模板T的距离D′,选择D′最小的Ki记为Kmin,这个Kmin为与模板T匹配的图像子图。
本发明方法在模板T与图像I的模式匹配过程中,通过计算模板T与匹配子图潜在的重叠区域来对模板T在图像I中进行快速的移动,从而可以大大的提高模板匹配的速度。此外,本发明方法采用的灰度统计直方图、灰度级位置方差、pq阶几何矩能较好的体现灰度图像的纹理特征,因此该方法还具有较好的匹配准确性。
具体实施方式
一种基于灰度统计特征的灰度模板匹配方法,该方法的具体步骤是:
步骤(1).设定灰度模板T的宽度为N1、高度为N2,待匹配图像I的宽度为M1、高度为M2,M1=k1·N1+α(k1=1,2,3…,0≤α<N1),M2=k2·N2+β(k2=1,2,3…,0≤β<N2);如果α>0,则将待匹配图像I的横向的边沿进行复制延伸,使得α=N1,则延伸后的待匹配图像I的宽度为M′1=(k1+1)·N1,复制延伸的图像在横向为一个像素;如果β>0,则将待匹配图像I的纵向的边沿进行复制延伸,使得β=N2,则延伸后的待匹配图像I的高度为M′2=(k2+1)·N2,复制延伸的图像在纵向为一个像素;
步骤(2).将待匹配图像I以灰度模板T为单元进行分块:对于复制延伸过的待匹配图像I,分为(M′1/N1)×(M′2/N2)块;对于未进行复制延伸的待匹配图像I,分为(M1/N1)×(M2/N2)块;按照先从左到右、再从上到下的顺序将各块图像进行编号为像素块Ci,i=1,2,3…;
步骤(3).按照像素块Ci编号的顺序,将图像I的像素块Ci与灰度模板T进行比对,具体的比对方法是:
(a).对灰度模板T的模板当前像素点P1从灰度模板T的左上角开始,按照先从左到右、再从上到下顺序在模板T中以一个像素单位进行移动,模板当前像素点P1与灰度模板T左上角的像素点为对角线构成像素子块矩阵TZ,该像素子块矩阵TZ的宽度为NW,高度为NH;模板当前像素点P1在模板T中移动过程中,得到N1×N2个不同的像素子块矩阵TZ,计算每个像素子块矩阵TZ的灰度统计特征,所述的灰度统计特征包括灰度统计直方图、灰度级位置方差和灰度图像pq阶几何矩;
图像像素矩阵的灰度统计直方图是灰度级函数,表示图像矩阵中具有每种灰度级的象素的个数。灰度图像矩阵像素的灰度值为[0,255]之间的整数值,将灰度图像的灰度级平均分为16个灰度等级,第一灰度等级范围是[0,15],第二个灰度等级是[16,31],...,最后一个是[240,255]。对灰度图像的所有像素,统计每个灰度级范围的像素的个数,统计的像素个数就是灰度统计直方图在此灰度级的值。用公式(1)表示:
I(j)=I(j,n) (1)
其中,j表示第j灰度级,I(j)表示灰度统计直方图在第j灰度级的值,I(j,n)表示灰度图像中所有灰度值在第j灰度级范围内的像素的个数。
以图像矩阵的左下角为原点,灰度级位置方差如公式(2)表示:
>>
其中σjx表示灰度图像中的所有灰度值在第j灰度级范围内的像素的x坐标值的灰度级位置方差;σjy表示灰度图像中所有灰度值在第j灰度级范围的像素的y坐标值的灰度级位置方差;Nj表示灰度图像中所有灰度值在第j灰度级范围的像素的个数;xj表示灰度图像中所有灰度值在第j灰度级范围内的像素横坐标值;xj表示灰度图像中所有灰度值在第j灰度级范围内的象素的横坐标平均值;yj表示灰度图像中所有灰度值在第j灰度级范围内的像素的纵坐标值;yj表示灰度图像中所有灰度值在第j灰度级范围内的象素的纵坐标平均值;E(·)是期望值。
灰度图像pq阶几何矩如公式(3)表示:
>
Mpq表示图像的pq阶矩,f(x,y)表示灰度图像在(x,y)位置处的像素灰度值。∑表示灰度图像的所有像素。x表示灰度图像像素的横坐标值,y表示灰度图像像素的纵坐标值。
(b).把像素子块矩阵TZ划分为四个区域:
像素子块矩阵TZ的右下角的一个像素点为区域D;
区域D所在的行去除区域D的一个像素点后的所有像素点的集合为区域B;
区域D所在的列去除区域D的一个像素点后的所有像素点的集合为区域C;
像素子块矩阵TZ去除区域B、C、D后的所有像素点的集合为区域A;
区域A是当前像素点P1在灰度模板T移动过程中的一个像素子块矩阵;区域A和区域B合并构成的区域A+B是当前像素点P1在灰度模板T中移动过程中的一个像素子块矩阵;区域A和区域C合并构成的区域A+C是当前像素点P1在灰度模板T中移动过程中的一个像素子块矩阵。区域A,区域D,区域A+B,区域A+C,区域A+B+C+D的灰度统计直方图的关系有:
I(A+B+C+D)(j)=I(A+B)(j)+I(A+C)(j)-IA(j)+ID(j) (4)
其中,I(A+B+C+D)(j)表示A+B+C+D区域的灰度统计直方图的第j灰度级的值,I(A+B)(j)表示A+B区域的灰度统计直方图的第j灰度级的值,I(A+C)(j)表示A+C区域的灰度统计直方图的第j灰度级的值,I(A)(j)表示A区域的灰度统计直方图的第j灰度级的值,I(D)(j)表示D区域的灰度统计直方图的第j灰度级的值。
区域A,区域D,区域A+B,区域A+C,区域A+B+C+D的像素横坐标值关系有:
>
>
>>
σ(A+B+C+D)jx2=E(A+B+C+D)(x(j)2)-x(j)2
其中,x(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域A、区域D、区域A+B、区域A+C、区域A+B+C+D的像素的纵坐标值关系有:
>
>
>>
σ(A+B+C+D)jy2=E(A+B+C+D)(y(j)2)-y(j)2
其中y(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域A、区域D、区域A+B、区域A+C、区域A+B+C+D像素矩阵的几何矩的关系有:
>
>
其中fj(x,y)表示在(x,y)坐标处并且灰度图像中所有灰度值在第j灰度级范围内的像素的灰度值。
从上述公式可以看到,区域A+B+C+D的灰度统计直方图,灰度级位置方差,pq阶几何矩可以使用区域A,区域D,区域(A+B),区域(A+C)的灰度统计直方图,灰度级位置方差,pq阶几何矩分别进行计算。
(c).Ci的当前像素点P′1从划分块Ci的右下角开始,按照先从右到左、再从下到上的顺序在Ci中以一个像素单位进行移动,以Ci的当前像素点P′1与划分块Ci的右下角的像素点为对角线构成像素子块矩阵T′Z,T′Z的宽度为N′W、高度为N′H;Ci的当前像素点P′1在划分块Ci的移动过程中,得到N1×N2个不同的像素子块矩阵T′Z;按照步骤(a)的方法定义每个像素子块矩阵T′Z的灰度统计直方图,灰度级位置方差,pq阶几何矩;
(d).把像素子块矩阵T′Z划分为四个区域:
像素子块矩阵T′Z的左上角的一个像素点为区域H;
区域H所在的行去除区域H的一个像素点后的所有像素点的集合为区域J;
区域H所在的列去除区域H的一个像素点后的所有像素点的集合为区域F;
像素子块矩阵T′Z去除区域F、J、H后的所有像素点的集合为区域E;
区域E是Ci的当前像素点P′1在划分块Ci移动过程中的一个像素子块矩阵;区域E和区域F合并构成的区域E+F是当前像素点P′1在划分块Ci中的移动过程中的一个像素子块矩阵;区域E和区域J合并构成的区域E+J是当前像素点P′1在划分块Ci中的移动过程中的一个像素子块矩阵;区域E、区域H、区域E+F、区域E+J、区域E+F+J+H的灰度统计直方图的关系有:
I(E+F+J+H)(j)=I(E+F)(j)+I(E+J)(j)-IE(j)+IH(j) (4)
其中,I(E+F+J+H)(j)表示E+F+J+H区域的灰度统计直方图的第j灰度级的值,I(E+F)(j)表示E+F+J+H区域的灰度统计直方图的第j灰度级的值,I(E+J)(j)表示E+J区域的灰度统计直方图的第j灰度级的值,I(H)(j)表示H区域的灰度统计直方图的第j灰度级的值,I(E)(j)表示E区域的灰度统计直方图的第j灰度级的值。
区域E、区域E+F、区域E+J、区域H、区域E+F+J+H的像素横坐标值关系有:
>
>
>>
σ(E+F+J+H)jx2=E(E+F+J+H)(x(j)2)-x(j)2
其中x(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域E、区域H、区域E+F、区域E+J、区域E+F+J+H的像素的纵坐标值关系有:
>
>
>
σ(E+F+J+H)jy2=E(E+F+J+H)(y(j)2)-y(j)2
其中y(j)表示灰度图像的像素中灰度值在第j灰度级范围内的一个像素的横坐标值;
区域E、区域H、区域E+F、区域E+J、区域E+F+J+H像素矩阵的几何矩的关系有:
>
>
其中fj(x,y)表示在(x,y)坐标处并且灰度图像中所有灰度值在第j灰度级范围内的像素的灰度值。
从上述公式可以看到,区域E+F+J+H的灰度统计直方图,灰度级位置方差,pq阶几何矩可以使用区域E,区域H,区域E+F,区域E+J的灰度统计直方图,灰度级位置方差,pq阶几何矩分别进行计算。
(e).将当前像素点P1从灰度模板T的左上角以先从左到右、再从上到下的顺序的每一次移动所得到的TZ与当前像素点P′1从划分块Ci的右下角开始以先从右到左、再从下到上的顺序在Ci中的每一次移动所得到的T′Z相对应;采用欧拉距离计算公式计算TZ和T′Z的灰度统计直方图的距离DI,采用欧拉距离计算公式计算每个灰度级的灰度级位置方差的距离,并计算所有灰度级位置方差距离的总和Dσ。采用欧拉距离计算公式计算灰度图像的pq阶几何矩的距离DM。将DI,Dσ,DM求和得到TZ和T′Z的距离D;对T和划分块Ci的所有对应的TZ和T′Z的距离D进行排序,获得D最小的TZ和T′Z,距离D最小的T′Z的左上角的当前像素点P′1为移动像素点Si;
(f).计算图像I的每个划分块Ci的Si,移动像素点Si的个数与图像I的划分块的个数是相等;对每一个Si,将Si作为左上角,在图像I中取大小和灰度模板T一致的像素块Ki,按照步骤(a)的定义计算Ki的灰度统计直方图,灰度级位置方差,pq阶几何矩。
对于Ki和模板T,采用欧拉距离计算公式计算Ki和T的灰度统计直方图的距离D′I,采用欧拉距离计算公式计算每个灰度级的灰度级位置方差的距离,并计算所有灰度级位置方差距离的总和D′σ。采用欧拉距离计算公式计算灰度图像的pq阶几何矩的距离D′M。将D′I,D′σ,D′M求和得到Ki和T的距离D′;对所有Ki和模板T的距离D′,选择D′最小的Ki记为Kmin,这个Kmin为与模板T匹配的图像子图。
机译: 灰度共享数据生成设备,灰度共享数据恢复设备,灰度数据处理设备,灰度共享数据生成方法,灰度共享数据恢复方法,灰度数据处理方法和计算机可读记录介质
机译: 制造灰度面膜的方法,制造母亲灰度面膜的方法,用镜片和母亲灰度面膜制造母亲灰度面膜的方法
机译: 多音调字符的显示方法,包括便携式多灰度级字符显示程序的多灰度级字符显示装置,包括多灰度级字符的显示装置的电视接收机以及多灰度级字符设备的显示