一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于可见光定位的视觉基准方法

2022-10-15 10:45:30 来源:中国专利 TAG:


1.本发明面向室内可见光定位技术领域,特别是涉及一种用于可见光定位的视觉基准方法。


背景技术:

2.在成像可见光定位(imaging visible light positioning,ivlp)技术主要包含id检测与精确定位两个层面,其中id检测用于区分不同灯具,而后根据摄影测量方法进行精确定位以获取用户设备(user equipment,ue)的位姿信息。通常,在ivlp系统中大量采用光相机通信(optical camera communication,occ)方式传输与检测光源的led-id信息[1]z.li,m.jiang,x.zhang,x.chen,and w.hou,“space-time-multiplexed multi-image visible light positioning system exploiting pseudo-miller-coding for smart phones,”ieee trans.wireless commun.,vol.16,no.12,pp.8261

8274,dec.2017.[2]j.fang,z.yang,s.long,z.wu,x.zhao,f.liang,z.jiang,and z.chen,“high-speed indoor navigation system based on visible light and mobile phone,”ieee photon.j.,vol.9,no.2,pp.1

11,apr.2017.[3]h.li,h.huang,y.xu,z.wei,s.yuan,p.lin,h.wu,w.lei,j.fang,and z.chen,“afast and high-accuracy real-time visible light positioning system based on single led lamp with a beacon,”ieee photon.j.,vol.12,no.6,pp.1

12,dec.2020.[4]w.guan,l.huang,b.hussain,and c.yue,“robust robotic localization using visible light positioning and inertial fusion,”ieee sensors j.,vol.22,no.6,pp.4882

4892,mar.2022,而普通灯具需要增加控制模块才具备occ功能,意味着安装与维护成本的增加。具体而言,通过开关键控(on-offkeying,ook)调制信号控制的光源将以人眼无法察觉的频率快速闪烁,在卷帘快门相机获取的图像内,光源的发光面将产生黑白相间条纹。此外,可以证明黑白条纹的像素宽度与相机到光源的距离、相对姿态没有直接关系,而仅与光源闪烁的频率和相机参数有关[1],从而可以在相机参数已知的情况下,根据黑白条纹的像素宽度可推导出对应光源的闪烁频率进而恢复led-id信息。文献[1]提出了一种异步模式的led-id传输方案,通过伪密勒编码将led-id信息位映射成调制符号,并且证明了连续相同的符号数量与连续图像帧数量间具有映射唯一性。文献[5]r.qv,l.feng,a.yang,p.guo,b.lin,and h.huang,“ahigh efficient code for visible light positioning system based on image sensor,”ieee access,vol.7,pp.77762

77770,2019提出了一种基于掩模图案的led-id编码方式,避免编码后的led-id出现过长的连续
‘1’
与连续
‘0’
。文献[6]h.zhang and c.yang,“efficient coding and detection of ultra-long ids for visible light positioning systems,”opt.express,vol.26,no.10,pp.13397

13407,2018提出一种基于里得所罗门编码的led-id编码方案,在编解码效率和复杂度之间做折中。在led-id比特数较长时,将需要连续多帧图像才能传输一个id信息,使得led-id的传输速率降低,进而影响ivlp系统的定位刷新率。此外,在文献[7]一种基于led平板灯的ean-13条形码编码解码方
法及系统中提出了一种通过led方形平板灯传输led-id的方案,但仍然需要使用调制模块来控制灯具快速闪烁产生黑白条纹。
[0003]
而在精确定位算法层面,通常利用光源的形状特征以及视觉测量方法完成对ue的定位。根据所使用灯具的形状区分有两种主要的类型,分别是基于圆形灯具与方形灯具的ivlp方案。另一方面,传统单目视觉定位算法可迁移至ivlp系统中用于相机位姿估计,例如经典的透视n点对(perspective n point,pnp)算法[8]v.lepetit,f.moreno-noguer,and p.fua,“epnp:an accurate o(n)solution to the pnp problem,”int.j.comput.vis.,vol.81,no.2,pp.155

166,2009.[9]y.li,s.fan,y.sun,w.qiang,and s.sun,“bundle adjustment method using sparse bfgs solution,”remote sens.lett.,vol.9,no.3,pp.789

