主权项 |
一种浮点型三角形特征描述方法,其特征在于以下步骤:第一步:构建六维形状描述子;假设一个三角形按逆时针顺序排列的三个顶点为v<sub>1</sub>、v<sub>2</sub>、v<sub>3</sub>,计算三角形的三个边长l<sub>1</sub>,l<sub>2</sub>,l<sub>3</sub>:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open = "{" close = ""><mtable><mtr><mtd><msub><mi>l</mi><mn>1</mn></msub><mo>=</mo><mi>d</mi><mi>i</mi><mi>s</mi><mo>(</mo><msub><mi>v</mi><mn>1</mn></msub><mo>,</mo><msub><mi>v</mi><mn>2</mn></msub><mo>)</mo></mtd></mtr><mtr><mtd><msub><mi>l</mi><mn>2</mn></msub><mo>=</mo><mi>d</mi><mi>i</mi><mi>s</mi><mo>(</mo><msub><mi>v</mi><mn>2</mn></msub><mo>,</mo><msub><mi>v</mi><mn>3</mn></msub><mo>)</mo></mtd></mtr><mtr><mtd><msub><mi>l</mi><mn>3</mn></msub><mo>=</mo><mi>d</mi><mi>i</mi><mi>s</mi><mo>(</mo><msub><mi>v</mi><mn>3</mn></msub><mo>,</mo><msub><mi>v</mi><mn>1</mn></msub><mo>)</mo></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000791926220000011.GIF" wi="367" he="270" /></maths>式中dis表示两点间的距离;以三角形最长边为起点,按逆时针顺序对三边进行排列,记新得到的三个边长为l′<sub>1</sub>、l′<sub>2</sub>、l′<sub>3</sub>,l=l′<sub>1</sub>+l′<sub>2</sub>+l′<sub>3</sub>;设与三条边l′<sub>1</sub>、l′<sub>2</sub>、l′<sub>3</sub>相对的三个内角分别为θ<sub>1</sub>、θ<sub>2</sub>、θ<sub>3</sub>,应用余弦公式计算三个内角如下:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>θ</mi><mn>1</mn></msub><mo>=</mo><mi>a</mi><mi>r</mi><mi>c</mi><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mrow><msup><msub><mi>l</mi><mn>2</mn></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>+</mo><msup><msub><mi>l</mi><mn>3</mn></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>-</mo><msup><msub><mi>l</mi><mn>1</mn></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup></mrow><mrow><mn>2</mn><msup><msub><mi>l</mi><mn>2</mn></msub><mo>′</mo></msup><msup><msub><mi>l</mi><mi>3</mi></msub><mo>′</mo></msup></mrow></mfrac></mrow>]]></math><img file="FDA0000791926220000012.GIF" wi="577" he="171" /></maths><maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>θ</mi><mi>2</mi></msub><mo>=</mo><mi>a</mi><mi>r</mi><mi>c</mi><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mrow><msup><msub><mi>l</mi><mi>1</mi></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>+</mo><msup><msub><mi>l</mi><mn>3</mn></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>-</mo><msup><msub><mi>l</mi><mi>2</mi></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup></mrow><mrow><mn>2</mn><msup><msub><mi>l</mi><mi>1</mi></msub><mo>′</mo></msup><msup><msub><mi>l</mi><mi>3</mi></msub><mo>′</mo></msup></mrow></mfrac></mrow>]]></math><img file="FDA0000791926220000013.GIF" wi="583" he="171" /></maths><maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>θ</mi><mi>3</mi></msub><mo>=</mo><mi>a</mi><mi>r</mi><mi>c</mi><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mrow><msup><msub><mi>l</mi><mi>1</mi></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>+</mo><msup><msub><mi>l</mi><mi>2</mi></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup><mo>-</mo><msup><msub><mi>l</mi><mi>3</mi></msub><mrow><mo>′</mo><mn>2</mn></mrow></msup></mrow><mrow><mn>2</mn><msup><msub><mi>l</mi><mi>1</mi></msub><mo>′</mo></msup><msup><msub><mi>l</mi><mi>2</mi></msub><mo>′</mo></msup></mrow></mfrac></mrow>]]></math><img file="FDA0000791926220000014.GIF" wi="582" he="173" /></maths>则三角形的六维形状描述子获取如下:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mi>s</mi><mi>h</mi><mi>a</mi><mi>p</mi><mi>e</mi><mi>D</mi><mi>e</mi><mi>s</mi><mi>c</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mn>1</mn><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mi>2</mi><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mi>3</mi><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mi>2</mi></msub></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mi>3</mi></msub></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000791926220000015.GIF" wi="1175" he="163" /></maths>式中α、β是加权系数,α和β的选择依据是保证形状描述子和区域描述子具有相同的权重;第二步:构建32维区域描述子;首先,确定三角形局部区域的中心点、描述半径和描述子主方向;中心点选为三角形的质心;设三个顶点的坐标为v<sub>1</sub>(x<sub>1</sub>,y<sub>1</sub>)、v<sub>2</sub>(x<sub>2</sub>,y<sub>2</sub>)、v<sub>3</sub>(x<sub>3</sub>,y<sub>3</sub>),则质心坐标为[(x<sub>1</sub>+x<sub>2</sub>+x<sub>3</sub>)/3,(y<sub>1</sub>+y<sub>2</sub>+y<sub>3</sub>)/3];描述半径选为γl′<sub>1</sub>,γ为比例因子,l′<sub>1</sub>为三角形的最长边;描述子的主方向选为按逆时针顺序的三角形最长边方向;其次,构建三角形区域描述子;以三角形质心为中心、以γl′<sub>1</sub>为半径确定正方形区域,正方形的一条对称轴与主方向平行;将该区域等分为四个子区域,分别计算各子区域中每个像素的梯度方向,记录每个像素的梯度值;对于每个子区域中所有像素的梯度值,根据其方向相对于主方向的偏转角进行累积统计;每个子区域有八个方向,四个子区域排列起来共计32维;最后,对32维特征向量进行归一化处理,得到以下区域描述子:blockDesc=[b<sub>1</sub>,b<sub>2</sub>,...,b<sub>32</sub>]第三步:将三角形的六维形状描述子和32维区域描述子拼接起来,构成38维的三角形特征描述子:<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>t</mi><mi>r</mi><mi>i</mi><mi>D</mi><mi>e</mi><mi>s</mi><mi>c</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mn>1</mn><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mi>2</mi><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><mi>α</mi><mfrac><msubsup><mi>l</mi><mi>3</mi><mo>′</mo></msubsup><mi>l</mi></mfrac></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mn>2</mn></msub></mrow></mtd><mtd><mrow><msub><mi>βθ</mi><mn>3</mn></msub></mrow></mtd><mtd><msub><mi>b</mi><mn>1</mn></msub></mtd><mtd><msub><mi>b</mi><mn>2</mn></msub></mtd><mtd><mo>...</mo></mtd><mtd><msub><mi>b</mi><mn>32</mn></msub></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000791926220000021.GIF" wi="1537" he="158" /></maths>提取匹配三角形质心以及顶点的对应关系,使用RANSAC算法对这些对应关系进行验证,得到最终的特征点匹配关系。 |