matlab车道线检测_数字图像处理:基于霍夫变换的车道线检测

本文介绍了如何使用霍夫变换进行车道线检测,涉及数字图像处理的基础知识,包括灰度图变换、Canny边缘检测和霍夫变换。文章详细阐述了霍夫变换的原理及其在机场跑道检测中的应用,并探讨了基于笛卡尔和极坐标空间的两种霍夫变换。此外,还展示了车道线检测的完整流程,从彩色图像转换为灰度图,到高斯滤波、Canny边缘检测,再到基于霍夫变换的直线检测、绘制车道线和图像融合。最后,作者提供了实时视频流中车道线检测的实现代码。
摘要由CSDN通过智能技术生成

9de1ea1bae567b1bfb3a668175c738a7.png

写在前面:

前几天写的第一篇文章收获了35个赞(目前)确实给了我挺大的鼓舞的哈哈哈,感觉写文章也挺锻炼自己能力的,也算是把它当笔记写吧

最近笔者开始着手开发一个新的项目,其中第一步就用了很多数字图像的知识,包括灰度图变换、canny边缘检测、霍夫变换等,想起来前几天的数字图像处理文章,索性在写一篇关于霍夫变换的吧,也好借这个机会用代码和效果图来帮大家感受霍夫变换算法的强大

关于环境:

笔者所使用的开发环境是Ubuntu16.04 + Pycharm + opencv4,前面两个应该大家都知道是什么吧,Ubuntu为一款较为流行的linux操作系统,Pycharm则是一款较为先进的python开发编译器,其中opencv是计算机视觉领域必备的一个计算机视觉库,全程为Open Source Computer Vision Library,强烈推荐对于计算机视觉感兴趣的同学可以开始了解一下 (ps:今天发现了一个pycharm暗黑系主题插件:Material Theme UI,简直好看哭了,这里安利一波,贴一下效果图)

6d77b04116a10a00d33407bc524aae08.png

一.前言

在我们开始深入学习霍夫变换算法之前,我们先简单了解一下什么是霍夫变换以及霍夫变换的应用举例

1.霍夫变换到底是个什么啥呀

霍夫变换是一种特征检测(feature),被广泛应用在图像分析(image analysis)计算机视觉(computer vision)以及数位影像处理 (digital image processing)。 经典的霍夫变换是侦测图片中的直线,之后,霍夫变换不仅能识别直线,也能够识别任何形状,常见的有圆形椭圆形

让我们想象一下,现在叫大家在一副图片中找出一条直线或者圆,相信对于大家应该都是一件相当容易的事,但是对于计算机来说,一副图像所呈现的只是灰度值从0-255的庞大矩阵而已,它可不容易知道复制的矩阵中哪些是直线哪些不是,霍夫变换便是帮助计算机'看到'图像中的直线或圆的一种算法

其基本思想为:

将传统的图像从x y轴坐标体系变换到参数空间(m, b)或者霍夫空间(Hough space)中,通过在参数空间(parameter space)或可称为累加空间(accumulator space)中计算局部最大值从而确定原始图像直线或圆所在位置

(下面用一个具体应用来让大家有个直观的理解)

2.霍夫变换的具体应用实例

霍夫变换最初较为成功的应用体现在机场跑道检测,如图 1-1 、图 1-2所示,图中为基于霍夫变换的对机场的机场跑到检测

77f3e9ccb096b387ea0b77f14422cd77.png
图 1-1 潮汕机场跑道线检测图

aa91447a1e52fa057c4651b87938a711.png
图 2-2 英国紐瓦克机场跑道线检测图

二.霍夫变换

常见的霍夫变换可归为以下两种:

1).基于笛卡尔坐标空间的霍夫变换

2).基于极坐标空间(二维直线霍夫空间)的霍夫变换

下面让我们来一一介绍这两种霍夫变换算法,以下文章仅包括霍夫变换中直线检测部分,如对圆检测或椭圆检测有兴趣的同学可自行去查阅资料哈

d144a5a748da85500090d79266464285.png

(贴张很酷炫的霍夫变换可视图)

1.基于笛卡尔坐标空间的霍夫变换

在我们从初中就开始使用的平面直角坐标中,一条直线的表示通常用

表示,其中
表示的是直线的
斜率
  • 9
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值