python霍夫变换检测直线_Python OpenCV 霍夫(Hough Transform)直线变换检测应用

Python OpenCV 365 天学习计划,与橡皮擦一起进入图像领域吧。本篇博客是这个系列的第 34 篇。

基础知识铺垫

上篇博客 咱们一起学习了霍夫直线检测的原理,本篇就从应用层对其进行学习啦。

学习了原理之后,在查看函数原型,发现确实简单了许多。

霍夫直线变换函数原型

在 OpenCV 中提供了两个霍夫直线检测的函数,一个是标准霍夫变换,另一个是概率霍夫变换。

先学习一下标准霍夫变换吧,该变化方式也叫做多尺度霍夫变换。

该方法使用的函数是 cv2.HoughLines,函数原型如下

lines = cv2.HoughLines(image, rho, theta, threshold[, lines[, srn[, stn[, min_theta[, max_theta]]]]])

参数说明:

image:输入 8 位灰度图像;

rho:生成极坐标时像素扫描步长;

theta:生成极坐标时候的角度步长;

threshold:阈值;

lines:返回值,极坐标表示的直线;

sen:是否应用多尺度的霍夫变换,如果不是设置 0 表示经典霍夫变换;

stn:是否应用多尺度的霍夫变换,如果不是设置 0 表示经典霍夫变换;

min_theta:角度扫描范围最小值;

max_theta:角度扫描范围最大值。

该函数的返回值就是上篇博客提及的 ( θ,ρ )&#x

你可能感兴趣的:(python霍夫变换检测直线)