798,2018经典的透视n线对(perspective n line,pnl)算法[10]c.xu,l.zhang,l.cheng,and r.koch,“pose estimation from line correspondences:a complete analysis and a series of solutions,”ieee trans.patternanal.mach.intell.,vol.39,no.6,pp.1209

1222,jun.2017,并且通常假设点对、线对已完成匹配。文献[11]r.yuan andw.hui,“3d information acquisition from rectangles and circles in single images,”in proc.wri world congr.comput.sci.inf.eng.,los angeles,usa,mar.2009,pp.43

47.提出利用方形参考物的4个角点进行位姿估计,需要3d-2d点对已完成匹配作为前提。文献[12]l.bai,y.yang,c.feng,c.guo,and b.jia,“novel visible light communication assisted perspective-four-line algorithm for indoor localization,”in proc.ieee glob.commun.conf.,taipei,taiwan,dec.2020,pp.1

6提出一种使用方形平板灯的透视4线对定位算法,由于无法获知线对匹配关系,因此需要计算所有匹配情况的对应解并且通过聚类得到估计解。文献[3]中提出一种使用圆形灯具的单灯定位算法,但仍需要在灯具的边缘额外增加点光源,进而通过2对配对点进行2d定位。因此,ivlp系统中如何选取合适的形状特征或者视觉基准进行位姿估计尚未得到充分研究。


技术实现要素:

