位置: IT常识 - 正文

【第十七届智能车】智能车图像处理(3)-元素识别(十字)(第十七届全国大学生智能车)

编辑:rootadmin
【第十七届智能车】智能车图像处理(3)-元素识别(十字)

推荐整理分享【第十七届智能车】智能车图像处理(3)-元素识别(十字)(第十七届全国大学生智能车),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:第七届全国智能制造学术会议,第七届世界智能大会,第七届世界智能大会,第七届世界智能大会,第五届智能,第17届中国智能系统会议,第七届世界智能大会,第七届世界智能大会,内容如对您有帮助,希望把文章链接给更多的朋友!

本博客使用的图像是188*120的大津法二值化图像。摄像头安装高度为25cm(离地),前瞻长度约1m。

在对图像进行最简单的预处理和赛道边界提取后,就可以开始进行元素识别了,这里先从最简单的元素十字开始讲。

十字的情况分为正入十字和斜入十字两种情况,根据视野中十字角点的数量也分为几种情况,要分别进行讨论。

十字的图像特征

在编写程序时,以下各行条件是层层递进进行判定的,一旦有一个条件判定不满足就退出此次判定。

预识别条件:

图像两边都有较多行的边线丢失;根据实际前瞻需要,选定的两条参考横线,有至少一条两侧均有丢边情况发生;图像中线几乎为全白;图像中心存在大面积的白色。

决定识别条件:

十字远端(图像上方)的两个L角点均存在;十字近端(图像下方)的两个L角点至少一个存在(考虑到出十字时的斜出情况)。

正入十字示意图:

斜入十字示意图:

十字的各个状态

以下状态按照时间顺序排列,且在识别程序的状态切换过程中,进入下一个状态的前提是状态位已经置为上一个状态。

尚未进入十字:视野内远处两个L角点存在,此时认为已经识别到十字,十字标志位置位,十字状态位置1;车头即将进入十字:视野内仅剩2个L角点;车头完全进入十字:视野内没有L角点,此时在十字内循迹,十字标志位清除,十字状态位置2;即将出十字:车头斜对十字,视野内远处两个L角点存在,十字状态位置3;即将出十字:视野内仅剩2个L角点;出十字:视野内没有L角点 ,清除十字状态位和十字标志位。

各个状态下的图像这里就不一一列举了(我没有保存原始图像,自己画示意图太累了>_<),大家调试的时候可以在板子上接一块屏幕或者使用图传进行观察,基本上就是我说的这几个状态。

识别程序编写思路

需要提前设置的一些阈值

十字两侧边线丢线阈值,只有在两侧丢线行数大于此阈值后才进行十字判定十字判定中心区域存在大量白色像素数量总和阈值十字判定中心存在大量白色的矩形区域四个顶点坐标十字上、下L角点容差阈值,用于判定上下L角点的存在性十字补线最小二乘法从角点上溯行数阈值,用于补线【第十七届智能车】智能车图像处理(3)-元素识别(十字)(第十七届全国大学生智能车)

思路

(1)检测图像两侧下方的丢线;

(2)检测图像中线上的黑色部分是否很长,如果很长就终止判断(防止在三岔误判);

(3)检测选定的两行参考线是否至少有一根两侧丢线(用于斜入十字的辅助判定);

(4)检测图像中心选定矩形区域内是否存在大量白点(防止与三岔、弯道误判);

(5)L角点的判定

①预扫线:从图像中线开始向上方扫描黑白交界点,采用每隔10像素扫线法提高效率,若未扫到,扫描最上方10个像素以防漏扫;从图像中线向下方扫线,因为下方拐点存在纵向上小于10像素的尖,而且在同一列中会有两次黑白交界,所以采用逐像素向下扫描的方式以防漏扫以及误判;将两次扫描得到的上下边界分别存进两个数组内。

②L型角点判定:遍历黑白交界点纵坐标数组,从左向右和从右向左两个方向扫描。

a)找上方L型角点:寻找黑白交界点纵坐标开始变小的点,这一步不推荐使用边线斜率的变化进行判定,因为图像锯齿的存在,很容易出现误判的情况;

b)识别到十字后,开始寻找十字下方L型角点:检查下方黑白交界数组中是否存在前几个交界纵坐标还是接近的,但是再过去就发生突变,这时候就可以认为找到了下方L角点。

(6)上方两个L角点存在,则认为判定到了十字,标志位置位。

