OpenCV | 霍夫变换:以车道线检测为例

霍夫变换

  • 霍夫变换只能灰度图,彩色图会报错

lines = cv2.HoughLinesP(edge_img,1,np.pi/180,15,minLineLength=40,maxLineGap=20)

  • 参数1:要检测的图片矩阵
  • 参数2:距离r的精度,值越大,考虑越多的线
  • 参数3:距离theta的精度,值越大,考虑越多的线
  • 参数4:累加数阈值,值越小,考虑越多的线
  • minLineLength :最短长度阈值,短于这个长度的线会被排除
  • maxLineGap:同一直线两点之间的最大距离
python 复制代码
import cv2
import numpy as np

masked_edge_img.jpg (经过掩码后的图像)

python 复制代码
edge_img = cv2.imread('masked_edge_img.jpg',cv2.IMREAD_GRAYSCALE)
mask = np.zeros_like(edge_img)
python 复制代码
#获取所有线段
lines = cv2.HoughLinesP(edge_img, 1, np.pi/180, 15, minLineLength=40, maxLineGap=20)
python 复制代码
len(lines)

输出结果 :147 (共有147条线段)

python 复制代码
#按照斜率分成车道线
left_lines = [line for line in lines if calculate_slope(line)>0]
right_lines = [line for line in lines if calculate_slope(line)<0]
相关推荐
国科安芯几秒前
把接口变成观测量:CANFD收发器状态可观测性驱动的星上故障检测隔离与恢复方法
大数据·人工智能·物联网·卫星·抗辐射·通信芯片·载荷
7177774 分钟前
企业研发平台选型指南:从代码托管到全流程研发管理的判断框架
人工智能·gitee
泯泷7 分钟前
模型越聪明越健忘?“上下文腐烂”背后的 3 个解法
人工智能·llm·agent
甲维斯7 分钟前
Fable5.2 画手柄很牛,小测3个例子!
人工智能
冬奇Lab8 分钟前
一天一个开源项目(第257篇):AI Design Skills —— 把设计规范写成 AI 能执行的规则,落地页与 Figma 两套 Skill
人工智能·开源·claude
严肃小白兔9 分钟前
第 02/24 期:从线性模型到多层感知机:神经网络的表示能力
人工智能·深度学习·神经网络
我会飞biubiubiu1 小时前
State 与 Reducer:一本谁都能写的账本,怎么不打架
人工智能
superj1 小时前
答题卡智能批改系统:选择题 OMR 秒出,主观题交给一次大模型调用
人工智能
海螺_AIHCC1 小时前
AGENTS.md 别手写,让它自己从仓库里长出来
人工智能
用户24101505702081 小时前
给 100 块的 AI 玩具写了一套英语启蒙 App:100 个词、看图选词、开口打分
人工智能