[0004]
为克服现有技术通过occ方式传输led-id带来较高设备复杂度以及精确定位需要借助多个灯具进行求解的不足,提供一种用于可见光定位的视觉基准方法,设计了一种基于曼彻斯特编码一维视觉基准构造方法,并且设计了基于图像处理的视觉基准方法,借助pnp算法实现单灯情况下对相机位姿的求解。
[0005]
为解决上述技术问题,本发明的技术方案如下:
[0006]
一种用于可见光定位的视觉基准方法,包括以下步骤:
[0007]
s1:构造曼彻斯特一维视觉基准机制;
[0008]
s2:基于曼彻斯特一维视觉基准机制产生带明暗条纹的灰度图像;
[0009]
s3:基于图像处理的视觉基准提取算法对灰度图像进行处理,获取条码正视图;
[0010]
s4:根据灰度图像和条码正视图进行分析计算,对条码信息载荷进行检测,获取条码的四个角点在世界坐标系中的3d坐标;
[0011]
s5:利用3d-2d点对匹配方法对3d坐标进行点对匹配后,通过pnp算法进行求解,实现单灯定位。
[0012]
其中,所述步骤s1提出的曼彻斯特一维视觉基准机制具体生成一种基于曼彻斯特
编码与奇偶校验机制的一维条码;曼彻斯特一维视觉基准机制具体为:
[0013]
假设原始的led-id信息位包含q bit,添加奇偶校验并经过曼彻斯特编码之后为2q 2bit,以lc表示添加奇偶校验后的比特序列;对lc前置连续m bit的
‘1’
以及1bit的
‘0’
,同时对lc后置1位
‘1’
,即组成一个完整led-id信息帧,其中,前m bit连续
‘1’
作为led-id帧头fh,表示一帧的起始位置;后置的1位
‘1’
表示帧尾ft,表示一帧的结束位置;为避免fh冲突需要满足m≥3,以le表示曼彻斯特编码后的比特序列;以宽度为w的明暗条纹表示led-id帧二进制序列,其中bit
‘1’
以暗条纹表示,而bit
‘0’
以亮条纹表示。
[0014]
其中,所述步骤s2中,灰度图像明暗条纹的像素宽度取决于灯具发光面条纹本身的物理宽度以及相机相对灯具的距离和姿态。
[0015]
其中,所述步骤s3具体包括以下步骤:
[0016]
s31:对灰度图像进行二值化处理,并且通过封闭轮廓搜索算法提取二值图中的四边形连通域;
[0017]
s32:设置滤波阈值,将四边形连通域中,由于噪声影响非条码区域检测的细微轮廓滤除,得到剩余的四边形轮廓;
[0018]
s43:计算四边形轮廓的四个角点坐标,并将得到的四个角点坐标进行重排序处理,得到四个粗略的角点坐标;
[0019]
s44:通过经典的亚像素角点检测算法对四个粗略的角点坐标进行优化,得到四个亚像素角点;
[0020]
s45:将灰度图像中的四边形轮廓图像调整为长方形区域图像,得到该图像对应的投影矩阵表达式;
[0021]
s46:通过直接线性变换对投影矩阵进行求解,再通过投影变换获取条码正视图。
[0022]
其中,在所述步骤s42中,记剩余的四边形轮廓为γ,四边形轮廓γ中存在n个连续点,表示为pj,其中j=0,1,...,n-1;
[0023]
在所述步骤s43中,将四边形轮廓γ的四个角点记为四边形轮廓γ的第一个坐标为p0,而在γ剩余的点中,与p0距离最大的点必为其中一个角点,不失一般性令该角点为的求解式子为:
[0024][0025]
获取第一个角点后,通过搜索与距离最大的轮廓点,将其作为第二个角点因此有:
[0026][0027]
此时与为四边形轮廓γ某一对角线位置的两个角点;进一步地,通过遍历剩余的轮廓点,搜索出与距离之和最大的轮廓点,将其作为第3个角点此时有:
[0028][0029]
类似地,第4个角点通过下式获取:
[0030][0031]
至此,完成四边形轮廓的四个角点坐标的计算。
[0032]
其中,在所述步骤s43中,计算得到的为无序角点,需要对其进行重排序处理以便后续处理,具体为:
[0033]
将以逆时针顺序排列,并且以条码短边的角点作为排列起始点,将排序后的角点记为由于受灯具发光面亮度不均匀、相机成像质量以及二值化处理的共同影响,仅为粗略的角点,至此,得到四个粗略的角点坐标。
[0034]
其中,在所述步骤s44中,为了保证后续的投影变换以及精确定位效果,通过经典的亚像素角点检测算法对四个粗略的角点坐标进行优化,在整数角点的某个邻域范围内迭代搜索得到亚像素角点
[0035]
在所述步骤s45中,将灰度图像中的四边形轮廓图像调整为宽度为wi/ρ像素且高度为hi/ρ像素的长方形区域图像,其中,ρ为比例因子,根据条纹数量以及图像尺寸合理选取ρ使得正视图中每个条纹占据一定的像素宽度;wi为灰度图像的像素宽度;hi为灰度图像的像素高度,有:
[0036]
0≤x≤w
i-1,0≤y≤h
i-1,x,y∈z
[0037]
得到该图像对应的投影矩阵具体表示为:
[0038][0039]
其中(x,y)分别表示投影所得角点的图像坐标,而(xo,yo)表示原始角点的图像坐标,s表示齐次方程的尺度因子。
[0040]
其中,在所述步骤s46中,限定元素h
33
=1,此时h通过直接线性变换0≤x≤wi/ρ-1,0≤y≤hi/ρ-1唯一求解,进而通过投影变换获取条码正视图。
[0041]
其中,所述步骤s4具体包括以下步骤:
[0042]
s41:条码正视图if(x,y)连续进行sobel边缘提取及二值化操作,得到二值图像ib(x,y),0≤x≤wi/ρ-1,0≤y≤hi/ρ-1;此时,二值图像ib(x,y)中非0元素主要分布在if(x,y)中对应明暗条纹交替区域,因此,按列统计二值图像ib(x,y)中非0元素的个数,记为f(k),其中0≤k≤wi/ρ-1,则f(k)表示为:
[0043][0044]
对应在二值图像ib(x,y)中非0元素分布的列索引处,统计数组f(k)将产生极大值;由于ib(x,y)会出现毛刺噪声,使得统计数组f(k)出现伪峰,因此需要合理设置阈值将f(k)中较小的异常值滤除;
[0045]
s42:进一步地,由于f(k)的峰值处出现明暗条纹交替,因此f(k)中连续两个峰值处分别为同一个条纹的左右边缘,从而连续两个峰值的索引之差即为对应条纹在if(x,y)中的像素宽度;引入非极大值抑制算法提取数组f(k)中极大值的索引值,将获取的索引数
组记为f
idx
(l),其中l=0,1,...,m-1,而m表示极大值的个数;对索引数组f
idx
(l)作差分运算,得到的差值数组即为各个条纹的像素宽度,记差值数组为fw(l'),因此有:
[0046]fw
(l

)=f
idx
(l

1)-f
idx
(l

),l

=0,...,m-2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0047]
根据条码构造规则可知fh中包含最宽的暗条纹,因此差值数组fw(l')中最大的数值即为fh中暗条纹的像素宽度,记为wm;最宽处暗条纹由连续m个子暗条纹组成,得单个条纹的宽度为wm/m;通过比对fw(l')中各个元素的数值,得到条纹的分布情况,由于led-id信息以条纹分布规律表示,因此根据条纹分布反推出对应的led-id;最后经过奇偶校验以及曼彻斯特解码获取原始的led-id信息,进而获取该条码的四个角点在世界坐标系中的3d坐标,即p0~p3。
[0048]
其中,所述步骤s5具体为:
[0049]
由于未判断fh在四边形区域的位置,有序角点无法保证与p0~p3顺序匹配,因此需要进一步修正角点的排列顺序,以p
′0~p
′3表示正确匹配的角点;假设fh位于图像if(x,y)的左侧,此时即有(x,y)的左侧,此时即有由于投影变换前fh的位置未知,fh可能位于图像if(x,y)的右侧,此时应有由于已获取条纹像素宽度序列fw(l'),而fh中的黑条纹占据最大像素宽度,因此根据fw(l')中最大元素的索引判断fh在if(x,y)中的位置,若最大元素索引值i
fh
大于(m-1)/2则认为fh在if(x,y)的右侧,反之亦然,因此有
[0050][0051]
最终匹配的3d-2d点对为而根据相机成像模型,有以下关系:
[0052][0053]
其中k为3
×
3相机内参矩阵,r表示3
×
3旋转矩阵,而t表示1
×
3维平移向量,完成led-id解码以及3d-2d点对匹配后,获知p0~p3与p
′0~p
′3,并且内参矩阵k可经由相机标定获取,进而通过pnp算法求解r、t,实现单灯定位。
[0054]
与现有技术相比,本发明技术方案的有益效果是:
[0055]
本发明提出了一种用于可见光定位的视觉基准方法,通过分布于灯具发光面的黑白条纹表示led-id信息,而无需增加额外的调制模块控制灯具闪烁,降低设备复杂度;精简的编码设计有利于简化恢复led-id的图像处理流程,可提高解码的可靠性并且增加定位的刷新速率;一个完整的方形灯具可提供4对3d-2d点对,借助成熟的pnp算法即可在单灯情况下实现对相机的3d定位。
附图说明
[0056]
图1为本发明所述的用于可见光定位的视觉基准方法的流程示意图;
[0057]
图2为本发明一实施例中视觉基准机制设计规则示意图;
[0058]
图3为本发明一实施例中视觉基准定位示例图;
[0059]
图4为本发明一实施例中条码信息载荷提取过程图;
[0060]
图5为本发明一实施例中视觉基准构造示例图;
[0061]
图6为本发明一实施例中采用pnp算法的pe分布图;
[0062]
图7为本发明一实施例中采用ba算法的pe分布图;
[0063]
图8为本发明一实施例中在采用pnp算法、ba算法下的pe分布cdf对比图。
具体实施方式
[0064]
附图仅用于示例性说明,不能理解为对本专利的限制;
[0065]
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
[0066]
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
[0067]
下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0068]
实施例1
[0069]
如图1所示,本实施例提供一种用于可见光定位的视觉基准方法,包括以下步骤:
[0070]
s1:构造曼彻斯特一维视觉基准机制;
[0071]
s2:基于曼彻斯特一维视觉基准机制产生带明暗条纹的灰度图像;
[0072]
s3:基于图像处理的视觉基准提取算法对灰度图像进行处理,获取条码正视图;
[0073]
s4:根据灰度图像和条码正视图进行分析计算,对条码信息载荷进行检测,获取条码的四个角点在世界坐标系中的3d坐标;
[0074]
s5:利用3d-2d点对匹配方法对3d坐标进行点对匹配后,通过pnp算法进行求解,实现单灯定位。
[0075]
本实施例在具体实施过程中,通过分布于灯具发光面的黑白条纹表示led-id信息,而无需增加额外的调制模块控制灯具闪烁,降低设备复杂度;精简的编码设计有利于简化恢复led-id的图像处理流程,可提高解码的可靠性并且增加定位的刷新速率;一个完整的方形灯具可提供4对3d-2d点对,借助成熟的pnp算法即可在单灯情况下实现对相机的3d定位。
[0076]
实施例2
[0077]
更具体的,在实施例1的基础上,具体提出了一种基于曼彻斯特编码一维视觉基准的单灯可见光成像定位方法。设计了一种基于曼彻斯特编码一维视觉基准构造方法,并且设计了基于图像处理的视觉基准提取算法、信息载荷检测算法,以及3d-2d点配对方法,进而可借助pnp算法实现单灯情况下对相机位姿的求解。本实施例具体包括以下过程:
[0078]
1.曼彻斯特一维视觉基准构造机制
[0079]
一维条形码在商品编号中应用广泛,其通过黑白条纹按照一定的规则排列表示编号信息。在商品广泛使用的交叉二五码设计思路基础之上,本实施例提出一种基于曼彻斯特编码与奇偶校验机制的一维条码,相较交叉二五码进一步精简,从而简化条码信息载荷恢复的流程,并且具备基本的检错功能。
[0080]
更具体的,假设原始的led-id信息位包含qbit,添加奇偶校验并经过曼彻斯特编码之后为2q 2bit,以lc表示添加奇偶校验后的比特序列。前置连续mbit的
‘1’
并后置1位
‘1’
,即组成一个完整的led-id信息帧。需要指出的是前mbit连续
‘1’
作为led-id帧头(frame header,fh),表示表示一帧的起始位置;后置的1位
‘1’
表示帧尾(frame tail,ft),表示表示一帧的结束位置。为避免fh冲突需要满足m≥3,以le表示曼彻斯特编码后的比特序列。以宽度为w的明暗条纹表示led-id帧二进制序列,其中bit
‘1’
以暗条纹表示,而bit
‘0’
以亮条纹表示,条纹码的设计规则如图2所示。
[0081]
在具体实施过程中,暗条纹可通过在发光表面粘贴半透光材料表示,而亮条纹对应的区域可粘贴透光材料或不做改动,因而对灯具的照明功能不会带来过多影响。接收端通过图像处理恢复led-id信息的同时,可获取平板灯的4个角点在世界坐标系(worldcoordinate system,wcs)的3d坐标及其在图像坐标系(image coordinate system,pcs)的2d坐标,进一步建立3d-2d点对匹配关系之后即可通过pnp算法求解相机在wcs的坐标,如图3所示。
[0082]
2.四边形区域提取算法
[0083]
更具体的,相较于传统ivlp系统中通过occ与卷帘快门相机配合在图像中产生黑白条纹,由于本实施例的明暗条纹不需要灯具快速闪烁产生,因此相机的快门方式可为卷帘门或全局快门。在提取led-id信息载荷之前,需要从图像中提取条码所占据的四边形区域。而为获得对比度高的条纹图像,需要将相机的曝光时间调节至较低数值,此时图像中对应发光面区域的灰度值相比背景环境的灰度值将更大有利于阈值分割。图像的像素宽度与高度分别记为wi、hi,以i(x,y)表示灰度图像的二维数据,其中0≤x≤w
i-1,0≤y≤h
i-1,x,y∈z。此外,在基于occ机制的相关方案中,条纹的像素宽度与相机相对光源的距离和姿态均无关;而本实施例中的条纹并非通过卷帘门效应产生,条纹的像素宽度取决于灯具发光面条纹本身的物理宽度以及相机相对灯具的距离和姿态。因此在检测条码信息载荷之前,有必要提取图像中不规则四边形的条码区域,并且将其调整为正视图。换言之,未经过视图调整的条码中条纹的像素宽度不均匀,而调整后的正视图中条码的像素宽度将是均匀的。具体步骤为:
[0084]
第1步:首先对灰度图像进行二值化处理,并且通过封闭轮廓搜索算法[13]s.suzuki,“topological structural analysis of digitized binary images by border following,”comput.vis.,graph.,image process.,vol.30,pp.32

