发明名称 基于正交多项式拟合的快速边缘检测方法
摘要 基于正交多项式拟合的快速边缘检测方法属于亚像素图像边缘检测领域,该二维边缘检测方法在每次对窗口图像数值化处理时都利用空间矩计算边缘的投影方向并结合投影公式将二维边缘检测转化为一维边缘检测,避免了拟合灰度曲面所需复杂运算。运用正交多项式拟合得到计算一维边缘点位置的解析公式,有效克服了拟合法通常不能获得解析解的难题,该解析公式形式简单,含有较少的内积计算,最终结合检测得到的边缘点位置和边缘法线方向,确定窗口图像中边缘直线的位置。该方法大幅提高了运算速度,能够适应实时性要求较高的二维边缘检测过程,还兼备了基于矩的方法或插值法运算速度快以及拟合法对图像噪声不敏感的特性,能大幅提高边缘检测的精度和速度。
申请公布号 CN103136758B 申请公布日期 2015.05.27
申请号 CN201310097073.2 申请日期 2013.03.25
申请人 长春师范大学 发明人 孙秋成;刘健豪;刘仁云;于繁华;李纯净;曹蕾
分类号 G06T7/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 长春菁华专利商标代理事务所 22210 代理人 田春梅
主权项 基于正交多项式拟合的快速边缘检测方法,其特征在于:该方法包括如下步骤:步骤一:图像整像素边缘检测和定位:利用Canny边缘检测算子对图像进行边缘检测,获取图像边缘所在的所有整像素方格的坐标及灰度;步骤二:提取窗口图像:以步骤一得到的含有边缘的整像素方格为中心,提取图像边缘所在区域的一个局部方形灰度矩阵A<sub>m×m</sub>,即窗口图像(2),窗口图像(2)中包含一小段待检测边缘直线(1);步骤三:窗口图像(2)的数值化处理,具体包括以下步骤:步骤3.1:以步骤二所述的窗口图像(2)的中心为原点,建立xoy直角坐标系,其中横轴为x轴,纵轴为y轴;坐标系的单位长度是1个像素;步骤3.2:设窗口图像(2)中每个像素方格中心点在如步骤3.1所述直角坐标系中的坐标为(x,y),则将整像素方格的灰度值作为该点对应的灰度值,并在原平面直角坐标系中加入与该平面直角坐标系垂直的Z轴构成空间立体坐标系,Z轴表示像素点对应的灰度值,由此获得关于灰度值随坐标点变化的离散灰度分布函数I(x,y);步骤3.3:在直角坐标系平面内存在一条通过坐标系原点并垂直于待检测的边缘直线(1)的直线,该直线为边缘的法线,并定义该边缘法线(3)与水平横轴的夹角为θ;步骤四:确定边缘法线(3)的方向,其具体步骤为:步骤4.1:利用空间矩计算公式,计算步骤3.1中提取的方形窗口图像(2)内接圆对应的各阶空间矩M<sub>pq</sub>:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>M</mi><mi>pq</mi></msub><mo>=</mo><munder><mrow><mo>&Integral;</mo><mo>&Integral;</mo></mrow><mrow><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>&le;</mo><mi>r</mi></mrow></munder><msup><mi>x</mi><mi>p</mi></msup><msup><mi>y</mi><mi>q</mi></msup><mi>f</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mi>dxdu</mi><mo>,</mo><mi>p</mi><mo>,</mo><mi>q</mi><mo>=</mo><mn>0,1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>N</mi><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000660574450000011.GIF" wi="1591" he="184" /></maths>式(1)中f(x,y)表示图像像素的连续灰度分布函数,正整数p和q分别表示空间矩的阶数,r表示内接圆的半径;步骤4.2:将步骤4.1所述连续灰度分布函数f(x,y)以步骤3.2所述Z轴为中心旋转如步骤3.3所述的θ角,在窗口图像(2)内会得到新的连续灰度分布函数,此时窗口图像(2)内接圆对应的各阶空间矩的数值发生改变;步骤4.3:旋转后内接圆对应的空间矩M'<sub>pq</sub>与未旋转之前的空间矩M<sub>pq</sub>的关系如下:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>M</mi><mi>pq</mi><mo>&prime;</mo></msubsup><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mi>p</mi></munderover><munderover><mi>&Sigma;</mi><mrow><mi>s</mi><mo>=</mo><mn>0</mn></mrow><mi>q</mi></munderover><mfenced open='(' close=')'><mtable><mtr><mtd><mi>p</mi></mtd></mtr><mtr><mtd><mi>i</mi></mtd></mtr></mtable></mfenced><mfenced open='(' close=')'><mtable><mtr><mtd><mi>q</mi></mtd></mtr><mtr><mtd><mi>s</mi></mtd></mtr></mtable></mfenced><msup><mrow><mo>(</mo><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mrow><mi>q</mi><mo>-</mo><mi>s</mi></mrow></msup><msup><mrow><mo>(</mo><mi>cos</mi><mi>&theta;</mi><mo>)</mo></mrow><mrow><mi>p</mi><mo>-</mo><mi>i</mi><mo>+</mo><mi>s</mi></mrow></msup><msup><mrow><mo>(</mo><mi>sin</mi><mi>&theta;</mi><mo>)</mo></mrow><mrow><mi>q</mi><mo>+</mo><mi>i</mi><mo>+</mo><mi>s</mi></mrow></msup><msub><mi>M</mi><mrow><mi>p</mi><mo>+</mo><mn>1</mn><mo>-</mo><mi>i</mi><mo>-</mo><mi>s</mi><mo>,</mo><mi>i</mi><mo>+</mo><mi>s</mi></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000660574450000021.GIF" wi="1695" he="176" /></maths>i表示从0到p的整数,s表示从0到q的整数,当连续灰度分布函数f(x,y)旋转θ角后,窗口图像(2)中的待检测的边缘直线(1)与步骤3.1所述坐标系横轴x垂直,即旋转后窗口图像(2)内接圆对应的灰度函数关于横轴x对称,根据空间矩计算公式可知,旋转后窗口图像(2)内接圆对应的空间矩M'<sub>01</sub>=0,此时p=0,q=1,利用式(2)求出:M'<sub>01</sub>=‑sinθ·M<sub>10</sub>+cosθ·M<sub>01</sub>=0……(3)其中M<sub>10</sub>和M<sub>01</sub>表示未旋转之前内接圆对应的空间矩;步骤4.4:利用空间矩计算模板代替公式(1),并将窗口图像(2)内接圆中像素点的离散灰度函数I(x,y)代入到上述的空间矩计算模板公式中,以计算式(3)中的空间矩M<sub>01</sub>和M<sub>10</sub>的值;步骤4.5:根据式(3)得到式(4),将步骤4.4得到的空间矩M<sub>01</sub>和M<sub>10</sub>的值代入式(4),求得θ角的值:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>&theta;</mi><mo>=</mo><mi>arctan</mi><mfrac><msub><mi>M</mi><mn>01</mn></msub><msub><mi>M</mi><mn>10</mn></msub></mfrac><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000660574450000022.GIF" wi="633" he="164" /></maths>步骤4.6:设边缘法线(3)为新的水平横轴X,以步骤4.5中的θ角作为投影角,则步骤3.2所述的窗口图像(2)中每个像素方格的中心点在像素平面内的像素坐标(x,y)与边缘法线(3)所在横轴上点坐标X存在如下投影公式:X=xcosθ+ysinθ……(5)式(5)中X值表示窗口图像(2)内的被投影点按投影角θ投影后,对应投影点(4)在步骤4.6所述新的水平横轴X上的坐标读数值;步骤五:基于正交多项式拟合的一维边缘点检测,确定边缘法线(3)与待检测边缘直线(1)的交点位置,其包括如下步骤:步骤5.1:将步骤3.2所述Z轴与步骤4.6所述水平横轴X重新构成一个一维边缘点检测所需的平面直角坐标系XOZ,即投影平面(6);根据投影公式(5)将窗口图像(2)内各个像素方格的中心点投影到步骤4.6所述的水平横轴X上;在平面直角坐标系XOZ中,得到边缘法线(3)上投影点灰度值(5)的离散灰度分布函数(X<sub>i</sub>,Z<sub>i</sub>),i=1,...,2n+1;步骤5.2:投影点坐标的归一化,若如步骤5.1所述横轴X上形成的投影点(4)数目为2n+1个,设<img file="FDA0000660574450000031.GIF" wi="340" he="133" />并令<img file="FDA0000660574450000032.GIF" wi="174" he="130" />i=1,...,2n+1,则有x<sub>i</sub>∈[‑1,1];步骤5.3:计算正交多项式系,利用schemite正交化方法计算在[‑1,1]区间上关于权函数ρ(x)=1的正交多项式系;<img file="FDA0000660574450000033.GIF" wi="2008" he="739" />步骤5.4:取步骤5.3中的前四阶正交基函数<img file="FDA00006605744500000310.GIF" wi="711" he="67" /><img file="FDA00006605744500000311.GIF" wi="100" he="68" />以式(7)作为拟合基底进行三次正交多项式拟合,则拟合多项式的方程为:<img file="FDA0000660574450000034.GIF" wi="1132" he="84" />式(8)中的拟合多项式的系数{a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>,a<sub>4</sub>}为待求的拟合参数;步骤5.5:利用式(8)可推导出拟合多项式的方程对应的法方程组如下:<img file="FDA0000660574450000035.GIF" wi="1568" he="413" />式(9)中<img file="FDA0000660574450000036.GIF" wi="158" he="78" />表示离散向量<img file="FDA0000660574450000037.GIF" wi="743" he="85" />(i=0,1,2,3)与自身的内积,Z=[Z<sub>1</sub>,Z<sub>2</sub>,……,Z<sub>2n+1</sub>]<sup>T</sup>是离散灰度值向量,<img file="FDA0000660574450000038.GIF" wi="149" he="89" />表示Z与<img file="FDA0000660574450000039.GIF" wi="312" he="73" />的内积;步骤5.6:利用方程组式(9)得出拟合多项式的系数{a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>,a<sub>4</sub>}计算公式:<img file="FDA0000660574450000041.GIF" wi="1533" he="171" />将各已知量代入式(10),分别得a<sub>0</sub>、a<sub>1</sub>、a<sub>2</sub>和a<sub>3</sub>的结果;步骤5.7:将步骤5.6所述拟合多项式的结果作为已知量代入式(8),拟合多项式方程变为:<img file="FDA0000660574450000042.GIF" wi="1805" he="181" />步骤5.8:计算三次多项式式(11)的二阶导数为零点,即:<img file="FDA0000660574450000043.GIF" wi="987" he="175" />求解并获得使式(12)的二阶导数为零的点的坐标;步骤5.9:求解式(12)并将计算结果反归一化,获得一维边缘点在横轴X上的位置坐标R,即:<img file="FDA0000660574450000044.GIF" wi="914" he="199" />式(13)即为计算一维边缘点位置的解析公式,该边缘点为边缘法线(3)与待检测边缘直线(1)的交点;步骤六:利用式(13)确定窗口图像(2)内过原点边缘法线(3)与待检测边缘直线(1)的交点位置,利用步骤4.5获得边缘法线(3)的方向角θ,确定待检测的边缘直线(1)在xoy坐标系中的方程,从而实现在窗口图像(2)中待检测的边缘直线(1)的亚像素定位;步骤七:由操作者重新选择步骤一所述整像素方格,并重复步骤二至步骤六,以获取新取得的窗口图像(2)中待检测的边缘直线(1)的亚像素定位;步骤八:当操作者判定已完成对整幅图像上所需边缘位置的亚像素定位时,检测方法结束。
地址 130032 吉林省长春市二道区长吉北路677号