(23)--车联网智能微缩车识别和定位方案设计.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(23)--车联网智能微缩车识别和定位方案设计.pdf》由会员分享,可在线阅读,更多相关《(23)--车联网智能微缩车识别和定位方案设计.pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、车联网智能微缩车识别和定位方案设计摘要:视觉轮廓识别和跟踪是进行微缩车联网和微缩车自动行驶的基础和前提性工作。本文主要研究基于红外光和反光材料标记的视觉跟踪系统,在摄像机所能捕捉到的视野中,对微缩车进行识别和定位。系统包括支撑实验硬件材料的选择与装配、微缩车联网视觉识辨方案设计以及仿真实验。通过相机实验标定后的图像预处理、轮廓识别处理和噪声过滤处理,获得微缩车的状态,进行图像跟踪识别和仿真实验,降低了标定误差,验证了方案的可行性。关键词:识别和定位;图像预处理;轮廓识别中图分类号:TP391文献标识码:A文章编号:1674 5132(2019)04 0017 07DOI:10 16827/j
2、cnki 41 1404/z 2019 04 0040引言当前的汽车还是以人手动驾驶为主,在给人带来操作的愉悦感的同时,也会给驾驶人带来驾驶疲劳等一系列问题。本课题设计和实现车联网方案,重点解决图像采集和信息处理方面的问题。通过摄像头实现网联车辆定位,完成车联网最小系统集成与调试,通过优化算法实现对平台内微缩车的实时跟踪定位。通过对微缩车的位置和角度的实时返回,为接下来的微缩车控制提供数据基础。要实现微缩车轨迹跟踪的功能,需要灵敏度较高的摄像机传感器。摄像机作为一种容易受到外界光照强度影响的器材,需要对图像采集方向进行标定,软硬件材料的处理,以保证在复杂的光照条件下获得实时可靠的信息,为微缩车
3、控制提供基础。为接下来进一步研究微缩车快速避让自动行驶等工作积累宝贵的技术资料,同时为车辆视觉识别积累一定的经验。1方案设计1 1方案技术路线要实现微缩车系统的跟踪和采集,需有完整的系统作为支持。以摄像头作为微缩车位置的传感器,悬挂于实验平台架之上。用计算机处理传感器获得的结果并输出给运行中的微缩车,获取信息后微缩车实现车联网下的运动。为了实现这一目的,设计了如图 1 的技术方案。图 1技术方案图传感器包括摄像机,滤镜及相应的辅助设备。微缩车系统包括微缩车和微缩车上的反光材料贴片。执行器主要是微缩车上通过计算机获得控制数据后调节微缩车速度和角度的设备。传感原件通过相机照射到于地图上(如图 2
4、所示),通过采集车辆的状态信息发送给微缩车控制部分,在获得信息后,通过控制算法,结合地图的情况,进行下一步的控制运行。1 2视觉处理方案设计为了实现 CCD 相机或者 CMOS 相机的相机快速感应,应该选择近红外范围内的光源,范围在780 nm 3 m 之间1。在硬件材料方面选用 6 颗主波长是 850 nm 的 ES-SASFPN20B 的红外 LED南阳理工学院学报第 11 卷灯,最大分辨率 1280*1024,最大帧速率 150fpsFL3-U3-13Y3M-3M-C 型号的相机,面积约到 5 mm*5mm 反光材料贴片,尺寸为 30 5 mm,P=0 5 mm 的红外滤镜。整个研究框架
5、如图 3 所示。图 2平台轨道图图 3视觉处理系统总体设计框架图2硬件材料的选择与装配2 1微缩车硬件组成微缩车通过串口通信接收到信号后,会根据信号进行微缩车的转向和速度的控制。微缩车主要分为转向系、行驶系、传动系和支撑的底架(如图 4 所示)。同时,在实现串口通讯时,也需要硬件材料做支持,这些硬件材料安装在微缩车上,包括传感器、红外发射、红外接收、蓝牙模块、蜂窝鸣、MCU 单片机模块、电池管理器和充电管理模块等,其分别安装在微缩车的底板上,发挥着各自作用。微缩车的各个控制感应原件如图 5 所示。图 4微缩车的硬件组成实物图2 2标志物的选用要使得相机能够捕捉到微缩车的位置和方向,需要在微缩车
6、上贴有 3 个标志物。成功捕捉一辆微缩车的位置坐标和角度,必须要获取空间中至少 3个点的位置。将 3 个点排列成一个非等边的三角形。一点贴在微缩车的车头位置,另外亮点贴在微缩车的两翼即后尾的位置,最终通过识别算法可以提取出 3 个点的形心坐标,并求得微缩车的位置和角度。微缩车的贴片如图 6 所示图 5微缩车的电子控制元件图图 6微缩车贴片位置点选择反光材料时,应考虑到相机的分辨率,在1280*960 的分辨率和覆盖面积约为1 7*1 3 m的平台 下,每 个 像 素 点 对 应 的 实 际 物 理 面 积 为1 375*1 375 mm,为保证像素点被清晰准确地识别出来,选择 5 mm*5 m
7、m 左右的贴片。2 3相机的标定对相机进行标定,使得由三维空间投影到图像的二维平面中的坐标能够准确。采用张正友棋盘标定法,在 VS2010 的平台下结合 Opencv 函数库相机标定的函数类,获得相机的内参数矩阵、畸变矩阵和外部参数矩阵。将三维空间的点变为二维的点的转换称为投影变换,三维空间即物理坐标的点 Q(X,Y,Z),投影平面为二维平面的点(x,y)。采用齐次方程来进行这种变换,将 n 维数组上的点用(n+1)维表示出来,同时额外地限制任意两个点的交比不变。因此可以用一个空间上的三维坐标 q=(x,y,w)对应表示平面上的二维坐标,同时除以 w 来计算实际的像素坐标。通过二维和三维之间的
8、对应关系,可以获得内参数矩阵 M,如式(1)所示。81第 4 期江雨燕等:车联网智能微缩车识别和定位方案设计q=MQ,q=xyw,M=fx0Cx0fyCy001,Q=XYZ(1)式中:fx,fy为 x,y 方向透镜的焦距长度;Cx,Cy为实际芯片中心和主点在 x,y 轴上的偏差。由于制造和装配方面的原因,畸变主要由切向畸变产生。而切向畸变,是因为在制造过程中,普通透镜和图像平面之间不平行而导致的2。(x,y)是在成像仪上的因为畸变而产生点的初始位置,(xcorrect,ycorrect)是通过参数切向畸变参数进行了校正后的点的位置。对于切向畸变可以定义两个参数 p1,p2来表示,公式(2)和(
9、3)如下xcorrect=x+2p1y+p2(r2+2x2)(2)ycorrect=y+2p2x+p1(r2+2y2)(3)式中:r 为点距离坐标原点的距离。通过实验和切向畸变的特性可以知道,在透镜的中心,它的切向畸变为 0,越远离透镜中心,切向畸变越明显。用泰勒级数的展开式的前两项来描述这一切向畸变造成的效果。一般鱼眼相机会用到泰勒级数的第三项k3,但是由于用的只是一般的工业级别的相机,因此在此一般情况中,可以取k3=0;具体的公式如式(4)和(5)所示。xcorrect=x(1+k1r2+k2r4+k3r6)(4)ycorrect=y(1+k1r2+k2r4+k3r6)(5)式中:r 为点
10、距离坐标原点的距离。图 7视觉处理系统总体设计框架图将三维空间的点投影到二维像素平面时候,从图 7 可知,其中oc xcyczc是按照右手坐标系准则建立起来的摄像机的坐标系。其中oc是摄像机的中心点,zc的方向是摄像机所定义的主光轴方向。owxwywzw是按照右手准则建立起来的物体的坐标系。oi uv 是图像平面上的像素的坐标系,像素的坐标系 u,v 与xc,yc平行且方向相同。在图像中,定义Pd(xd,yd)为通过透镜的几何投影关系,可以得到像素坐标平面和物理坐标系之间的关系,如式(6)所示。sUV1=M Txwywzw1M=fx0Cx0fyCy001,T=r1 4r1 5r16(6)式中:
11、S 为成像面积;为旋转矩阵;T 为平移矩阵。在标定过程中采用张正友标定法,在平板平面上进行标定,世界坐标系中zw为 0 得出 U、V 的坐标值3。将物体的畸变矩阵式带入,只代入k1、k2、p1、p2可以得出理想的像素坐标(xu,yu)与畸变点和理想点之间差值x(xu,yu),y(xu,yu),之间的关系。最后可以得到可以得出畸变后的U和V与(xu,yu)的关系如式(7)和式(8)所示。U=fx(r1 1xw+r1 2yw+r1 4)r1 3xw+r3 2yw+r3 4+cxV=fy(r2 1xw+r2 2yw+r2 4)r3 1xw+r3 2yw+r3 4+cyx(xu,yu)=xu(k1r2
12、+k2r4)+p1(3x2u+y2u)+2p2xuyuy(xu,yu)=yu(k1r2+k2r4)+2p1xuyu+p2(x2u+3y2u)U=fxxu+fxx(xu,yu)+Cx(7)V=fyxy+fyy(xu,yu)+Cy(8)具体在 Opencv 函数库中实现如下:(1)可以选用 cvFindChessboardCorners()函数提取棋盘标定所寻找到的内角点。cvFindCorner-SubPix()函数对提取到的提取的内角点进一步优化,以便到更加准确的内角点的坐标。(2)cvDrawChessboardCorners()函数可以显示出检测德的内角点并将他们按照顺序连线起来,当然通过
13、设置参数还可以将画图的颜色进行改变。(3)cvCalibrateCamera2()函数实现标定算法。cvProjectPoints2()函数可以用来计算出相机标定所得到的内参数,畸变参数矩阵,外参数矩阵。(4)cvShowImage()函数显示提取角点后的图像。相机标定的最终是要获得的是相机的内参数和畸变参数,多次标定比较数值,差值相差不超过5%,最后将内参数和畸变参数保存为对应的文件,并在后期图像处理中,先行调用已经保存好的内矩阵参数和畸变参数文件,使后期图像处理准确。表1 给出了标定相机后得出的内矩阵参数和畸变参数的数值。91南阳理工学院学报第 11 卷表 1内矩阵和畸变矩阵参数表内矩阵参
14、数畸变参数fx1250548e+003k1183916e 001fy1251531e+003k26 951292e 01Cx1251531e+003p1572377e 003Cx2853515e+002p2960258e 0043微缩车定位与航向实现3 1图像预处理在标定相机的工作完成后,需要对图像进行处理,以获得微缩车的实时数据。本章主要论述以几方面的内容:首先将输入的图像进行预处理如将图像阀值化操作。其次对图像进行进一步处理,如对反光板上的微缩车轮廓进行快速有效的提取。当然,在提取轮廓后需要对轮廓进行操作,寻找到轮廓的形心坐标,并用可行算法计算出微缩车的位置和角度。在实验过程中,发现实际上
15、的图像上受到环境和场地的影响,使得出现了部分的噪声点,还需要对噪声点进行过滤。由于在硬件材料部分,通过红外光的操作可以过滤很大部分的干扰,因此在出现预处理部分,主要进行的是图像的阀值化操作。在 Flycapture2SDK 中设定了图像模式为 MONO8 格式,需要设定的是阀值,之后在图像预处理中,希望处理后亮点仅表示微缩车上反光标记的亮点,其余环境部分都是黑色即亮度为 0,使在轮廓的提取能快速、有效、准确。在Opencv 函数中调用 cvCreateTrackbar()函数来设定可以滑动的阀值设置,实验中设置阀值初值为 100,通过调试可以获得清晰、明亮的亮斑,这样就可以进行图像处理的下一步
16、操作。3 2轮廓提取在完成阀值化处理后,开始对得到的图像进行轮廓的提取。一个轮廓一般对应的是空间上的一系列的点,即在图像中的一条曲线。在 Opencv 中可以使用 cvFindContours()函数。通过设置参数寻找轮廓的函数指寻找边缘轮廓。将 8 位单通道的图像输入进函数,函数通过轮廓的寻找,可以将各个轮廓分别存储在轮廓树指针中,每个指针中有一系列对应的轮廓的坐标。通过分别对轮廓的点的累加后求平均值,就可以很方便的获得每个轮廓的形心坐标,形心坐标的输出也是一组的像素点4。之后,可以使用 cvDrawContours()函数将所寻找到的轮廓绘制出来,以方便寻找。3 3位置和方向识别在获得反光
17、板的轮廓后,本设计选择一个等腰三角形的结构,将 3 个贴片贴于微缩车的车体上5,6。在轮廓提取中已经得到微缩车 3 个贴片的形心坐标,通过向量运算可以得到微缩车的位置和角度。如图 8 所示,将微缩车的车头部分所得的形心定义为 B(x3,y3),车的两翼坐标分别是 C(x1,y1)、D(x2,y2),通过计算得出 C、D 点的中值 A(x4,y4),并通过向量计算获得 A、B 之间的角度即使微缩车的的角度,微缩车的位置坐标取 A、B 的中点 E。图 8方向与形心示意图推导微缩车的形心坐标(9)和角度坐标 如式(10)AB=(x3 x4,y3 y4),x=x1+x22,y=y1+y22cos=ab
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 23 联网 智能 微缩 识别 定位 方案设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内