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]
相关推荐
大模型真好玩8 分钟前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两17 分钟前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
LaiYoung_40 分钟前
🎁 送你一套超好用超实用的 FE AI-Coding Skills
前端·人工智能·开源
ZzT3 小时前
怎么做才不会被 AI 替代?
人工智能·程序员
道友可好3 小时前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端
小姜前线技术4 小时前
AI回答代码块高亮加一键复制
人工智能
洛阳泰山4 小时前
从 0 到 1.6K Star:一个 Java 开源项目的增长复盘
人工智能·后端·开源
米小虾5 小时前
Agent Skill 设计模式完全指南
人工智能·agent
饼干哥哥6 小时前
保姆级教程:用Image2 + Seedance2.0 做长视频,以品牌广告为例
人工智能
米小虾6 小时前
Agent Skill 规范与 Skill-Creator 核心思想
人工智能·agent