恩智浦智能车摄像头循迹部分
恩智浦智能车摄像头循迹部分
对于恩智浦智能车竞赛已经举行了14届,从以往的电磁车已经逐渐转变成了用摄像头进行循迹。与电磁循迹对比,摄像头拥有着诸多优势,但摄像头对于很多新手入门来说却是比较困难的。下面将给新手介绍我们对摄像头循迹部分的处理。大家都知道,单片机从摄像头采集到数据后,必须对图像进行相应的二值化(即0,1)后才方便对图像进行处理。在得到二值化图像后如何进行处理并且进行巡线呢?
一获取中线
for(j=MT9V032_H-5;j>20;j--){ for(i = 0 ;i <=MT9V032_W/2;i++){if(i==MT9V032_W/2-2){ left=MT9V032_W/2;break;}if(img[j][MT9V032_W/2-i] <= 10 && img[j][MT9V032_W/2-i-1] <= 10){ left = i;break;} }for(i = 0 ;i < MT9V032_W/2;i++){ if(i==MT9V032_W/2-2){ right=MT9V032_W/2;break;}if(img[j][MT9V032_W/2+i] <= 10 && img[j][MT9V032_W/2+1+i] <= 10){ right = i;break;} }if(j<30)midder[j]=MT9V032_W/2-(left-right)*1.5;elsemidder[j]=MT9V032_W/2-(left-right);minder=minder+(MT9V032_W/2-midder[j]); }
获取中线的原理在于图像的中线下方往两边进行找黑线,找到黑线后进行记录。并且两边的黑线到中点的距离进行作差,即可得到对应该横的中点值,依次往上进行寻找中线,最后把所有中点与中线的误差积累在minder变量中即可得到车子里中线的偏差。
但这样获得中线的方式存在一个问题:当车模快在过弯时摄像头拍摄的位置将不会是赛道的方向,拍摄的位置可能为赛道的外侧,那么计算中线的位置将会出现问题。因此我们需要引入一个结束点,在查找中线时检测到巡线位置已经到达边缘时暂停结束巡线详细代码如图
if(midder[j]<10||midder[j]>MT9V032_W-10||j<21){if(j>60)minder=minder*j*3.4;elseminder=minder*j*0.03;if(minder>2000)minder=2000;if(minder<-2000)minder=-2000;break;}
具体的比例系数需要大家对自己的车模进行一一的调整。
恩智浦智能车摄像头循迹部分相关推荐
- 飞思卡尔智能车—电磁循迹(节能组)
飞思卡尔智能车-电磁循迹(节能组) 详细参赛要求请以智能车官方为准,此文章仅分享本人参赛经验,开源硬件电路设计,供大家学习! 电磁循迹部分设计思路: 电感采集电磁信号,放大,整流,滤波,AD采集 电磁 ...
- 【IoT】寻光智能车与循迹智能车
1.寻光智能车 功能说明 智能寻光小车,智能识别光线强弱,实现小车永远向光最强的地方行走,到光源处小车自动停止.基本车体为三轮.二驱.双层机构.主控芯片采用最常用的51单片机: 驱动采用L9110驱动 ...
- PID详解3(摄像头循迹分析)
PID详解3(摄像头循迹分析) 看了那么多成功的案例和大佬们的分享.讲解,终于轮到我们自己来设计PID了. 首先需要分析的是,想要用PID,我们得先知道,我们需要通过传感器拿到哪些参数,我们处理后要得 ...
- 飞思卡尔智能车摄像头上位机…
原文地址:飞思卡尔智能车摄像头上位机采集程序 作者:玲声依旧美 基于飞思卡尔XS128单片机 摄像头采集测试程序 OV7620采集程序说明:摄像头数据口接PA0-PA7:行中断接PT0,场中断 ...
- 恩智浦智能车核心板LPC54606PCB原理图
恩智浦智能车核心板LPC54606PCB原理图 做了份LPC54606的核心板,用来给学弟学妹们学习焊接和编程,引脚几乎全引出,数字地模拟地之前做了隔离处理,测试后可用,压缩包含 PCB的3D展示感兴 ...
- 恩智浦智能车MOS双驱动
"恩智浦"智能车MOS双驱动 特性: 控制信号3.3V与5V兼容 模块供电电压:5V-12V 双路PWM调制,控制电机正反转,占空比0%~100% 工作频率可达200KHz(建议频 ...
- 智能小车红外循迹原理
循迹电路 循迹电路由收发一体的红外收发管P1,P2:电位器R18,R29:发光二极管D6,D7和芯片LM324等组成.一共有两路,对应的红外电位器用于调节灵敏度.LM234用于信号的比较,并产生比较结 ...
- 智能车摄像头动态打角算法
智能车摄像头动态打角算法 核心代码 void xiaocao_function() {byte i, j;for (i = 0; i < final_line; i++){for (j = 0; ...
- 恩智浦智能车大赛2020_我校AI电磁车队荣获2020年全国大学生“恩智浦”杯智能汽车竞赛全国一等奖...
日前,第十五届"恩智浦"全国大学生智能汽车竞赛线下全国总决赛在南京信息工程大学落幕.我校工程实训中心智能车工作室天职师大AI电磁车队在毛福新老师的指导下,精心准备,沉着应战,一路过 ...
- 智能车摄像头组 障碍处理方法
智能车摄像头组中最重要的就是图像处理了,这里面的图像处理包括很多方面,比如十字如何处理,弯道如何处理,起跑线,障碍等等问题,接下来我要讲的就是障碍处理方法. 首先我们先描述一下障碍的形状,在智能车竞赛 ...
最新文章
- Windows核心编程 第十五章 在应用程序中使用虚拟内存
- mybatis count返回null_Mybatis属性示例-Properties的三种配置方式
- shell脚本--cut命令
- hibernate jpa_教程:Hibernate,JPA –第1部分
- Python——为什么要在意:模块重载
- 一篇相当不错的function入门文章
- 命令行登录防止MySQL密码泄露的几个小妙招。
- 子域收集-fierce
- PHP学习笔记--array_map函数
- flv 视频 文件 下载
- shell 小米system锁adb_小米/红米系列手机解system分区锁方法详解
- 传奇3单机显示服务器进不去,传奇3私服单机 数据库连接不上 dafe
- 腾讯WiFi管家 v3.7.3
- HTTP Headers
- Mocking and Stubbing
- 如何用迅捷PDF转换器获取PDF文件中的图片
- 给正在转行互联网朋友们的一封信
- 李迟2022年5月工作生活总结
- 正则表达式转NFA,DFA,最小化DFA
- 深入掌握JMS(一):JSM基础