补线程序编写思路

注意1:补线需要直接补进边线数组,如果只是计算了直线的k和b,欲图在图像上补线的话,因为计算出来的数据不一定是整数,即使进行了强制类型转换,也会因为四舍五入导致好几个点计算出来的坐标一致,很容易出现补线截断的情况!

注意2:补线需要限制斜率绝对值的范围,十字的补线相对陡峭,斜率不可能很小,如果对斜率不做限制,补出来的线就会发生严重且致命的抖动!

状态1:分别连接左右两侧的上下L角点。

状态2:从左右两侧的L型角点开始,向上方上溯若干个像素,用最小二乘法拟合这一段边线得到一条直线,再往下补线进入边线数组即可。

状态4:出十字车头斜对,连接上下L角点均存在的一侧的上下L角点,另一侧根据上L角点上溯最小二乘法拟合直线进行补线。

状态5:同状态2。

总结十字在所有元素中相对简单,因为即使不做识别和补线,仅仅依赖循迹也是可以通过的,但是为了防止其他元素在十字中的误判,还是需要对十字进行识别,锁定在十字中的状态;十字的特征主要就是四个90°的L形角点,抓住特征识别,误判率很低而且效果不错;十字的补线也是相对简单的,就是需要根据四个角点的存在性分别进行不同的补线,一定要分清楚具体的情况,还有一定要注意补线斜率的限幅,可以先测一测直道上正常的边线斜率大概是多少,然后设定一个合适的阈值进行限制,防止抖动。
本文链接地址:https://www.jiuchutong.com/zhishi/300087.html 转载请保留说明!

上一篇:Vue 动态样式绑定(vue动态绑定背景图)