46,1985提取二值图中的四边形连通域。噪声影响下,非条码区域也将检出细微轮廓,可合理设置阈值将点数过少的轮廓滤除,将滤波后剩余的轮廓记为γ。设轮廓中存在n个连续点,表示为pj,其中j=0,1,...,n-1;
[0085]
第2步:将四边形轮廓γ的4个角点记为轮廓γ的第一个坐标为p0,而在γ剩余的点中,与p0距离最大的点必为其中一个角点,不失一般性可令该角点为相当于可通过下式求解
[0086][0087]
获取第一个角点后,可通过搜索与距离最大的轮廓点,将其作为第二个角点因此有
[0088]
[0089]
此时与为四边形轮廓γ某一对角线位置的两个角点。进一步地,角点可通过遍历剩余的轮廓点,搜索出与距离之和最大的轮廓点,将其作为第3个角点此时有
[0090][0091]
类似地,第4个角点可通过下式获取
[0092][0093]
需要指出的是,为无序角点,为方便后续处理,需要将以逆时针顺序排列,并且以条码短边的角点作为排列起始点,将排序后的角点记为此外,受灯具发光面亮度不均匀、相机成像质量以及二值化处理的共同影响,仅为粗略的角点,为了保证后续的投影变换以及精确定位效果,通过经典的亚像素角点检测算法[14]a.kaehler andg.bradski,learning opencv3:computer vision in c with the opencv library.o’reilly media,inc,2016进一步优化所提取角点的图像坐标,在整数角点的某个邻域范围内迭代搜索得到亚像素角点
[0094]
第3步:将条码调整为正视图需要计算相应的单应矩阵,本文将原灰度图像中的不规则四边形区域调整成宽度为wi/ρ像素且高度为hi/ρ像素的长方形区域图像,其中ρ为比例因子,根据条纹数量以及图像尺寸合理选取ρ使得正视图中每个条纹占据一定的像素宽度。对应的投影矩阵可表达为[15]r.hartley and a.zisserman,multiple view geometry in computer vision,2nd ed.cambridge university press,2004:
[0095][0096]
其中(x,y)分别表示投影所得角点的图像坐标,而(xo,yo)表示原始角点的图像坐标,s表示齐次方程的尺度因子。限定元素h
33
=1,此时h可通过直接线性变换(direct linear transform,dlt)0≤x≤wi/ρ-1,0≤y≤hi/ρ-1唯一求解。进而可通过投影变换获取条码正视图,以if(x,y)表示,其中,如图4所示。
[0097]
3.条码信息载荷检测
[0098]
第1步:对灰度图像if(x,y)连续进行sobel边缘提取及二值化操作,得到二值图像ib(x,y)(0≤x≤wi/ρ-1,0≤y≤hi/ρ-1)。从图4可看出,条码正视图if(x,y)中存在横向分布的明暗条纹,从而经过sobel运算可提取出可明暗条纹交替的边缘,并且边缘处的横向梯度值将较大,进一步经过二值运算可提取得到条纹的边缘,因此二值图像ib(x,y)中非0元素主要分布在if(x,y)中对应明暗条纹交替区域。基于此分析,可按列统计二值图像ib(x,y)中非0元素的个数,记为f(k),其中0≤k≤wi/ρ-1,则f(k)可表示为
[0099]
[0100]
对应在二值图像ib(x,y)中非0元素分布的列索引处,统计数组f(k)将产生极大值。由于ib(x,y)可能出现毛刺噪声,使得统计数组f(k)出现伪峰,因此需要合理设置阈值将f(k)中较小的异常值滤除。
[0101]
第2步:进一步分析,由于f(k)的峰值处出现明暗条纹交替,因此f(k)中连续两个峰值处分别为同一个条纹的左右边缘,从而连续两个峰值的索引之差即为对应条纹在if(x,y)中的像素宽度。引入非极大值抑制(non-maximum suppression,nms)算法[16]a.neubeckand l.gool,“efficient non-maximum suppression,”in proc.int.conf.pattern recognit.,hong kong,china,2006,pp.850

