zoukankan      html  css  js  c++  java
  • 三种基于矩的亚像素级边缘定位方法

     1、什么是边缘模型

     

    图1.1

            连续二维边缘模型如图1.1所示,其中h1为背景灰度值,h2为目标灰度值,l为实际边缘点到原点的归一化距离,θ为边缘法线方向与x轴的夹角,q[-$pi $/2,$pi $/2]。

     

    2、空间矩法(spatial-gray moment,SGM)

            二阶连续函数fm(x,y)的p+q阶空间矩定义为

    ${M_{pq}} = int!!!int {x^p}{y^q}{f_m}left( {x,y} ight)dxdy$

            数字化图像的p+q阶空间矩定义为

    ${M_{pq}} = sum sum {x^p}{y^q}{f_m}left( {x,y} ight)$

            边缘模型参数计算公式:

    [left{ egin{array}{l}
    heta = arctan left( {{M_{01}}/{M_{10}}} ight)\
    l = left( {4{{M'}_{20}} - {{M'}_{00}}} ight)/left( {3{{M'}_{10}}} ight)\
    k = left( {3{{M'}_{10}}} ight)/left[ {2sqrt {{{left( {1 - {l^2}} ight)}^3}} } ight]\
    h = left[ {2{{M'}_{00}} - kleft( {pi - 2arcsin l - 2lsqrt {1 - {l^2}} } ight)} ight]/2pi
    end{array} ight.]

            式中,k为目标灰度和背景灰度的对比度,数值为h1与h2之差,各阶空间矩的数值由各自的矩模板与图像灰度值卷积得到。

     

    3、Zernike正交矩法(Zernike orthogonal moment,ZOM)

            二阶连续函数fm(x,y)的p+q阶的ZOM定义为

    ${Z_{pq}} = frac{{p + 1}}{pi }int!!!int fleft( {x,y} ight){V_{pq}}left( { ho , heta } ight)dxdy$

            边缘模型参数计算公式:

    [left{ egin{array}{l}
    heta = arctan left( {frac{{{ m{Im}}left( {{Z_{11}}} ight)}}{{{ m{Re}}left( {{Z_{11}}} ight)}}} ight)\
    l = {Z_{20}}/{{Z'}_{11}}\
    k = left( {3{{Z'}_{11}}} ight)/left[ {2sqrt {{{left( {1 - {l^2}} ight)}^3}} } ight]\
    h = left[ {{{Z'}_{00}} - kleft( {pi /2 - arcsin l - lsqrt {1 - {l^2}} } ight)} ight]/pi
    end{array} ight.]

    4、正交傅里叶-马林矩法(orthogonal Fourier-Mellin moment,OFMM)

            二阶连续函数fm(x,y)的p+q阶的OFMM定义为

    ${emptyset _{pq}} = frac{{p + 1}}{pi }mathop sum limits_{s = 0}^p {alpha _{ps}}mathop int!!!int limits_{ - infty }^{ + infty } fleft( {x,y} ight){left( {x + jy} ight)^{frac{{s - p}}{2}}}{(x - jy)^{frac{{s + p}}{2}}}dxdy$

            边缘模型参数计算公式:

    [left{ egin{array}{l}
    heta = arctan left[ { - frac{{{ m{Im}}left( {2({phi _{01}} + {phi _{11}})} ight)}}{{{ m{Re}}left( {2({phi _{01}} + {phi _{11}})} ight)}}} ight]\
    l = frac{3}{5}left( {frac{{4{phi _{10}} + {phi _{20}}}}{{2{{phi '}_{01}} + {{phi '}_{11}}}}} ight)\
    k = left( {2{{phi '}_{01}} + {{phi '}_{11}}} ight)/left[ {2sqrt {{{left( {1 - {l^2}} ight)}^3}} } ight]\
    h = left[ {{{phi '}_{00}} - kleft( {arcsin sqrt {1 - {l^2}} - lsqrt {1 - {l^2}} } ight)} ight]/pi
    end{array} ight.]

            由于OFMM和ZOM法所求的q和l相同,而最终亚像素级边缘定位结果仅仅与q和l有关,因此,OFMM和ZOM法的亚像素级边缘定位结果完全一致,另外三种方法获得的边缘角度q相同。

     

     

     

    【 结束 】

     

  • 相关阅读:
    理解C#中的 async await
    kube-proxy IPVS 模式的工作原理
    Kilo 使用教程
    Wireguard 全互联模式(full mesh)配置指南
    我为什么不鼓吹 WireGuard
    iTerm2 实现 ssh 自动登录,并使用 Zmodem 实现快速传输文件
    在 Docker Desktop 中启用 K8s 服务
    ABP 适用性改造
    ABP 适用性改造
    在 ASP.NET Core 应用中使用 Cookie 进行身份认证
  • 原文地址:https://www.cnblogs.com/fujj/p/9733897.html
Copyright © 2011-2022 走看看