下一篇:微信多开教程及下载链接(微信多开使用方法)

  • oppor9s一键换机在哪(oppor9怎么一键换机)

    oppor9s一键换机在哪(oppor9怎么一键换机)

  • 单片机是什么专业的(单片机是干什么)

    单片机是什么专业的(单片机是干什么)

  • 芒果pc移动会员什么意思(芒果pc移动会员和全屏区别)

    芒果pc移动会员什么意思(芒果pc移动会员和全屏区别)

  • iphone8外放屏幕震动正常吗(iphone8外放屏幕震动解决)

    iphone8外放屏幕震动正常吗(iphone8外放屏幕震动解决)

  • 为什么电子体温计测出来温度低(为什么电子体温计比水银体温计高)

    为什么电子体温计测出来温度低(为什么电子体温计比水银体温计高)

  • 华为7天无理由退货条件(华为7天无理由退货机没有保修)

    华为7天无理由退货条件(华为7天无理由退货机没有保修)

  • 手机充满电关机能维持多久(手机充满电关机后再开机就没电了)

    手机充满电关机能维持多久(手机充满电关机后再开机就没电了)

  • oppoa7x啥时候上市的(oppoa7什么时候上市)

    oppoa7x啥时候上市的(oppoa7什么时候上市)

  • 荣耀20和荣耀20pro区别(荣耀20和荣耀20pro手机壳通用吗)

    荣耀20和荣耀20pro区别(荣耀20和荣耀20pro手机壳通用吗)

  • 太阳能手表停了怎么办(太阳能手表停了要晒多久)

    太阳能手表停了怎么办(太阳能手表停了要晒多久)

  • 微视看视频领红包怎么没有了(微视看视频领红包不见了)

    微视看视频领红包怎么没有了(微视看视频领红包不见了)

  • 抖音上怎么发图片评论(抖音上怎么发图文字样的)

    抖音上怎么发图片评论(抖音上怎么发图文字样的)

  • 苹果11pro max多长多宽(苹果11pro max多少钱)

    苹果11pro max多长多宽(苹果11pro max多少钱)

  • 石家庄5g普及时间(石家庄5g普及时间是多少)

    石家庄5g普及时间(石家庄5g普及时间是多少)

  • 手机没话费怎么收验证码(手机没话费怎么登录中国移动)

    手机没话费怎么收验证码(手机没话费怎么登录中国移动)

  • 淘宝优惠券删除了从哪里可以恢复(怎么把淘宝优惠券删除)

    淘宝优惠券删除了从哪里可以恢复(怎么把淘宝优惠券删除)

  • 微信在哪里注册(微信在哪里注册小号)

    微信在哪里注册(微信在哪里注册小号)

  • 微信头像点两下为什么会动(微信头像点两下拍了拍怎么设置)

    微信头像点两下为什么会动(微信头像点两下拍了拍怎么设置)

  • md102是哪年的生产的(md103i7是哪一年)

    md102是哪年的生产的(md103i7是哪一年)

  • qq客户端在哪里打开(qq客户端在哪里打开成长守护平台)

    qq客户端在哪里打开(qq客户端在哪里打开成长守护平台)

  • 抖音视频怎么横过来看(抖音视频怎么横屏上传)

    抖音视频怎么横过来看(抖音视频怎么横屏上传)

  • 华为视频铃声哪里下载(华为视频铃声哪里设置)

    华为视频铃声哪里下载(华为视频铃声哪里设置)

  • jmmal10是什么型号(jmmal10是什么型号处理器)

    jmmal10是什么型号(jmmal10是什么型号处理器)

  • airpods怎么恢复出厂设置(airpods怎么恢复双声道)

    airpods怎么恢复出厂设置(airpods怎么恢复双声道)

  • ubuntu日志的设置(ubuntu系统日志配置文件)

    ubuntu日志的设置(ubuntu系统日志配置文件)

  • 个体工商户可以给自己交五险一金吗
  • 高铁票进项抵扣怎么在增值税系统申报
  • 服装类发票可以做账吗
  • 个税申报申报方式选择
  • 固定资产投资损失怎么做账
  • 个人抬头发票可以抵税个人所得税吗
  • 土地使用税的免税规定有哪些
  • 个人转让不动产给个人独资企业
  • 固定资产交换的账务处理
  • 残疾人收到房租租赁发票收入还要缴纳个税吗
  • 个税怎么计算扣多少
  • 年底没有取得发票企业所得税
  • 变更税号后地税个税申报系统还是显示老税号怎么办?
  • 员工看病报销要计税吗
  • 购销合同的会计分录怎么写
  • 销售折扣账务怎么处理
  • 房地产所得税税负率计算公式
  • 资产计税基础是怎么填
  • 公司对项目的资金支持
  • 工商年报人数是12月人数吗
  • windows10如何关闭病毒和威胁防护设置
  • 销售费用有哪些?
  • 消防费用怎么做分录
  • win10无法以管理员身份运行的原因及解决方法
  • linux系统中如何查看日志
  • 小规模纳税人2023年出售使用过的
  • laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
  • php中execute
  • 企业向个人借款是否合法
  • php文件修改后,打开还是显示以前的页面
  • 资产负债表中各项目的期末数应根据各账户
  • 风险敞口是指什么
  • js对象数据类型有哪些
  • 可解释深度学习:从感受野到深度学习的三大基本任务:图像分类,语义分割,目标检测,让你真正理解深度学习
  • 新公司固定资产怎么登记
  • 代扣费用会计分录
  • 企业应采用
  • 企业的借款费用怎么入账
  • db2 21000怎么解决
  • microsoft SQL server 2008有什么用
  • 公司固定资产抵押贷款无法偿还
  • 收到证券公司信息
  • 税务师有用么,相当于中级还是高级
  • 企业拆迁安置房屋没有房产证可以买吗
  • 实收资本 增加
  • 建账要求
  • 2023年职工养老保险缴费标准
  • 托盘费用怎么核算
  • 生产型企业入库管理办法
  • 贷款买车成功后,给客户什么手续
  • 预收账款是什么资产
  • sql server 文件
  • windowsserver2008密码规则
  • rundll32.exe是什么程序
  • 在Linux系统中安装VS
  • win8怎么设置定时关机
  • linux用中文怎么说
  • xp双系统怎么切换系统
  • linux unhide
  • win7旗舰版更改适配器没有蓝牙连接
  • centos8 redhat
  • lsass.exe是什么病毒
  • Windows Server 8 ADDS轻松几步搞定密码个性化设置
  • android skia opengl
  • android导入别人的程序报错
  • 删除rpm安装包
  • linux一共多少命令
  • linux shell执行命令
  • Unity3D游戏开发毕业论文
  • jsoncpp rapidjson
  • nodejs mongoose
  • jquery 单页应用
  • Python 中urls.py:URL dispatcher(路由配置文件)详解
  • javascriptj
  • unity3d mod
  • 广东税务局查验
  • 税务函调回来几天可以退税
  • 在江西税务网交医保流程
  • 放管服中的服的深层含义
  • 安徽省印花税核定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设