python opencv检测直线 cv2.HoughLinesP的实现


Posted in Python onJune 18, 2021

cv2.HoughLines()函数是在二值图像中查找直线,cv2.HoughLinesP()函数可以查找直线段。

cv2.HoughLinesP()函数原型:

HoughLinesP(image, rho, theta, threshold, lines=None, minLineLength=None, maxLineGap=None)
  • image: 必须是二值图像,推荐使用canny边缘检测的结果图像; 
  • rho: 线段以像素为单位的距离精度,double类型的,推荐用1.0 
  • theta: 线段以弧度为单位的角度精度,推荐用numpy.pi/180 
  • threshod: 累加平面的阈值参数,int类型,超过设定阈值才被检测出线段,值越大,基本上意味着检出的线段越长,检出的线段个数越少。根据情况推荐先用100试试
  • lines:这个参数的意义未知,发现不同的lines对结果没影响,但是不要忽略了它的存在 
  • minLineLength:线段以像素为单位的最小长度,根据应用场景设置 
  • maxLineGap:同一方向上两条线段判定为一条线段的最大允许间隔(断裂),超过了设定值,则把两条线段当成一条线段,值越大,允许线段上的断裂越大,越有可能检出潜在的直线段

HoughLinesP()调用例子:

# coding=utf-8
import cv2
import numpy as np
 
img = cv2.imread('02.jpg')
 
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
 
gaus = cv2.GaussianBlur(gray,(3,3),0)
 
edges = cv2.Canny(gaus, 50, 150, apertureSize=3)
 
minLineLength = 100
maxLineGap = 10
lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 100, minLineLength, maxLineGap)
 
for x1, y1, x2, y2 in lines[0]:
    cv2.line(img, (x1, y1), (x2, y2), (0, 255, 0), 2)
 
cv2.imshow("houghline",img)
cv2.waitKey()
cv2.destroyAllWindows()

到此这篇关于python opencv检测直线 cv2.HoughLinesP的实现的文章就介绍到这了,更多相关opencv检测直线cv2.HoughLinesP内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用python 获取进程pid号的方法
Mar 10 Python
python中的全局变量用法分析
Jun 09 Python
Python的string模块中的Template类字符串模板用法
Jun 27 Python
Sanic框架Cookies操作示例
Jul 17 Python
Python中GIL的使用详解
Oct 03 Python
numpy中的ndarray方法和属性详解
May 27 Python
Python3直接爬取图片URL并保存示例
Dec 18 Python
python使用gdal对shp读取,新建和更新的实例
Mar 10 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
Python grpc超时机制代码示例
Sep 14 Python
django中ImageField的使用详解
Dec 21 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
Jan 10 Python
教你用Python+selenium搭建自动化测试环境
Jun 18 #Python
详解Python函数print用法
Jun 18 #Python
总结Python使用过程中的bug
简单介绍Python的第三方库yaml
Jun 18 #Python
教你如何使用Python实现二叉树结构及三种遍历
Python实现智慧校园自动评教全新版
python用海龟绘图写贪吃蛇游戏
You might like
PHP中将数组转成XML格式的实现代码
2011/08/08 PHP
php中CI操作多个数据库的代码
2012/07/05 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
yii实现创建验证码实例解析
2014/07/31 PHP
php中的登陆login实例代码
2016/06/20 PHP
PHP简单实现DES加密解密的方法
2016/07/12 PHP
使用laravel和ECharts实现折线图效果的例子
2019/10/09 PHP
JavaScript Object的extend是一个常用的功能
2009/12/02 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
Jquery节点遍历next与nextAll方法使用示例
2014/07/22 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
js实现精确到秒的倒计时效果
2016/05/29 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
基于Datatables跳转到指定页的简单实例
2017/11/09 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
mpvue开发音频类小程序踩坑和建议详解
2019/03/12 Javascript
JavaScript 继承 封装 多态实现及原理详解
2019/07/29 Javascript
JS中的算法与数据结构之栈(Stack)实例详解
2019/08/20 Javascript
python实现机器人行走效果
2018/01/29 Python
详解python3中tkinter知识点
2018/06/21 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
Python内置加密模块用法解析
2019/11/25 Python
Python for循环通过序列索引迭代过程解析
2020/02/07 Python
HTML5 Canvas玩转酷炫大波浪进度图效果实例(附demo)
2016/12/14 HTML / CSS
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
北京鼎普科技股份有限公司软件测试面试题
2012/04/07 面试题
中英文自我评价语句
2013/12/20 职场文书
自我鉴定写作要点
2014/01/17 职场文书
《守株待兔》教学反思
2014/03/01 职场文书
工作建议书范文
2014/05/13 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
2015新年联欢晚会开场白
2014/12/14 职场文书
2014年度工作总结报告
2014/12/15 职场文书
2015年医德考评自我评价
2015/03/03 职场文书
用JS写一个发布订阅模式
2021/11/07 Javascript