OpenCV使用霍夫变换检测图像中的形状

简介: 霍夫变换是一种被广泛使用的利用数学等式的参数形式在图像中检测形状的技术。 例如直线、椭圆、圆等形状。

霍夫变换是一种被广泛使用的利用数学等式的参数形式在图像中检测形状的技术。
例如直线、椭圆、圆等形状。

霍夫变换可以检测任何能以参数形式表示的形状,随着形状的复杂(维数的增加,例如球体),计算的消耗也会增加。
我们通常考虑简单的霍夫形状,例如直线和圆。

霍夫直线

效果图

效果图

原图

步骤

  1. 将图像置灰
  2. 调用Imgproc.HoughLinesP(cannyEdges, lines, 1, Math.PI / 180, 50, 20, 20) 方法获取直线的数据

    • 第一个参数:图像输入
    • 第二个参数:图像输出
    • 第三个参数:图像指定像素中r的解析度
    • 第四个参数:图像指定像素中θ的解析度
    • 第五个参数:直线上点数的阈值
    • 第六个参数:直线上点数的最小值
  3. 在图像上绘制直线

封装

OpenCV使用霍夫变换检测图像中的形状

使用

OpenCV使用霍夫变换检测图像中的形状

霍夫圆

效果图

效果图

原图

步骤

霍夫圆与霍夫直线类似,只是等式改变了,调用

Imgproc.HoughCircles(cannyEdges, circles, Imgproc.CV_HOUGH_GRADIENT, 1, cannyEdges.rows() / 15);

获取圆的数据

封装

OpenCV使用霍夫变换检测图像中的形状

使用

OpenCV使用霍夫变换检测图像中的形状

相关文章
|
5天前
|
计算机视觉 Python
轻松掌握opencv的8种图像变换
轻松掌握opencv的8种图像变换
|
6天前
|
算法 计算机视觉
【OpenCV】- 图像修复
【OpenCV】- 图像修复
|
6天前
|
Serverless 计算机视觉
【OpenCV】-图像的矩
【OpenCV】-图像的矩
|
7天前
|
编解码 物联网 计算机视觉
【OpenCV】—图像金子塔与图片尺寸缩放
【OpenCV】—图像金子塔与图片尺寸缩放
|
7天前
|
前端开发 计算机视觉 C++
【OpenCV】—分离颜色通道、多通道图像混合
【OpenCV】—分离颜色通道、多通道图像混合
|
7天前
|
API 计算机视觉
【OpenCV】—图像对比度、亮度值调整
【OpenCV】—图像对比度、亮度值调整
|
7天前
|
计算机视觉 索引
【OpenCV】—ROI区域图像叠加&图像混合
【OpenCV】—ROI区域图像叠加&图像混合
|
7天前
|
存储 算法 C语言
OpenCV—访问图像中的像素
OpenCV—访问图像中的像素
|
25天前
|
编解码 计算机视觉 Python
opencv 图像金字塔(python)
opencv 图像金字塔(python)
|
25天前
|
边缘计算 算法 计算机视觉
opencv 图像梯度(python)
opencv 图像梯度(python)