zoukankan      html  css  js  c++  java
  • [OPENCV]cvHoughLines2使用说明

    1.cvHoughLines2函数定义:

    CvSeq *cvHoughLines2
    {
        CvArr *image,
        void *line_storage,
        int method,
        double rho,
        double theta,
        int threshold,
        double param1 = 0,
        double param2 = 0
    };

    image: 输入图像,必须是8位的,但输入信息可以被看成是二值的(即所有非0像素被认为是相等的)。

    line_storage: 指向保存结果位置的指针,既可以是内存块cvMemoryStorage,也可以是N*1的矩阵数列(行数N将有助于限制直线的最大数量)。

    method: 可以是CV_HOUGH_STANDARD, CV_HOUGH_PROBABILISTIC, CV_HOUGH_MULTI_SCALE, 分别对应SHT, PPHT, SHT。

    rho: 霍夫变换r长度的单位,一般设置为1。

    theta: 霍夫变换θ弧度的单位,一般设置为CV_PI/180。

    threshold: 认定为一条直线时在累计平面中必须达到的值。这个变量实际上表示支持所返回的直线的(在边缘图像的)点的数量。

    param1: 对于PPHT, param1设置为将要返回的线段的最小长度。

    param2: 对于PPHT, param2设置为一条直线上分离线段不能连成一条直线的分隔像素点数。

    函数返回值: 返回找到的线段序列

    可以使用下面的类似命令从序列中得到每一条直线或者线段:

    float *line = (float *)cvGetSeqElem(lines,i);
    float rho = line[0];
    float theta = line[1];
  • 相关阅读:
    codeforce1028A Find Square
    2018ccpc网络赛 Buy and Resell
    差分约束
    Lost Cows
    动态查询区间第k大
    疫情控制
    天天爱跑步
    次小生成树
    树上差分闇の連锁
    Stars in Your Window
  • 原文地址:https://www.cnblogs.com/DLarTisan/p/7121491.html
Copyright © 2011-2022 走看看