发明名称 一种基于主方向模板的特征匹配方法
摘要 本发明属于图像处理技术领域,特别是涉及一种基于主方向模板的特征匹配方法。本发明包括以下步骤:步骤1:将目标图和样本图都分割为网格,且网格的大小相同,计算每个网格中的像素点的梯度值和梯度方向;步骤2:每个网格使用其最大的梯度方向进行表示,且将梯度方向和是否具有明显的梯度值使用字节进行存储;步骤3:样本图与目标图的网格模板特征按位异或匹配;步骤4:匹配结果为“111”,则两个网格模板特征匹配,并确定样本图中的匹配网格数量。本发明对模板特征进行压缩,且使用单字节进行存储,降低了内存的消耗。
申请公布号 CN105023021A 申请公布日期 2015.11.04
申请号 CN201510398992.2 申请日期 2015.07.09
申请人 厦门理工学院 发明人 洪朝群;陈旭辉;王晓栋;谢勇;唐朝辉
分类号 G06K9/62(2006.01)I 主分类号 G06K9/62(2006.01)I
代理机构 厦门市精诚新创知识产权代理有限公司 35218 代理人 何家富
主权项 一种基于主方向模板的特征匹配方法,其特征在于包括如下步骤:步骤1:将目标图和样本图都分割为网格,且网格的大小相同,目标图被分割为N个网格,用A<sub>i</sub>表示目标图中第i个网格,样本图被分割为M个网格,用B<sub>j</sub>表示样本图中第j个网格;计算目标图和样本图的每个网格中的像素梯度,像素点(k,l)的梯度值公式为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open = '' close = ''><mtable><mtr><mtd><mrow><msub><mi>V</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi></mrow></msub><mo>=</mo></mrow></mtd></mtr><mtr><mtd><msqrt><mrow><msup><mrow><mo>&lsqb;</mo><mrow><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><mn>2</mn><msub><mi>z</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mi>-(</mi><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+2</mi><msub><mi>z</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>+</mi><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo><mo>&rsqb;</mo></mrow><mi>2</mi></msup><mi>+</mi><msup><mrow><mo>&lsqb;</mo><mrow><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+</mi><mn>1</mn><mo>,</mo><mi>l</mi><mi>+</mi><mn>1</mn></mrow></msub><mo>+</mo><mn>2</mn><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi></mrow></msub><mo>+</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mi>-(</mi><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+2</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>-1</mi><mo>,</mo><mi>l</mi></mrow></msub><mi>+</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>-</mi><mn>1</mn><mo>,</mo><mi>l</mi><mi>-</mi><mn>1</mn></mrow></msub><mo>)</mo><mo>&rsqb;</mo></mrow><mi>2</mi></msup></mrow></msqrt></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000755894140000011.GIF" wi="2079" he="203" /></maths>梯度方向公式为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>G</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi></mrow></msub><mo>=</mo><mi>arctan</mi><mfrac><mrow><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+</mi><mn>1</mn><mo>,</mo><mi>l</mi><mi>+</mi><mn>1</mn></mrow></msub><mo>+</mo><mn>2</mn><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi></mrow></msub><mo>+</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo><mo>-</mo><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+2</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>-1</mi><mo>,</mo><mi>l</mi></mrow></msub><mi>+</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>-</mi><mn>1</mn><mo>,</mo><mi>l</mi><mi>-</mi><mn>1</mn></mrow></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><mn>2</mn><msub><mi>z</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>+</mo><msub><mi>z</mi><mrow><mi>k</mi><mi>+1</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo><mo>-</mo><mo>(</mo><msub><mi>z</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+2</mi><msub><mi>z</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mi>+</mi><msub><mi>z</mi><mrow><mi>k</mi><mi>+</mi><mn>1</mn><mo>,</mo><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow></mfrac></mrow>]]></math><img file="FDA0000755894140000012.GIF" wi="1303" he="180" /></maths>其中,z<sub>k,l</sub>为像素坐标点(k,l)位置的灰度值;步骤2:比较每个网格中所有的像素点的梯度值,获取最大的梯度值对应的梯度方向,将像素梯度方向量化到7个组上,梯度量化公式为:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>Q</mi><mo>=</mo><mi>int</mi><mi>e</mi><mi>g</mi><mi>e</mi><mi>r</mi><mrow><mo>(</mo><mfrac><msub><mi>G</mi><mrow><mi>k</mi><mo>,</mo><mi>l</mi></mrow></msub><mrow><mn>2</mn><mi>&pi;</mi><mo>/</mo><mn>7</mn></mrow></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000755894140000013.GIF" wi="427" he="168" /></maths>其中,integer()表示对括号里的值取整,引入一个组用于表示该网格是否有明显的梯度值,网格的模板特征包括最大梯度方向和是否具有明显梯度值,用3个比特的二进制数值表示为X,目标图网格的模板特征A<sub>i</sub>=X,而样本图网格的模板特征B<sub>j</sub>=~X,将计算结果按位取反作为样本图网格的梯度特征;步骤3:样本图与目标图的模板特征匹配,即样本图中所有网格与目标图中的部分网格进行模板特征匹配,匹配结果公式为A<sub>i</sub>⊕B<sub>j</sub>;步骤4:匹配结果为“111”,则两个网格模板特征匹配,并确定样本图中的匹配网格数量,当网格匹配数为样本图的网格总数M时,则确定样本图在目标图中的位置。
地址 361000 福建省厦门市集美区后溪镇理工路600号