zoukankan      html  css  js  c++  java
  • 霍夫变换

    霍夫线变换

    参考:霍夫变换(Hough)

    opencv中的霍夫线变换:在使用霍夫线变换前,首先要对图像进行边缘检测的处理,即霍夫线变换的直接输入只能是边缘二值图像。OpenCV支持三种不同的霍夫线变换:标准霍夫变换SHT、多尺度霍夫变换MSHT和累计概率霍夫变换PPHT。

    vector<Vec2f> lines;//定义一个矢量结构lines用于存放得到的线段矢量集合
    HoughLines(midImage, lines, 1, CV_PI / 180, 150, 0, 0);

    累计概率霍夫变换:

    vector<Vec4i> lines;//定义一个矢量结构lines用于存放得到的线段矢量集合
    HoughLinesP(midImage, lines, 1, CV_PI / 180, 80, 50, 10);
    for (size_t i = 0; i < lines.size(); i++)
    {
        Vec4i l = lines[i];
        line(dstImage, Point(l[0], l[1]), Point(l[2], l[3]), Scalar(186, 88, 255), 1, LINE_AA);
    }

     霍夫圆变换

    OpenCV中霍夫圆变换函数为HoughCircles(),通过霍夫变换检测灰度图像中的圆。不同于霍夫线变换需要输入二值图像,霍夫圆变换输入为灰度图像。

  • 相关阅读:
    购物车案例详解。利用cookie
    设计模式8种
    设计模式介绍
    Promise
    面向对象-拖拽
    本地存储
    闭包和继承
    move.js
    CDM指南之Agent管理
    失业的程序员九创业就是一场戏
  • 原文地址:https://www.cnblogs.com/larry-xia/p/9706793.html
Copyright © 2011-2022 走看看