发明内容
针对现有技术存在的问题,本发明提供了一种基于移动机器人的分布式视觉定位系统及方法。
本发明是这样实现的,一种基于移动机器人的分布式视觉定位方法,所述基于移动机器人的分布式视觉定位方法包括以下步骤:
步骤一,通过供电模块利用蓄电池给移动机器人进行供电,蓄电池采用改进的充电与放电模型;
步骤二,通过参数配置模块利用操作按键对移动机器人初始操作进行配置参数环境;通过环境参数采集模块利用传感器采集室内的温度、湿度数据信息;
步骤三,主控模块通过无线通信模块利用无线发射器接收操作控制指令,并将采集的环境参数数据通过集线器发送到中心控制服务器,无线通信模块对通信信息进行加密;
步骤四,通过摄像模块利用多个摄像器采集多维角度数据通过集线器发送给中心控制服务器,对摄像器进行非线性校正;
步骤五,通过中心控制服务器集中处理移动机器人的分布式视觉数据从而进行控制移动机器人的定位操作;
步骤六,通过驱动模块利用驱动轮给移动机器人提供移动操作;通过显示模块利用显示器显示配置参数数据和环境参数数据。
进一步,所述步骤二的温度传感器的温度修正算法为:
首先,在某一固定的温度下,传感器的输入输出值用多项式函数表示:
其中:x是传感器的输出,y是传感器所测量的物理量的真实值,ai根据实验数据利用最小二乘拟合的方法计算;
不同温度下,ai的会发生变化:
最终输出则表示为:
将所有的bji排成一个列向量:
定义一个辅助矩阵:
则传感器的经过温度修正后的测量值为:
而传感器测量量的真实值为:
转换成下面的普通的线性代数方程:
FT·z=FT·F·b;
上式中FT是F的转置。
进一步,所述步骤三的加密的算法为:
设置代表域K的代数闭域为
K
*=K/{0}为乘法群,且其组成元素均为K中的非零元素,若代数闭域
的仿射平面为
则:
已知代数闭域
上的仿射平面曲线是由既约多项式
中的零点组成的集合:
已知C是仿射平面曲线,P=(x,y)为此曲线上的一个点,若条件满足:
则P=(x,y)即为C上的奇异点,则曲线C即是奇异曲线,相反,若曲线上的任意点均不能满足上述条件,此曲线即为非奇异曲线;
网络通信中椭圆曲线E的判别公式:
式中,仅当δ=0时,该曲线为奇异曲线。
本发明的另一目的在于提供一种实现所述基于移动机器人的分布式视觉定位方法的基于移动机器人的分布式视觉定位系统,所述基于移动机器人的分布式视觉定位系统包括:
供电模块、参数配置模块、环境参数采集模块、主控模块、无线通信模块、集线器、摄像模块、中心控制服务器、驱动模块、显示模块;
供电模块,与主控模块连接,用于通过蓄电池给移动机器人进行供电;
参数配置模块,与主控模块连接,用于通过操作按键对移动机器人初始操作进行配置参数环境;
环境参数采集模块,与主控模块连接,用于通过传感器采集室内的温度、湿度等数据信息;
主控模块,与供电模块、参数配置模块、环境参数采集模块、无线通信模块、驱动模块、显示模块连接,用于通过单片机控制各个模块正常工作;
无线通信模块,与主控模块、集线器连接,用于通过无线发射器接收操作控制指令和发送采集的环境参数数据;
集线器,与无线通信模块、摄像模块、中心控制服务器连接,用于增强无线通信信号;
中心控制服务器,与集线器连接,用于通过多个摄像器采集多维角度数据;
摄像模块,与集线器连接,用于集中处理移动机器人的分布式视觉数据从而进行控制移动机器人的定位操作;
驱动模块,与主控模块连接,用于通过驱动轮给移动机器人提供移动操作;
显示模块,与主控模块连接,用于通过显示器显示配置参数数据和环境参数数据。
进一步,所述中心控制服务器包括位姿估计模块、地图创建模块、定位追踪模块、数据存储模块;
位姿估计模块,用于在Tsai算法求解旋转矩阵R的基础上,改进平移向量T的求解过程;
地图创建模块,用于采用视觉定位与RFID定位相结合的方法构建室内地图;
定位追踪模块,用于根据创建的地图通过定位追踪程序对移动机器人的位置进行定位
数据存储模块,用于通过存储器存储采集的环境参数数据、室内地图数据。
本发明的另一目的在于提供一种应用所述基于移动机器人的分布式视觉定位方法的信息数据处理终端。
本发明的优点及积极效果为:
(1)本发明通过位姿估计模块在Tsai算法求解旋转矩阵R的基础上,改进平移向量T的求解过程,具体是利用了相机焦距和特征点间距离作为冗余信息进行改进,从而提高位姿估计的精度;以及将传统Tsai算法求解平移向量T的过程由迭代计算改为线性计算,从而提高位姿估计的实时性,通过对温度传感器进行温度补偿,提高了温度测量及定位的准确性。
(2)通过地图创建模块在室内地图进行构建时,采用视觉定位与RFID定位相结合的方法,解决了摄像机视界局限和障碍物阻挡等问题,提高了机器人定位的精度;考虑了室内环境下可辨识环境路标缺失带来的语义地图构建困难,采用QRcode技术表述环境语义特征,提高了语义地图构建的准确度,为实现人机交互和机器人完成语义命令打下良好的基础,通过对无线通信模块进行加密处理,避免了信息的泄露。
(3)通过对摄像器进行校正处理,避免了摄像器监控造成的误差,提高了定位的准确性。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图及具体实施例对本发明的应用原理作进一步描述。
如图1所示,本发明实施例提供的基于移动机器人的分布式视觉定位方法包括以下步骤:
步骤S101,通过供电模块利用蓄电池给移动机器人进行供电;
步骤S102,通过参数配置模块利用操作按键对移动机器人初始操作进行配置参数环境;通过环境参数采集模块利用传感器采集室内的温度、湿度等数据信息;
步骤S103,主控模块通过无线通信模块利用无线发射器接收操作控制指令,并将采集的环境参数数据通过集线器发送到中心控制服务器;
步骤S104,通过摄像模块利用多个摄像器采集多维角度数据通过集线器发送给中心控制服务器;
步骤S105,通过中心控制服务器集中处理移动机器人的分布式视觉数据从而进行控制移动机器人的定位操作;
步骤S106,通过驱动模块利用驱动轮给移动机器人提供移动操作;通过显示模块利用显示器显示配置参数数据和环境参数数据。
本发明实施例提供的基于移动机器人的分布式视觉定位方法通过参数配置模块利用操作按键对移动机器人初始操作进行配置参数环境;通过环境参数采集模块利用传感器采集室内的温度、湿度等数据信息,温度传感器的温度修正算法为:
首先,在某一固定的温度下,设传感器的输入输出值用多项式函数表示:
其中:x是传感器的输出,y是传感器所测量的物理量的真实值,ai可以根据实验数据利用最小二乘拟合的方法计算;
然后考虑温度的影响,不同温度下,上面公式中ai的会发生变化:
最终输出则可以表示为:
将所有的bji排成一个列向量
定义一个辅助矩阵:
则传感器的经过温度修正后的测量值为:
而传感器测量量的真实值为:
转换成下面的普通的线性代数方程:
FT·z=FT·F·b
上式中FT是F的转置;
本发明实施例提供的基于移动机器人的分布式视觉定位方法主控模块通过无线通信模块利用无线发射器接收操作控制指令,并将采集的环境参数数据通过集线器发送到中心控制服务器,无线通信模块对通信信息进行加密,加密算法为:
设置代表域K的代数闭域为
K
*=K/{0}为乘法群,且其组成元素均为K中的非零元素,若代数闭域
的仿射平面为
即:
则
已知代数闭域
上的仿射平面曲线是由既约多项式
中的零点组成的集合,即
已知C是仿射平面曲线,P=(x,y)为此曲线上的一个点,若条件满足
则P=(x,y)即为C上的奇异点,则曲线C即是奇异曲线,相反,若曲线上的任意点均不能满足上述条件,此曲线即为非奇异曲线;
网络通信中椭圆曲线E的判别公式能够描述如下:
式中,仅当δ=0时,该曲线为奇异曲线;
当E进行同构时,其性质不变,因此可取其简单类型进行计算,即为标准型加密过程,可以分别描述如下:
若Char(K)≠2,3则y2=x3+a4x+a6
若Char(K)=2,且j≠0则y2+xy=x3+a2x2+a6
若Char(K)=2,且j=0则y2+a3y=x3+a4x+a6
若Char(K)=3,且j≠0则y2=x3+x2+a6
若Char(K)=3,且j≠0则y2=x3+x2+a6
本发明实施例提供的基于移动机器人的分布式视觉定位方法通过摄像模块利用多个摄像器采集多维角度数据通过集线器发送给中心控制服务器,对摄像器进行非线性校正,校正方法为:
(1)测试前把摄像器内部的自动增益开关断开,使摄像器的放大电路处于线性工作状态,设光强监测器测得的光强为A,灰度板某阶梯的透射率为T,则其透射光强E=AT,微型计算机测得的光电信号为V,则V与E之间的关系可表示为:V=BEγ;
式中:式中B为常数;V~E曲线反映了摄像器的光电转换特性。
(2)将某一实验点(Vo,Eo)的光电转换系数定为1,则任一实验点(V,E)所对应的光电转换相对系数Kγ为:
(3)将所有的实验数据点(Kγ,V)进行曲线拟合,得到Kγ~V曲线,将计算输出的任一光电信号数据,除以其对应的Kγ值,即可得到修正值。
步骤五,通过中心控制服务器集中处理移动机器人的分布式视觉数据从而进行控制移动机器人的定位操作;
步骤六,通过驱动模块利用驱动轮给移动机器人提供移动操作;通过显示模块利用显示器显示配置参数数据和环境参数数据。
如图2所示,本发明提供的基于移动机器人的分布式视觉定位系统包括:供电模块1、参数配置模块2、环境参数采集模块3、主控模块4、无线通信模块5、集线器6、摄像模块7、中心控制服务器8、驱动模块9、显示模块10。
供电模块1,与主控模块4连接,用于通过蓄电池给移动机器人进行供电;
参数配置模块2,与主控模块4连接,用于通过操作按键对移动机器人初始操作进行配置参数环境;
环境参数采集模块3,与主控模块4连接,用于通过传感器采集室内的温度、湿度等数据信息;
主控模块4,与供电模块1、参数配置模块2、环境参数采集模块3、无线通信模块5、驱动模块9、显示模块10连接,用于通过单片机控制各个模块正常工作;
无线通信模块5,与主控模块4、集线器6连接,用于通过无线发射器接收操作控制指令和发送采集的环境参数数据;
集线器6,与无线通信模块5、摄像模块7、中心控制服务器8连接,用于增强无线通信信号;
中心控制服务器8,与集线器6连接,用于通过多个摄像器采集多维角度数据;
摄像模块7,与集线器6连接,用于集中处理移动机器人的分布式视觉数据从而进行控制移动机器人的定位操作;
驱动模块9,与主控模块4连接,用于通过驱动轮给移动机器人提供移动操作;
显示模块10,与主控模块4连接,用于通过显示器显示配置参数数据和环境参数数据。
本发明提供的中心控制服务器8包括位姿估计模块、地图创建模块、定位追踪模块、数据存储模块;
位姿估计模块,用于在Tsai算法求解旋转矩阵R的基础上,改进平移向量T的求解过程;
地图创建模块,用于采用视觉定位与RFID定位相结合的方法构建室内地图;
定位追踪模块,用于根据创建的地图通过定位追踪程序对移动机器人的位置进行定位
数据存储模块,用于通过存储器存储采集的环境参数数据、室内地图数据等。
本发明提供的位姿估计模块估计方法如下:
步骤1、对使用的相机进行标定,得到相机焦距;
步骤2、在相机的当前使用位姿下,对空间中的共面的至少5个特征点进行成像,以特征点中任意一个特征点P0为原点建立世界坐标系,并获取特征点的世界坐标和图像坐标;
步骤3、根据特征点的世界坐标和图像坐标,利用Tsai算法求解相机所在相机坐标系相对于世界坐标系的旋转矩阵R;
步骤4、根据步骤3求得的旋转矩阵R、步骤1标定得到的相机焦距、以及求解得到的特征点之间线段长度,求解相机所在相机坐标系相对于世界坐标系的平移向量T;具体为,
根据特征点在等效成像平面上的投影点坐标、即特征点的图像坐标,选取投影点间的任意一条线段、记线段长度为l,并获取构成该线段的两个投影点对应的两个特征点、记两个特征点分别为P1和P2;
将步骤3求得的旋转矩阵R作用于世界坐标系,得到旋转后的新坐标系,该新坐标系平面与相机等效成像平面平行;
根据旋转矩阵R和特征点P1、P2的世界坐标,求解特征点P1、P2在新坐标系中的坐标,进而获取特征点P1、P2在新坐标系平面上的投影点间的线段、记新线段长度为L;
根据线段长度l和新线段长度L、步骤1标定得到的相机焦距、以及步骤2获取的特征点P0的图像坐标,由以下公式求解平移向量T,
T=(x0c,y0c,z0c)T
其中,f为相机焦距,x0i、y0i为特征点P0的图像坐标,x0c、y0c、z0c为相机坐标系的相机坐标;
步骤5、根据步骤3求得的旋转矩阵R和步骤4求得的平移向量T,求解相机的位姿参数。
本发明提供的步骤1中的标定采用张正友标定法。
本发明提供的步骤2中的获取特征点的世界坐标和图像坐标,具体为,
在空间中布置一个平面合作目标,该平面合作目标上包含至少5个特征点;
以特征点中任意一个特征点P0为原点建立世界坐标系,通过工具测得特征点的世界坐标;
使用已标定好焦距的相机,在相机的当前使用位姿下,对平面合作目标进行成像;
利用图像处理算法,从相机采集的平面合作目标图像中提取特征点的图像坐标。
本发明提供的地图创建模块创建方法如下:
(1)采集环境图像,实现机器人视觉定位;
移动机器人通过双目视觉传感器采集环境图像,获取人工路标集合;
考虑到极几何约束,基于三角测量原理,利用视差法获取图像中人工路标的深度信息,并计算该路标的全局坐标;
通过拓展卡尔曼滤波算法,对机器人位姿及人工路标的位置进行定位;
(2)利用RFID系统进行机器人接收信号强度值定位;
根据实际参考标签的坐标和阅读器读取的RSS值,求取虚拟参考标签的坐标值和RSS值;选用对数距离路径损耗模型表述虚拟参考标签与实际参考标签上的能量差值随两者距离的变化,获取虚拟标签的RSS值;
基于边界虚拟标签算法确定目标标签的坐标值;
根据目标标签和参考标签RSS值的差来选取最近邻标签;设定阈值,构建模糊地图;对于目标标签来说,由于每个阅读器都有自己对应的一个模糊地图,将多个模糊地图求取交集可以求得最近邻参考标签,从而确定目标标签的坐标;
(3)修正机器人的全局坐标值,并利用自适应谱聚类算法进行地图划分;
修正机器人及人工路标的坐标值;
根据视觉传感器和RFID系统获得的机器人坐标值,利用最小二乘法(LeastSquare,LS)对两者进行修正,得到更加准确的机器人全局坐标值;
利用自适应谱聚类算法,将修正后的机器人坐标集合进行拓扑层划分;
(4)语义信息更新;
机器人判断视界中的红色圆形区域,并利用椭圆拟合方法快速识别和读取QRcode中的语义信息;
根据QRcode中的语义信息,将机器人观测点和相应物品之间进行关联,每个子集的语义拓扑地图可以实时更新;
根据更新的语义信息实时修正拓扑层子地图分类,直至机器人完成遍历性扫描。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。