粗略车谈线识别_酷游地址_酷游官方网站

地址:湖南郴州市北湖区南岭大道1690号

郑总:13786538932(微信同号)

业务1部:0735-2161318

业务1部:0735-2161338

传真:0735-2161318

邮箱:1780552943@qq.com


新闻中心

首页 > 新闻中心

酷游地址:粗略车谈线识别

发布时间:2024-05-13 11:52:14 来源:酷游官方网站 作者:酷游官网  

  本文将先容若何应用Opencv,对容易场景下的车道线实行离线识别。梳理一切识别进程的逻辑,并对进程中应用的闭系学问点实行先容。正文中应用C++实行,正在文末也会附上应用python实行的代码,读者统统能够根据本文复现该项目。

  读取视频-灰度变换-高斯滤波-边际检测-感笑趣区域检测-霍夫变换-车道线拟合-图片搀和

  不才面的实质中,将遵循以上次序一步步实行,最终实行对车道线的检测。群多都明白,视频是由一帧帧的图像构成,因而对视频的车道线检测性子上是对图像的车道线.实行单张图片车道线)导入包蕴的库文献

  Mat image_gau; GaussianBlur(image_gray, image_gau, Size(5,5),0,0);

  应用高斯滤波,也叫高斯混沌,可能剔除原图像中的少许噪点。好比,倘使不应用高斯滤波,直接处分原图,图中少许无足轻重的特色就无法避开,影响后面的处分。相反,通过高斯混沌之后,少许不那么明晰的噪点就被删除掉了。

  函数GaussianBlur的四个参数辨别为:输入图像,输出图像,高斯内核,高斯内核正在X对象的规范偏向,高斯内核正在Y对象上的规范偏向。个中,高斯内核是由width和height两个维度组成,这两个维度能够应用差其它值,可是务必是正奇数或者为0; 高斯内核正在X,Y两个对象上的规范偏向,经常扶植为0(全部若何调参数暂未琢磨)

  从上图能够看出,通过边际检测取得的图片包蕴了许多情况新闻,这些是咱们不感笑趣的,须要提取咱们须要都得新闻。观看原图可知,车道先平常位于图片下方的一个梯形区域,手动设定4个点,构成梯形区域的四个极点。应用fillConvexPoly函数能够画超群边形,这个函数共有4个参数:空图(巨细与原图类似),极点新闻,多边形的边数,线条色彩。

  and 操作,能够只取得感笑趣区域内的边际检测图,从途中能够看出只要车道线新闻。bitwise

  _and 函数是将两张图片做“与”操作,共有3个输入参数,辨别是:掩模图, 原图,输出图。须要留心的是,三张图的巨细和色彩通道数目。

  通过上面的操作,取得的是构成车道线的少许像素点,但这些点都是一个个独立的像素点,没有连成线。霍夫变换能够通过像素点找到图中的直线种,规范霍夫变换,多标准霍夫变换和累计概率霍夫变换,前两种应用HoughLines函数,结尾一种应用HoughLines函数实行。累计霍夫变换的推广作用更高,以是平常更多的方向应用累计概率霍夫变换。

  霍夫变换将正在迪卡尔坐标系下的线条转换到极坐标系下,迪卡尔坐标下通过一个点的扫数直线的聚拢正在极坐标系下是一条正弦弧线。正弦弧线的交点,呈现这些弧线代表的点正在统一条直线上。霍夫变换就通过找这些交点,确定哪些像素点是正在统一条直线上。闭于霍夫变换的全部讲授能够参考:

  为清晰决虚线之间不相接的题目,须要对霍夫变换取得的线段实行处分。一张图片通过霍夫变换取得的线段有许多,正在这里能够遵循斜率分为两类,左车道线和右车道线。正在分类的进程中须要留心的是图像的坐标系:左上角为原点,x正对象朝右侧,y的正向朝下。

  能够直策应用capture函数读取视频,然后将视频中的每一帧图像转达给frame。通过构造函数将frame转达给处分单张图片的类,然后挪用成员函数实行处分,结尾显示。