zoukankan      html  css  js  c++  java
  • Hough变换

    看《计算机图像原理》,始终搞不明

    Technorati 标签: Hough变换

    白,Hough变换是怎么进行的。

    后来看了

    http://www1.qcxy.hb.cn/dxx/blog/u/zhangtao/archives/2008/520.html  和 http://slash-directx.blogspot.com/2009/04/huff-transformation.html

    之后,终于明白Hough变换方式。

    直线方程

    y = ax + k 

    在已经知道点xi,yi的情况下,需要求解的是a和k的值,在n个点下,可以列出n个

    yi=axi+k

    xi和yi是已知点。

    如果xi与yi之间有直线关系,那么就有m个点计算出来的a和k是一个值(直线上有m个离散点)。这个m就是Hough进行统计的值。

    由于水平线y=ax+k是没有办法表示出来,用极坐标可以表示平面上任意直线,上面方程就可以转换为

    p = xcos(theta) + ysin(theta)

    上面的描述就可以修改为下面的方式:xi,yi之间有直线关系,那么就有m个点计算出来的theta和p是一个值。

    由于theta值是在0~2pi之间,于是,又可以在角度0~2pi之间规划离散点,使得每隔1°就计算p的值,这样就可以通过每一度上p的个数,来得到具体直线的个数

    大致的伪代码如下:

    max-distance = sqrt( x-last*x-last + y-last*y-last )

    p-theta-face = new int[max-distance][360]

    for yi in y:

          for xi in x:

              for theta in xrange(0,360):

                   p = xi*cos(theta) + yi*sin(theta)

                   p-theta-face[p][theta] += 1

    算法复杂度为O3

  • 相关阅读:
    深入理解javascript的this关键字
    很简单的JQuery网页换肤
    有关垂直居中
    层的半透明实现方案
    常用meta整理
    web前端页面性能优化小结
    关于rem布局以及sprit雪碧图的移动端自适应
    mysql入过的坑
    日期格式化函数
    基于iframe父子页面传值的方法。
  • 原文地址:https://www.cnblogs.com/ubunoon/p/1821885.html
Copyright © 2011-2022 走看看