855提取数组f(k)中极大值的索引值,将获取的索引数组记为f
idx
(l),其中l=0,1,...,m-1,而m表示极大值的个数。对索引数组f
idx
(l)作差分运算,得到的差值数组即为各个条纹的像素宽度,记差值数组为fw(l'),因此有
[0102]fw
(l

)=f
idx
(l

1)-f
idx
(l

),l

=0,...,m-2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0103]
根据条码构造规则可知fh中包含最宽的暗条纹,因此差值数组fw(l')中最大的数值即为fh中暗条纹的像素宽度,记为wm。最宽处暗条纹由连续m个子暗条纹组成,可得单个条纹的宽度为wm/m。通过比对fw(l')中各个元素的数值可得到条纹的分布情况,由于led-id信息以条纹分布规律表示,因此可根据条纹分布反推出对应的led-id。最后经过奇偶校验以及曼彻斯特解码可获取原始的led-id信息,进而可获知改条码(视觉基准)的4个角点在世界坐标系中的3d坐标,即p0~p3。
[0104]
4.3d-2d点对匹配
[0105]
由于未判断fh在四边形区域的位置,有序角点无法保证与p0~p3顺序匹配,因此需要进一步修正角点的排列顺序,以p
′0~p
′3表示正确匹配的角点。在图3中,fh位于图像if(x,y)的左侧,此时即有(x,y)的左侧,此时即有值得注意的是,由于投影变换前fh的位置未知,fh可能位于图像if(x,y)的右侧,此时应有由于已获取条纹像素宽度序列fw(l'),而fh中的黑条纹占据最大像素宽度,因此可根据fw(l')中最大元素的索引判断fh在if(x,y)中的位置,若最大元素索引值i
fh
大于(m-1)/2则认为fh在if(x,y)的右侧,反之亦然,因此有
[0106][0107]
最终匹配的3d-2d点对为而根据相机成像模型[15],有以下关系
[0108][0109]
其中k为3
×
3相机内参矩阵,r表示3
×
3旋转矩阵,而t表示1
×
3维平移向量,完成led-id解码以及3d-2d点对匹配后,可获知p0~p3与p
′0~p
′3,并且内参矩阵k可经由相机标定获取,进而可通过pnp算法[8][9]求解r、t,实现单灯定位。
[0110]
在具体实施过程中,本实施例提供的方案通过分布于灯具发光面的黑白条纹表示led-id信息,而无需增加额外的调制模块控制灯具闪烁,降低设备复杂度;其精简的编码设
计有利于简化恢复led-id的图像处理流程,可提高解码的可靠性并且增加定位的刷新速率;且在本实施例中,一个完整的方形灯具可提供4对3d-2d点对,借助成熟的pnp算法即可在单灯情况下实现对相机的3d定位。
[0111]
实施例3
[0112]
为了更充分地阐述本发明所具有的有益效果,以下结合具体实施例与相关方仿真结果的分析,进一步对本方案的有效性和先进性予以说明。
[0113]
a.曼彻斯特1维视觉基准构造示例
[0114]
以12位led-id源信息位为例,若信息序列为“{000011010001}”,经过奇校验后的序列为“{0000110100011}”,根据视觉基准构造规则以黑白条纹表示序列“{0000110100011}”,再添加fh与ft,可得如图5所示的条码,其中m=3。
[0115]
b.定位性能评估
[0116]
本实施例将结合实验结果评估所提视觉基准方案的性能。实验环境设置为1.8[m]
×
1.8[m]
×
3[m]的立体空间,在1.8[m]
×
1.8[m]的平面区域内每间隔15cm取一个测试点,总共169个测试点。除特别说明以外,实验的参数如表1所示。
[0117]
表1定位精度测试系统参数
[0118]
[0119][0120]
在169个测试点采集的图像经过解码与点对匹配后,在图6与图7分别给出了两种算法的3d定位结果分布,而在图8中给出两种算法对应的定位误差(positioning error,pe)累积概率密度函数分布图。求解投影方程所需的3dwcs坐标经由条码信息载荷检测后获取,而2d的ics坐标则由角点提取算法给出,最后根据fh所处的位置建立3d-2d匹配点对。通过匹配点对求解相机位姿所使用的算法分别为epnp算法[8]与光束法平差(bundleadjustment,ba)算法[9]。其中,ba算法的2d与3d的平均pe分别为2.25cm与2.44cm,对应epnp算法的数值分别为3.85cm与4.10cm。
[0121]
可观察到,ba算法相较于epnp算法提供了更优的定位精确度。这是由于epnp算法对相机位姿为闭式求解,其计算复杂度较低的同时可能无法通过闭式表达式一次计算达到较优解;而ba算法的位姿估计为迭代优化过程,首先需要计算重投影误差及其相对于位姿变化的雅可比矩阵,再通过高斯牛顿、lm等迭代算法优化相机的位姿,使得重投影误差最小,其计算复杂度较高的同时能够取得较优解的概率也更大,因此表现出更好的定位性能。
[0122]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献