CN105631859B - 三自由度仿生立体视觉系统 - Google Patents
三自由度仿生立体视觉系统 Download PDFInfo
- Publication number
- CN105631859B CN105631859B CN201510964401.3A CN201510964401A CN105631859B CN 105631859 B CN105631859 B CN 105631859B CN 201510964401 A CN201510964401 A CN 201510964401A CN 105631859 B CN105631859 B CN 105631859B
- Authority
- CN
- China
- Prior art keywords
- servomotor
- theta
- fpga
- image
- board
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
Landscapes
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明公开了一种三自由度仿生立体视觉系统,包括两只仿生眼、一个仿生颈部云台、三个三轴伺服电机驱动器、FPGA信号处理板卡和DSP信号处理器构成,每只仿生眼都包括眼球摄像装置、三个伺服电机、FPGA图像采集板卡、电机和应变片力传感器。本发明的有益效果为:结构简单,采用伺服电机实现快速位置伺服,仿生颈部云台控制仿生眼的三自由度运动,可实现全方位的图像捕捉;FPGA并行处理图像处理模块中的算法,提高了处理的效率和精度,实现目标的实时跟踪和三维定位。
Description
技术领域
本发明涉及仿生机器人技术领域,具体而言,涉及一种三自由度仿生立体视觉系统。
背景技术
现有视觉系统在感知定位、运动跟踪、快速并行处理方面与人眼有很大差距。例如,现有的仿生眼睛大多是两自由度的,只有水平和竖直两个自由度,一般只能捕捉到小范围的图像,不能很精确的定位,也不能实现全方位的捕捉,在对采集的图像处理上处理速度较慢、精度也不高,无法快速准确的实现目标的实时跟踪和三维定位。这些问题已成为机器人视觉技术发展的瓶颈。
发明内容
为解决上述问题,本发明的目的在于提供一种可实现全方位图像捕捉、跟踪速度快、定位精度高的三自由度仿生立体视觉系统。
本发明提供了一种三自由度仿生立体视觉系统,包括:
支架,其上部对称的设有第一转轴和第二转轴,所述支架下部的中间位置设有第三转轴;
第一仿生眼,其包括第一眼球、第一摄像装置、第一伺服电机、第二伺服电机、第三伺服电机、第一FPGA图像采集板卡、第一电机和第一应变片力传感器;所述第一眼球为球形腔,并可转动的安装在所述第一转轴上,所述第一眼球外部安装有第一伺服电机、第二伺服电机和第三伺服电机;所述第一伺服电机位于所述第一眼球的X轴方向上,并通过第一伺服电机的扭矩臂与所述第一眼球连接;所述第二伺服电机位于所述第一眼球的Y轴方向上,并通过所述第二伺服电机的扭矩臂与所述第一眼球连接;所述第三伺服电机位于所述第一眼球的Z轴方向上,并通过所述第三伺服电机的扭矩臂与所述第一眼球连接;第一摄像装置位于所述第一眼球内的前半部,与所述第二伺服电机的扭矩臂相对设置,且位于所述第一眼球的Y轴方向的反方向上;所述第一FPGA图像采集板卡设置在所述第一眼球内;所述第一摄像装置包括左右相邻设置的第一摄像头和第二摄像头,所述第一摄像头为广角短焦摄像头,所述第二摄像头为长焦摄像头;所述第一电机和所述第一应变片力传感器均位于所述第一眼球内,并与所述第一摄像装置连接;
第一三轴伺服电机驱动器,其设置在所述第一仿生眼外,所述第一伺服电机、所述第二伺服电机和所述第三伺服电机均与所述第一三轴伺服电机驱动器连接;
第二仿生眼,其包括第二眼球、第二摄像装置、第四伺服电机、第五伺服电机、第六伺服电机、第二FPGA图像采集板卡、第一电机和第一应变片力传感器;所述第二眼球为球形腔,并可转动的安装在所述第二转轴上,所述第二眼球外部安装有第四伺服电机、第五伺服电机和第六伺服电机;所述第四伺服电机位于所述第二眼球的X轴方向的反方向上,并与所述第一伺服电机对称设置,并通过第二X轴伺服电机的扭矩臂与所述第二眼球连接;所述第五伺服电机位于所述第二眼球的Y轴方向上,并通过所述第五伺服电机的扭矩臂与所述第二眼球连接;所述第六伺服电机位于所述第二眼球的Z轴方向上,并通过所述第六伺服电机的扭矩臂与所述第二眼球连接;第二摄像装置位于所述第二眼球内的前半部,与所述第五伺服电机的扭矩臂相对设置,且位于所述第二眼球的Y轴方向的反方向上;所述第二FPGA图像采集板卡设置在所述第二眼球内;所述第二摄像装置包括左右相邻设置第三摄像头和第四摄像头,所述第三摄像头为广角短焦摄像头,所述第四摄像头为长焦摄像头;所述第二电机和所述第二应变片力传感器均位于所述第二眼球内,并与所述第二摄像装置连接;
第二三轴伺服电机驱动器,其设置在所述第二仿生眼外,所述第四伺服电机、所述第五伺服电机和所述第六伺服电机均与所述第二三轴伺服电机驱动器连接;
仿生颈部云台,其为球形腔,且可转动的安装在所述第三转轴上,所述仿生颈部周向上均匀安装有第七伺服电机、第八伺服电机和第九伺服电机;
第三三轴伺服电机驱动器,其设置在所述仿生颈部云台外,所述第七伺服电机、所述第八伺服电机和所述第九伺服电机均与所述第三三轴伺服电机驱动器连接;
FPGA信号处理板卡,其与所述第一三轴伺服电机驱动器、所述第二三轴伺服电机驱动器、所述第三三轴伺服电机驱动器、所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡双向通信连接;
DSP信号处理器,其与所述FPGA信号处理板卡连接。
作为本发明进一步的改进,所述第一FPGA图像采集板卡包括第一FIFO存储器、第一SDRAM控制模块、第一SDRAM存储器、第一PROM存储器、第一图形算法处理模块、第二FIFO存储器、第一寄存器控制模块,第一同步信号控制模块和第一摄像头控制模块,所述第一图形算法处理模块上设有第一寄存器;
所述第一FIFO存储器与所述第一SDRAM控制模块通信连接,所述第一SDRAM控制模块与所述第一SDRAM存储器双向通信连接,所述第一SDRAM控制模块与所述第一图形算法处理模块通信连接,所述第一图形算法处理模块与所述第二FIFO存储器通信连接,所述第一寄存器控制模块与所述第一寄存器通信连接,所述第一摄像头控制模块与所述第一同步信号控制模块和所述第一寄存器控制模块双向通信连接,所述第一PROM存储器与所述第一FPGA图像采集板卡通信连接;
所述第二FPGA图像采集板卡包括第三FIFO存储器、第二SDRAM控制模块、第二SDRAM存储器、第二PROM存储器、第二图形算法处理模块、第四FIFO存储器、第二寄存器控制模块,第二同步信号控制模块和第二摄像头控制模块,所述第二图形算法处理模块上设有第二寄存器;
所述第三FIFO存储器与所述第二SDRAM控制模块通信连接,所述第二SDRAM控制模块与所述第二SDRAM存储器双向通信连接,所述第二SDRAM控制模块与所述第二图形算法处理模块通信连接,所述第二图形算法处理模块与所述第四FIFO存储器通信连接,所述第二寄存器控制模块与所述第二寄存器通信连接,所述第二摄像头控制模块与所述第二同步信号控制模块和所述第二寄存器控制模块双向通信连接,所述第二PROM存储器与所述第二FPGA图像采集板卡通信连接。
作为本发明进一步的改进,述FPGA信号处理板卡包括第一FPGA处理板卡和第二FPGA处理板卡,所述第一FPGA处理板卡通过第五FIFO存储器与所述第二FPGA处理板卡通信连接;其中,
所述第一FPGA处理板卡包括数据转换模块、伺服电机控制模块、第一外部同步信号控制模块、第一FIFO存储器控制模块和以太网接口;
所述第二FPGA处理板卡包括算法处理模块、第二外部同步信号控制模块、第二FIFO存储器控制模块;
所述数据转换模块与所述算法处理模块通信连接,所述算法处理模块与所述第二FIFO存储器控制模块通信连接,所述第二FIFO存储器控制模块与所述第五FIFO存储器通信连接,所述第五FIFO存储器与所述第一FIFO存储器通信连接,所述第一外部同步信号控制模块和所述第二外部同步信号控制模块双向通信连接。
作为本发明进一步的改进,所述第一SDRAM存储器设于所述第一FPGA图像采集板卡或设于所述第一FPGA图像采集板卡外,所述第一PROM存储器设于所述第一FPGA图像采集板卡外;
所述第二SDRAM存储器设于所述第二FPGA图像采集板卡或设于所述第一FPGA图像采集板卡外,所述第二PROM存储器设于所述第二FPGA图像采集板卡外。
作为本发明进一步的改进,所述第一FPGA处理板卡通过所述第一外部同步信号控制模块与外部同步信号双向通信连接,所述第一FPGA处理板卡通过所述以太网接口连接上位机。
本发明还提供了采用所述三自由度仿生立体视觉系统实现目标的实时跟踪和三维定位的方法为:
步骤1,所述第一摄像装置和所述第二摄像装置通过所述第一仿生眼和所述第二仿生眼的运动,拍摄全场景的视频图像,具体包括:
在小范围内,所述第一仿生眼和所述第二仿生眼分别在所述第一伺服电机、所述第二伺服电机、所述第三伺服电机和所述第四伺服电机、所述第五伺服电机、所述第六伺服电机的驱动下进行俯仰、绕光轴、左右运动,捕捉小范围的图像;
在大范围内,所述第一FPGA处理板卡下发控制指令到所述第七伺服电机、所述第八伺服电机和所述第九伺服电机,所述第七伺服电机、所述第八伺服电机和所述第九伺服电机控制所述仿生颈部云台进行侧曲运动、摇摆运动和俯仰运动,所述仿生颈部云台运动带动所述第三转轴运动,进而带动所述第一仿生眼和所述第二仿生眼运动,
步骤2,所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡分别将所述第一摄像装置和所述第二摄像装置拍摄到的视频模拟信号转换为视频数字信号,并存储图像的数字信号;
步骤3,所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡对采集到的图像进行滤波处理,消除述第一摄像装置和所述第二摄像装置自身的信号干扰,并将滤波处理后的图像传输给所述第二FPGA处理板卡;
步骤4,所述第二FPGA处理板卡中的算法处理模块对滤波后的图像进行立体匹配;
步骤5;所述第二FPGA处理板卡中的算法处理模块对匹配后的视差进行三维重建,还原三维深度信息;
步骤6,对上一步处理后的图像进行稳像处理;
步骤7,对稳像后的图像进行均值移动处理。
作为本发明进一步的改进,步骤4具体包括:
步骤41,所述FPGA处理板卡下发控制指令至所述第一伺服电机、所述第二伺服电机、所述第三伺服电机、所述第四伺服电机、所述第五伺服电机、和所述第六伺服电机,控制所述第一仿生眼和所述第二仿生眼注视空间物体的同一目标特征点P,使所述目标特征点P在所述第一仿生眼中的图像和在所述第二仿生眼中的图像分别与所述第一仿生眼的光心位置l和所述第二仿生眼的光心位置r重合;
步骤42,建立所述第一仿生眼坐标系、所述第二仿生眼坐标系和世界坐标系,所述第一仿生眼坐标系是以所述第二仿生眼的光心位置l为原点建立的三维坐标系,所述第二仿生眼坐标系是以所述第二仿生眼的光心位置r为原点建立的三维坐标系,所述世界坐标系是以所述第二仿生眼的光心位置和所述第二仿生眼的光心位置之间的中点位置为原点建立的三维坐标系;
步骤43,获取所述第一仿生眼和所述第二仿生眼在三个方向上的转角信息,包括所述第一仿生眼的光轴方向和X轴的夹角θ1、所述第一仿生眼的光轴方向和Y轴的夹角α1、所述第一仿生眼的光轴方向和Z轴的夹角β1、所述第二仿生眼的光轴方向和X轴的夹角θ2′、所述第二仿生眼的光轴方向和Y轴的夹角α2、所述第二仿生眼的光轴方向和Z轴的夹角β2;
步骤44,根据三角几何法,得到:
计算得到所述目标特征点P与所述第一仿生眼的光心位置l之间的距离l1、所述目标特征点P与所述第二仿生眼的光心位置r之间的距离l2:
其中,θ2′+θ2=π,b为光心位置l和光心位置r之间的距离;
步骤45,根据三角几何关系,得到:
xl=l1cosθ1;yl=l1cosα1;zl=l1cosβ1;
xr=l1cosθ2;yr=l1cosα2;zr=l1cosβ2;
得出所述目标特征点P在所述第一仿生眼坐标系下的坐标(xl,yl,zl)和在所述第二仿生眼坐标系下的坐标(xr,yr,zr);
步骤46,假定所述目标特征点P在所述第一仿生眼中的图像和在所述第二仿生眼中的图像在同一个平面上,则所述目标特征点P在所述第一仿生眼坐标系和在所述第二仿生眼坐标系下的y坐标相同,即:
yl=yr;
根据三角几何关系,得到:
计算得到:
记视差D=xl-xr,根据步骤45中计算得到的坐标(xl,yl,zl)和坐标(xr,yr,zr),计算得到:
得到所述目标特征点P在所述世界坐标系下的世界坐标(XW,YW,ZW),即得到所述目标特征点P的深度信息;
或,
其中,所述第一仿生眼和所述第二仿生眼的焦距均为f。
作为本发明进一步的改进,步骤5具体包括:
步骤51,在不同的角度和不同的位置,所述第一摄像装置和所述第二摄像装置围绕待重建物体连续拍摄图像,对多幅连续图像通过纹理映射,获取待重建物体的二维图像序列,对二维图像序列中相邻两幅图像之间利用SIFT特征匹配算法提取特征点并进行匹配,对得到的特征点进行基于两幅图像的三维重建,得到两幅图像间的重建三维点以及投影矩阵;
步骤52,从第一幅图像开始计算相邻三幅图像之间的公共匹配点;
步骤53,对相邻三幅图像中的第一幅图像、第二幅图像以及第二幅图像、第三幅图像对由步骤52得到的公共匹配点进行基于两幅图像的三维重建,将第一图像、第二幅图像重建三维点的重建结果变换到第二图像、第三幅图像所在坐标系下,由第二幅图像、第三幅图像重建三维点的重建结果与变换后的第一幅图像、第二幅图像的重建结果求出射影深度,由公共匹配点求出射影深度后,可将步骤51中得到的所有重建三维点进行坐标变换以及比例变换;
步骤54,利用简化迭代最近点算法ICP,先由公共匹配点的重建结果计算步骤53中两组重建三维点间的旋转矩阵Ricp和平移向量Ticp,再利用所求得的旋转矩阵Ricp和平移向量Ticp,将由步骤53执行坐标变换和比例变换的所有重建三维点的重建结果变换到第二幅图像、第三幅图像所选取的坐标系下,从而将前三幅图像的重建结果进行叠加;
步骤55,依次增加新图像,重复执行步骤52-54直至整个二维图像序列。
作为本发明进一步的改进,步骤6具体包括:
步骤61,所述第一FPGA板卡测量所述第一电机和所述第二电机的电流突变,得到所述第一摄像装置和所述第二摄像装置的旋转加速度;
步骤62,所述第一FPGA板卡测量所述第一应变片力传感器和所述第二应变片力传感器的应变,得到所述第一摄像装置和所述第二摄像装置的平移加速度;
步骤63,所述第二FPGA板卡对所述第一摄像装置和所述第二摄像装置拍摄的图像的前帧图像、后帧图像进行匹配运动估计;
步骤64,步骤61中得到的旋转加速度、步骤62中得到的平移加速度作和步骤63中得到的匹配运动结果反馈给所述第二FPGA板卡;
步骤65,通过所述算法处理模块,提取图像的SIFT特征,进行特征点匹配,并利用步骤4中的方法计算特征点的三维坐标,匹配所述第一摄像装置和所述第二摄像装置拍摄的图像的前帧图像、后帧图像的SIFT特征,转换所有SIFT特征得到同组特征点帧间的运动三维坐标变化,通过最小二乘法求解特征点方程,得到旋转矩阵和平移向量得到所述第一摄像装置和所述第二摄像装置补偿运动所需旋转的速度和方向,并发送给所述伺服电机控制模块,控制所述第一摄像装置和所述第二摄像装置的运动,实现所述第一摄像装置和所述第二摄像装置拍摄图像的稳像。
作为本发明进一步的改进,步骤7具体包括:
步骤71,所述算法处理模块对所述第一摄像装置和所述第二摄像装置获取的图像区域利用椭圆区域表示该跟踪目标,对该目标区域内的图像视频中的每一帧图像逐一进行均值移动计算,获取目标区域的极值位置;
步骤72,根据获得的极值位置,使用核外形函数计算出对应该极值点的最优带宽矩阵;
步骤73,根据所述极值位置和所述最优带宽矩阵得到每个跟踪目标区域的椭球体描述,获取该跟踪目标的大小、方向和位置。
本发明的有益效果:
1、结构简单,采用伺服电机实现快速位置伺服,仿生颈部云台控制仿生眼的三自由度运动,可实现全方位的图像捕捉;
2、FPGA并行处理图像处理模块中的算法,提高了处理的效率和精度,实现目标的实时跟踪和三维定位。
附图说明
图1为本发明实施例所述的一种三自由度仿生立体视觉系统的示意图;
图2为图1的电气控制框图;
图3为图1中仿生眼内的FPGA图像采集板卡的示意图;
图4为图1中FPGA信号处理板卡的示意图;
图5为采用图1的系统实现目标的实时跟踪和三维定位的方法的流程图;
图6为图5中步骤4的流程示意图;
图7图6中求解目标特征点深度信息的原理示意图;
图8为图5中步骤5的流程示意图;
图9为图5中步骤6的流程示意图;
图10为步骤6采用的算法模型;
图11为图5中步骤7的流程示意图。
图中,
1、支架;11、第一转轴;12、第二转轴;13、第三转轴;21、第一眼球;22、第一摄像装置;23、第一伺服电机;25、第三伺服电机;31、第二眼球;32、第二摄像装置;33、第四伺服电机;35、第六伺服电机;4、仿生颈部云台;51、第七伺服电机;52、第八伺服电机;53、第九伺服电机。
具体实施方式
下面通过具体的实施例并结合附图对本发明做进一步的详细描述。
实施例1,人体解剖学表明,人的眼睛近似球形,位于眼眶内。晶状体:富有弹性,形似双凸透镜的透明体,晶状体的功能是充当凸透镜,使进入眼内的光线折射成像。当人看远处时晶状体的焦距变长,看近处时晶状体的焦距将变短。每只人眼有6条肌肉,三个自由度,双眼不单独运动,而是在神经控制下进行共轭运动(扫视运动,平滑追踪)、异向运动(辐辏运动,散开运动)、稳态注视运动(震颤,微扫视,慢漂移)、反射运动(前庭动眼仿射,视动反射)等运动。
神经层由浅向深部由3级神经元构成。最浅层为感光细胞,有两种细胞,即视锥细胞和视杆细胞。视杆细胞在光线较暗时活动,有较高的光敏度,但不能作精细的空间分辨,且不参与色觉。在较明亮的环境中以视锥细胞为主,它能提供色觉以及精细视觉。在人的视网膜中,视锥细胞约有600~800万个,视杆细胞总数达1亿以上。它们似以镶嵌的形式分布在视网膜中;其分布是不均匀的,在视网膜黄斑部位的中央凹区,几乎只有视锥细胞。这一区域有很高的空间分辨能力(视锐度,也叫视力)。它还有良好的色觉,对于视觉最为重要。中央凹以外区域,两种细胞兼有,离中央凹越远视杆细胞越多,视锥细胞则越少。
人的颈脖子肌肉繁多,按功能控制头部运动的肌肉主要有:胸锁乳突肌,前斜角肌,中斜角肌,后斜角肌,小斜角肌,斜方肌,头半棘肌,颈半棘肌,头最长肌,头夹肌,颈夹肌等。整体实现头部侧屈、头部前俯后仰、摇头等三个自由度。
根据上述人眼、颈部功能及特性,如图1和2所示,本发明实施例的一种三自由度仿生立体视觉系统,该系统机构部分由两个三自由度球形仿生眼(模拟六条动眼肌肉),一个三自由度颈部云台(模拟颈部肌肉)组成。每个仿生眼又由两个摄像头,一个为广角短焦摄像头模拟视杆细胞提高眼睛的视野,一个长焦模拟视锥细胞提高眼睛的定位精度。在视觉过程中,小范围视野调整通过球关节眼球调整,大范围场景切换通过三自由度视觉系统平台移动,调整视觉平台的观察方位,从而实现全场景的视觉信息获取。
支架1上部对称的设有第一转轴11和第二转轴12,支架1下部的中间位置设有第三转轴13。第一仿生眼包括第一眼球21、第一摄像装置22、第一伺服电机23、第二伺服电机、第三伺服电机25、第一FPGA图像采集板卡、第一电机和第一应变片力传感器;第一眼球21为球形腔,并可转动的安装在第一转轴11上,第一眼球21外部安装有第一伺服电机23、第二伺服电机和第三伺服电机25;第一伺服电机23位于第一眼球的X轴方向上,并通过第一伺服电机23的扭矩臂与第一眼球21连接;第二伺服电机位于第一眼球21的Y轴方向上,并通过第二伺服电机的扭矩臂与第一眼球21连接;第三伺服电机25位于第一眼球21的Z轴方向上,并通过第三伺服电机25的扭矩臂与第一眼球21连接;第一摄像装置22位于第一眼球21内的前半部,与第二伺服电机的扭矩臂相对设置,且位于第一眼球21的Y轴方向的反方向上;第一FPGA图像采集板卡设置在第一眼球21内;第一摄像装置22包括左右相邻设置的第一摄像头和第二摄像头,第一摄像头为广角短焦摄像头,第二摄像头为长焦摄像头;第一电机和第一应变片力传感器均位于第一眼球21内,并与第一摄像装置连接。第一三轴伺服电机驱动器设置在第一眼球21外,第一伺服电机23、第二伺服电机和第三伺服电机25均与第一三轴伺服电机驱动器连接。第二仿生眼包括第二眼球31、第二摄像装置32、第四伺服电机33、第五伺服电机、第六伺服电机35、第二FPGA图像采集板卡、第一电机和第一应变片力传感器;第二眼球31为球形腔,并可转动的安装在第二转轴12上,第二眼球32外部安装有第四伺服电机33、第五伺服电机和第六伺服电机35;第四伺服电机33位于第二眼球31的X轴方向的反方向上,并与第一伺服电机23对称设置,并通过第二X轴伺服电机的扭矩臂与第二眼球31连接;第五伺服电机位于第二眼球31的Y轴方向上,并通过第五伺服电机的扭矩臂与第二眼球31连接;第六伺服电机35位于第二眼球31的Z轴方向上,并通过第六伺服电机35的扭矩臂与第二眼球31连接;第二摄像装置32位于第二眼球32内的前半部,与第五伺服电机的扭矩臂相对设置,且位于第二眼球31的Y轴方向的反方向上;第二FPGA图像采集板卡设置在第二眼球31内;第二摄像装置32包括左右相邻设置第三摄像头和第四摄像头,第三摄像头为广角短焦摄像头,第四摄像头为长焦摄像头;第二电机和第二应变片力传感器均位于第二眼球31内,并与第二摄像装置32连接。第二三轴伺服电机驱动器,其设置在第二眼球31外,第四伺服电机33、第五伺服电机和第六伺服电机35均与第二三轴伺服电机驱动器连接。仿生颈部云台4,其为球形腔,且可转动的安装在第三转轴13上,仿生颈部云台4周向上均匀安装有第七伺服电机51、第八伺服电机52和第九伺服电机53。第三三轴伺服电机驱动器,其设置在仿生颈部云台4外,第七伺服电机51、第八伺服电机52和第九伺服电机53均与第三三轴伺服电机驱动器连接。FPGA信号处理板卡,其与第一三轴伺服电机驱动器、第二三轴伺服电机驱动器、第三三轴伺服电机驱动器、第一FPGA图像采集板卡和第二FPGA图像采集板卡双向通信连接。DSP信号处理器,其与FPGA信号处理板卡连接。
第一仿生眼和第二仿生眼均具有三个自由度。第一仿生眼在第一伺服电机23的驱动下,可以上下转动,实现俯仰自由度;在第二伺服电机的驱动下,可以绕光轴转动,实现绕光轴自由度;在第三伺服电机25的驱动下,可以左右转动,实现左右自由度。第二仿生眼在第四伺服电机33的驱动下,可以上下转动,实现俯仰自由度;在第五伺服电机的驱动下,可以绕光轴转动,实现绕光轴自由度;在第六伺服电机35的驱动下,可以左右转动,实现左右自由度。在需要但范围捕捉图像时,通过仿生颈部云台4运动,带动第一仿生眼和第二仿生眼的运动。仿生颈部云台4在第七伺服电机51的驱动下上下运动,实现俯仰运动自由度;在第八伺服电机52的驱动下旋转运动,实现摇摆运动自由度;在第九伺服电机53的驱动下侧曲运动,实现侧曲运动自由度。
用FPGA来处理数字信号可以很好的解决数据量大、处理速度不匹配、可靠性低及精度小等问题,并能很好协调并行性与顺序性的矛盾。FPGA内部逻辑全部由硬件完成,FPGA能在设计上在实现硬件并行和流水线技术,硬件电路内部延时小,因此数据的处理速度快,延时小,效率高。FPGA内部时钟可以工作在高频率下,适合高速图像的采集及处理工作。系统由两块FPGA图像采集卡和一块FPGA信号处理板卡组成。两块图像采集卡分别控制两只仿生眼的图像采集、视觉伺服及预处理,FPGA信号处理板卡负责复杂算法的处理及人机界面交互。
如图3所示,第一FPGA图像采集板卡包括第一FIFO存储器、第一SDRAM控制模块、第一SDRAM存储器、第一PROM存储器、第一图形算法处理模块、第二FIFO存储器、第一寄存器控制模块,第一同步信号控制模块和第一摄像头控制模块,第一图形算法处理模块上设有第一寄存器。第一FIFO存储器与第一SDRAM控制模块通信连接,第一SDRAM控制模块与第一SDRAM存储器双向通信连接,第一SDRAM控制模块与第一图形算法处理模块通信连接,第一图形算法处理模块与第二FIFO存储器通信连接,第一寄存器控制模块与第一寄存器通信连接,第一摄像头控制模块与第一同步信号控制模块和第一寄存器控制模块双向通信连接,第一PROM存储器与第一FPGA图像采集板卡通信连接。第二FPGA图像采集板卡包括第三FIFO存储器、第二SDRAM控制模块、第二SDRAM存储器、第二PROM存储器、第二图形算法处理模块、第四FIFO存储器、第二寄存器控制模块,第二同步信号控制模块和第二摄像头控制模块,第二图形算法处理模块上设有第二寄存器。第三FIFO存储器与第二SDRAM控制模块通信连接,第二SDRAM控制模块与第二SDRAM存储器双向通信连接,第二SDRAM控制模块与第二图形算法处理模块通信连接,第二图形算法处理模块与第四FIFO存储器通信连接,第二寄存器控制模块与第二寄存器通信连接,第二摄像头控制模块与第二同步信号控制模块和第二寄存器控制模块双向通信连接,第二PROM存储器与第二FPGA图像采集板卡通信连接。第一SDRAM存储器设于第一FPGA图像采集板卡或设于第一FPGA图像采集板卡外,第一PROM存储器设于第一FPGA图像采集板卡外。第二SDRAM存储器设于第二FPGA图像采集板卡或设于第一FPGA图像采集板卡外,第二PROM存储器设于第二FPGA图像采集板卡外。
FPGA图像采集板卡实现以下功能:
(1)从高性能的摄像头采集高帧频图像;
(2)对图像进行预处理,将处理过的图像数据传输给FPGA信号处理板卡作进一步的处理;
(3)对采集到的图像信息做大量重复的简单运算处理,如滤波,将处理后的图像传输给FPGA信号处理板卡;
(4)与FPGA信号处理板卡通信,收发处理板的控制信号和同步信号;
(5)收发FPGA信号处理板卡的同步信号控制摄像装置的同步采样或球形机构同步运动,接收控制信号来改变算法参数、摄像装置参数等。
如图4所示,FPGA信号处理板卡包括第一FPGA处理板卡和第二FPGA处理板卡,第一FPGA处理板卡通过第五FIFO存储器与第二FPGA处理板卡通信连接。第一FPGA处理板卡包括数据转换模块、伺服电机控制模块、第一外部同步信号控制模块、第一FIFO存储器控制模块和以太网接口。第二FPGA处理板卡包括算法处理模块、第二外部同步信号控制模块、第二FIFO存储器控制模块。数据转换模块与算法处理模块通信连接,算法处理模块与第二FIFO存储器控制模块通信连接,第二FIFO存储器控制模块与第五FIFO存储器通信连接,第五FIFO存储器与第一FIFO存储器通信连接,第一外部同步信号控制模块和第二外部同步信号控制模块双向通信连接。
第一FPGA处理板卡通过第一外部同步信号控制模块与外部同步信号双向通信连接,第一FPGA处理板卡通过以太网接口连接上位机。
FPGA信号处理板卡由两块FPGA组成,接受四路视频输入,通过以太网总线与工控上位机通信。每个仿生眼获得的图像高速传输到FPGA信号处理板卡中,FPGA信号处理板卡可以执行图像处理算法。
仿生颈部云台控制两只仿生眼的多自由度运动,采用精密伺服电机实现快速位置伺服。伺服电机的位置指令来自第一FPGA处理板卡。根据高速运动的目标处在两个摄像装置中的位置,调节仿生眼的运动,使得目标始终处在摄像装置的中心视野中,实现目标的实时跟踪和三维定位。FPGA信号处理板卡主要把如下算法并行化处理:
(1)低层图像处理算法
低层图像处理算法是指滤波,边缘检测如Robert算子、Prewitt算子、Sobel算子、Laplace算子、canny等,卷积、形态学、旋转平移缩放、畸变校正、直方图、特征点如SIFT、harris,图像立体匹配等基本的图像处理运算,这些算法通常具有运算量大,操作相对单一,可以进行并行操作等特点,可采用FPGA实现快速处理,可达PC机的数十倍快;
(2)稳像算法
采用仿生电子稳像算法进行稳像,从像面上通过检测参考图像和被比较图像的运动矢量,并结合电机及应变片力传感器反馈信息,综合评价后进行决策控制,并最终取得稳定的输出序列。该算法耗时较多,同样通过硬件化方法进行运动补偿,提高系统的实时性。
(3)三维识别算法
立体视觉的目的之一就是为了获得周围场景的三维信息,其关键在于匹配算法的复杂度。然而即便是使用目前先进的通用处理器,其计算致密视差图所需的时间仍无法满足高速自主导航的需求。为了解决这个问题,由FPGA来完成立体图像对的几何校正和匹配算法。
实施例2,如图5所示,本发明还提供了一种采用三自由度仿生立体视觉系统实现目标的实时跟踪和三维定位的方法为:
步骤1,第一摄像装置和第二摄像装置通过第一仿生眼和第二仿生眼的运动,拍摄全场景的视频图像,具体包括:
在小范围内,第一仿生眼和第二仿生眼分别在第一伺服电机、第二伺服电机、第三伺服电机和第四伺服电机、第五伺服电机、第六伺服电机的驱动下进行俯仰、绕光轴、左右运动,捕捉小范围的图像;
在大范围内,第一FPGA处理板卡下发控制指令到第七伺服电机、第八伺服电机和第九伺服电机,第七伺服电机、第八伺服电机和第九伺服电机控制仿生颈部云台进行侧曲运动、摇摆运动和俯仰运动,仿生颈部云台运动带动第三转轴运动,进而带动第一仿生眼和第二仿生眼运动。
步骤2,第一FPGA图像采集板卡和第二FPGA图像采集板卡分别将第一摄像装置和第二摄像装置拍摄到的视频模拟信号转换为视频数字信号,并存储图像的数字信号。
步骤3,第一FPGA图像采集板卡和第二FPGA图像采集板卡对采集到的图像进行滤波处理,消除述第一摄像装置和第二摄像装置自身的信号干扰,并将滤波处理后的图像传输给第二FPGA处理板卡。
步骤4,第二FPGA处理板卡中的算法处理模块对滤波后的图像进行立体匹配,如图6和7所示,具体包括:
步骤41,FPGA处理板卡下发控制指令至第一伺服电机、第二伺服电机、第三伺服电机、第四伺服电机、第五伺服电机、和第六伺服电机,控制第一仿生眼和第二仿生眼注视空间物体的同一目标特征点P,使目标特征点P在第一仿生眼中的图像和在第二仿生眼中的图像分别与第一仿生眼的光心位置l和第二仿生眼的光心位置r重合;
步骤42,建立第一仿生眼坐标系、第二仿生眼坐标系和世界坐标系,第一仿生眼坐标系是以第二仿生眼的光心位置l为原点建立的三维坐标系,第二仿生眼坐标系是以第二仿生眼的光心位置r为原点建立的三维坐标系,世界坐标系是以第二仿生眼的光心位置和第二仿生眼的光心位置之间的中点位置为原点建立的三维坐标系;
步骤43,获取第一仿生眼和第二仿生眼在三个方向上的转角信息,包括第一仿生眼的光轴方向和X轴的夹角θ1、第一仿生眼的光轴方向和Y轴的夹角α1、第一仿生眼的光轴方向和Z轴的夹角β1、第二仿生眼的光轴方向和X轴的夹角θ2′、第二仿生眼的光轴方向和Y轴的夹角α2、第二仿生眼的光轴方向和Z轴的夹角β2;
步骤44,根据三角几何法,得到:
计算得到目标特征点P与第一仿生眼的光心位置l之间的距离l1、目标特征点P与第二仿生眼的光心位置r之间的距离l2:
其中,θ2′+θ2=π,b为光心位置l和光心位置r之间的距离;
步骤45,根据三角几何关系,得到:
xl=l1cosθ1;yl=l1cosα1;zl=l1cosβ1;
xr=l1cosθ2;yr=l1cosα2;zr=l1cosβ2;
得出目标特征点P在第一仿生眼坐标系下的坐标(xl,yl,zl)和在第二仿生眼坐标系下的坐标(xr,yr,zr);
步骤46,假定目标特征点P在第一仿生眼中的图像和在第二仿生眼中的图像在同一个平面上,则目标特征点P在第一仿生眼坐标系和在第二仿生眼坐标系下的y坐标相同,即:
yl=yr;
根据三角几何关系,得到:
计算得到:
记视差D=xl-xr,根据步骤45中计算得到的坐标(xl,yl,zl)和坐标(xr,yr,zr),计算得到:
得到目标特征点P在世界坐标系下的世界坐标(XW,YW,ZW),即得到目标特征点P的深度信息;
或,
其中,第一仿生眼和第二仿生眼的焦距均为f。
步骤5;为了补偿无人车辆及机器人在复杂非结构化动态环境运动中损失的环境信息,得到更为完整的环境信息,第二FPGA处理板卡中的算法处理模块对匹配后的视差进行三维重建,还原三维深度信息,如图8所示,具体包括:
步骤51,在不同的角度和不同的位置,第一摄像装置和第二摄像装置围绕待重建物体连续拍摄图像,对多幅连续图像通过纹理映射,获取待重建物体的二维图像序列,对二维图像序列中相邻两幅图像之间利用SIFT特征匹配算法提取特征点并进行匹配,对得到的特征点进行基于两幅图像的三维重建,得到两幅图像间的重建三维点以及投影矩阵;
步骤52,从第一幅图像开始计算相邻三幅图像之间的公共匹配点;
步骤53,对相邻三幅图像中的第一幅图像、第二幅图像以及第二幅图像、第三幅图像对由步骤52得到的公共匹配点进行基于两幅图像的三维重建,将第一图像、第二幅图像重建三维点的重建结果变换到第二图像、第三幅图像所在坐标系下,由第二幅图像、第三幅图像重建三维点的重建结果与变换后的第一幅图像、第二幅图像的重建结果求出射影深度,由公共匹配点求出射影深度后,可将步骤51中得到的所有重建三维点进行坐标变换以及比例变换;
步骤54,利用简化迭代最近点算法ICP,先由公共匹配点的重建结果计算步骤53中两组重建三维点间的旋转矩阵Ricp和平移向量Ticp,再利用所求得的旋转矩阵Ricp和平移向量Ticp,将由步骤53执行坐标变换和比例变换的所有重建三维点的重建结果变换到第二幅图像、第三幅图像所选取的坐标系下,从而将前三幅图像的重建结果进行叠加;
步骤55,依次增加新图像,重复执行步骤52-54直至整个二维图像序列。
通过对多幅连续图像通过纹理映射,并利用仿生眼绕光轴旋转的额外自由度实现旋转补偿,实现快速的图像匹配,系统通过嵌入式的FPGA信号处理板卡并行加速,实现实时处理。对待重建的环境目标从不同的角度连续拍摄的图像完成对目标的重建问题,能否提取并匹配到稳定准确的特征点是三维重建能否成功的关键。
FPGA信号处理板卡并行处理流程为:
(1)在区域生长的过程中,如果经过计算得到两个区域的颜色相关度小于特定阈值,则将两个区域合并。同时,合并两个区域FPGA处理单元;
(2)在主FPGA处理单元以监听的方式检查区域块之间的连通情况,当区域块连通时,将区域点放置到共享内存,选择与被合并两区域块的种子点的颜色均值最接近的该区域像素点为该区域新的种子点;
(3)在该连通区域中删除一个FPGA处理单元,并将该FPGA处理单元分配到另一个FPGA处理单元,重新分配任务,继续区域生长过程;
(4)通过在主FPGA处理单元中的任务分配,达到整体并行加速比最优,实现三维环境的实时重构。
步骤6,对上一步处理后的图像进行稳像处理,如图9所示,具体包括:
步骤61,第一FPGA板卡测量第一电机和第二电机的电流突变,得到第一摄像装置和第二摄像装置的旋转加速度;
步骤62,第一FPGA板卡测量第一应变片力传感器和第二应变片力传感器的应变,得到第一摄像装置和第二摄像装置的平移加速度;
步骤63,第二FPGA板卡对第一摄像装置和第二摄像装置拍摄的图像的前帧图像、后帧图像进行匹配运动估计;
步骤64,步骤61中得到的旋转加速度、步骤62中得到的平移加速度作和步骤63中得到的匹配运动结果反馈给第二FPGA板卡;
步骤65,通过算法处理模块,提取图像的SIFT特征,进行特征点匹配,并利用步骤4中的方法计算特征点的三维坐标,匹配第一摄像装置和第二摄像装置拍摄的图像的前帧图像、后帧图像的SIFT特征,转换所有SIFT特征得到同组特征点帧间的运动三维坐标变化,通过最小二乘法求解特征点方程,得到旋转矩阵和平移向量得到第一摄像装置和第二摄像装置补偿运动所需旋转的速度和方向,并发送给伺服电机控制模块,控制第一摄像装置和第二摄像装置的运动,实现第一摄像装置和第二摄像装置拍摄图像的稳像。
其中,如图10所示,算法采用的模型为:
ρr=g1β2+gnα2+gnβ1α3;
ρ=g1β1+gnα1+gnβ2α3;
Hang表示第一摄像机和第二摄像机的旋转的角度,表示第一摄像机和第二摄像机平移的加速度,El表示第一摄像机的输出,Er表示第二摄像机的输出;
其中,C(S)为半规管的传递函数,Tc为半规管的时间常数,N(S)为神经积分器的传递函数,Tv为神经积分器的时间常数,O(S)为耳石器官的传递函数,To为耳石器官的时间常数,P(S)为眼球运动装置的传递函数,Te为眼球运动装置的时间常数,Ke为眼球运动装置的增益,α为半规管与前庭神经核间的增益,α1为外展神经核与动眼神经核间的常数增益,α2为外展神经核与对侧动眼神经核间的常数增益,α3为外展神经核与对侧动眼神经核间的常数增益,β耳石器管与前庭神经核间的增益,β1为外展神经核与前庭神经核间的常数增益,β2为对侧前庭器官与外展神经核间的增益,gn为内直肌的常数增益,g1为外直肌的常数增益,m为前平移庭动眼反射在神经积分器中的增益,n为旋转前庭动眼反射在神经积分器中的增益。
之所以人眼能实现快速的稳像,还是依赖着前庭半规管对旋转加速度、平移加速度的前馈。当位置、速度尚未发生改变时,加速度已经能提前感觉出来,通过这个提前预测量的神经机制,由于人眼惯量远比头部小,因此人眼球具有足够的时间对变化进行反应,实现快速稳像。同时,人眼本身的短时记忆功能,使得前后帧图像的匹配,也提供了运动估计信息,两者结合实现稳像。本发明通过检测电机电流的突变,感知负载旋转加速度;通过应变片力传感器,感知平移加速度,并通过嵌入式FPGA对前后帧图像进行并行匹配运动估计,FPGA根据需要控制伺服指令,实现图像的稳像功能。
步骤7,对稳像后的图像进行均值移动处理,实现目标的实时跟踪和三维定位,普通均值移动算法的缺陷在于不能自适应根据数据变化调整带宽,采用自适应带宽均值移动算法,解决初始带宽选择问题及迭代过程中带宽更新问题,自适应带宽均值移动算法核函数采用正定对称带宽矩阵取代对角阵,用于描述样本区域所在的d维空间超椭球体,每次迭代包含一步均值移动和一步带宽矩阵寻优,使得每步迭代都以最快的速度趋近局部极值,迭代最终目的是求取密度估计的极值和对应极值的位置x,并获得对应该极值点的最优带宽矩阵,从而获取样本区域超椭球体描述,如图11所示,具体包括:
步骤71,算法处理模块对第一摄像装置和第二摄像装置获取的图像区域利用椭圆区域表示该跟踪目标,对该目标区域内的图像视频中的每一帧图像逐一进行均值移动计算,获取目标区域的极值位置,具体包括:
将目标区域定义为椭圆区域:
S={s|(s-x)TH-1(s-x)<σ2} (1)
其中心位置为x,旋转角为φ,带宽矩阵为H,椭圆两半轴长为σa和σb,σ是由核外形函数K决定的因子,σ和H决定椭圆的大小和方向;
核外形函数K为Gaussian核外形函数或Epanechnikov核外形函数;
其中,
Gaussian核外形函数为:
Epanechnikov核外形函数为:
第一步,初始化目标区域为S及其中心位置x0,根据式(1)计算出初始带宽H0,该目标区域被椭圆区域表示后,得到该目标区域模型为:
其中,归一化常数为:
对角阵为:
D=UTHU (4)
带宽矩阵为正定对称矩阵:
其中,
第二步,给定该目标区域的前一帧图像计算得到的初始带宽H0和位置y0,根据式(1)计算得到候选目标区域S0;
第三步,根据式(4)计算得到权重
其中,特征密度分布为:
归一化因子为:
第四步,根据m(x)进行一次均值移动,计算出新的位置y1;
其中,
第五步,根据Bhattacharyya系数判断候选目标区域的相似性:
如果Q[p(y1),q]<Q[p(y0),q],则根据式(12)进行迭代计算;
其中,
重新计算Q[p(y1),q],重复步骤35;
如果Q[p(y1),q]>Q[p(y0),q],则进行步骤36;
第六步,将目标区域的中心移至y1,更新候选目标区域S0,重新计算
其中,如果核外形函数的定义域区间长度有限,则该定义域区间的上限就是σ2值,否则,[0 σ2]所在区间为核外形函数覆盖概率最大的部分。对于Epanechnikov核外形函数,其定义域为[0 1],故取σ=1;对于Gaussian核外形函数,选取σ=2.1。
步骤72,根据获得的极值位置,使用核外形函数计算出对应该极值点的最优带宽矩阵,具体包括:
第一步,根据核外形函数K重新计算最优带宽矩阵:
若选择Epanechnikov核外形函数,则根据式(14)计算最优带宽矩阵;
其中,
得到最优带宽矩阵为:
若选择Gaussian核外形函数,得到:
由Jensen不等式得到:
用L替代式(14)中的q(x)可计算出最优带宽矩阵:
第二步,根据式(1)重新计算候选目标区域S1;
第三步,判断S0和S1是否一致,若两者一致,则停止计算,否则根据式y0=y1、S0=S1和H0=H1重新进行步骤71中的第三步;
步骤73,根据极值位置和最优带宽矩阵得到每个跟踪目标区域的椭球体描述,获取该跟踪目标的大小、方向和位置,具体包括:
第一步,根据式(5)和式(6)得到:
或,
即可得到旋转角为φ,椭圆两半轴长为a和b;
第二步,根据上一步骤得到的φ、a和b确定出椭圆区域的大小和方向,得到目标区域的椭球体描述,获取该跟踪目标的大小、方向和位置。
如果使用除Epanechnikov核外形函数和Gaussian核外形函数以外的其他核外形函数,同样可以根据式(17)得到最优带宽矩阵。
最优带宽矩阵解满足:
由于使得r(s)=yT(x-s)≠0,故yTHy恒大于零,即两种核外形函数下计算的H均是正定对称阵。
在对多个目标进行跟踪定位时,第一摄像装置和第二摄像装置采集跟踪多目标区域场景的图像视频;将第二FPGA板卡分成多个处理单元,多个处理单元根据多个目标区域将所述图像视频分成多个区域,每个处理单元处理一个目标区域,多个处理单元同时对多个目标区域进行处理;每个处理单元对每个区域都利用椭圆区域表示该跟踪目标,对该目标区域内的图像视频中的每一帧图像逐一进行均值移动计算,获取目标区域的极值位置;根据获得的极值位置,使用核外形函数计算出对应该极值点的最优带宽矩阵;根据所述极值位置和所述最优带宽矩阵得到每个跟踪目标区域的椭球体描述,获取该跟踪目标的大小、方向和位置;多个处理单元获取多个跟踪目标的大小、方向和位置,实现多目标的跟踪识别。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种三自由度仿生立体视觉系统,其特征在于,包括:
支架,其上部对称设置第一转轴和第二转轴,所述支架下部的中间位置设置第三转轴;
第一仿生眼,其包括第一眼球、第一摄像装置、第一伺服电机、第二伺服电机、第三伺服电机、第一FPGA图像采集板卡、第一电机和第一应变片力传感器;所述第一眼球为球形腔,并可转动的安装在所述第一转轴上,所述第一眼球外部安装有第一伺服电机、第二伺服电机和第三伺服电机;所述第一伺服电机位于所述第一眼球的X轴方向上,并通过第一伺服电机的扭矩臂与所述第一眼球连接;所述第二伺服电机位于所述第一眼球的Y轴方向上,并通过所述第二伺服电机的扭矩臂与所述第一眼球连接;所述第三伺服电机位于所述第一眼球的Z轴方向上,并通过所述第三伺服电机的扭矩臂与所述第一眼球连接;第一摄像装置位于所述第一眼球内的前半部,与所述第二伺服电机的扭矩臂相对设置,且位于所述第一眼球的Y轴方向的反方向上;所述第一FPGA图像采集板卡设置在所述第一眼球内;所述第一摄像装置包括左右相邻设置的第一摄像头和第二摄像头,所述第一摄像头为广角短焦摄像头,所述第二摄像头为长焦摄像头;所述第一电机和所述第一应变片力传感器均位于所述第一眼球内,并与所述第一摄像装置连接;
第一三轴伺服电机驱动器,其设置在所述第一仿生眼外,所述第一伺服电机、所述第二伺服电机和所述第三伺服电机均与所述第一三轴伺服电机驱动器连接;
第二仿生眼,其包括第二眼球、第二摄像装置、第四伺服电机、第五伺服电机、第六伺服电机、第二FPGA图像采集板卡、第一电机和第一应变片力传感器;所述第二眼球为球形腔,并可转动的安装在所述第二转轴上,所述第二眼球外部安装有第四伺服电机、第五伺服电机和第六伺服电机;所述第四伺服电机位于所述第二眼球的X轴方向的反方向上,并与所述第一伺服电机对称设置,并通过第二X轴伺服电机的扭矩臂与所述第二眼球连接;所述第五伺服电机位于所述第二眼球的Y轴方向上,并通过所述第五伺服电机的扭矩臂与所述第二眼球连接;所述第六伺服电机位于所述第二眼球的Z轴方向上,并通过所述第六伺服电机的扭矩臂与所述第二眼球连接;第二摄像装置位于所述第二眼球内的前半部,与所述第五伺服电机的扭矩臂相对设置,且位于所述第二眼球的Y轴方向的反方向上;所述第二FPGA图像采集板卡设置在所述第二眼球内;所述第二摄像装置包括左右相邻设置第三摄像头和第四摄像头,所述第三摄像头为广角短焦摄像头,所述第四摄像头为长焦摄像头;所述第二电机和所述第二应变片力传感器均位于所述第二眼球内,并与所述第二摄像装置连接;
第二三轴伺服电机驱动器,其设置在所述第二仿生眼外,所述第四伺服电机、所述第五伺服电机和所述第六伺服电机均与所述第二三轴伺服电机驱动器连接;
仿生颈部云台,其为球形腔,且可转动的安装在所述第三转轴上,所述仿生颈部周向上均匀安装有第七伺服电机、第八伺服电机和第九伺服电机;
第三三轴伺服电机驱动器,其设置在所述仿生颈部云台外,所述第七伺服电机、所述第八伺服电机和所述第九伺服电机均与所述第三三轴伺服电机驱动器连接;
FPGA信号处理板卡,其与所述第一三轴伺服电机驱动器、所述第二三轴伺服电机驱动器、所述第三三轴伺服电机驱动器、所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡双向通信连接;
DSP信号处理器,其与所述FPGA信号处理板卡连接。
2.根据权利要求1所述的三自由度仿生立体视觉系统,其特征在于,所述第一FPGA图像采集板卡包括第一FIFO存储器、第一SDRAM控制模块、第一SDRAM存储器、第一PROM存储器、第一图形算法处理模块、第二FIFO存储器、第一寄存器控制模块,第一同步信号控制模块和第一摄像头控制模块,所述第一图形算法处理模块上设有第一寄存器;
所述第一FIFO存储器与所述第一SDRAM控制模块通信连接,所述第一SDRAM控制模块与所述第一SDRAM存储器双向通信连接,所述第一SDRAM控制模块与所述第一图形算法处理模块通信连接,所述第一图形算法处理模块与所述第二FIFO存储器通信连接,所述第一寄存器控制模块与所述第一寄存器通信连接,所述第一摄像头控制模块与所述第一同步信号控制模块和所述第一寄存器控制模块双向通信连接,所述第一PROM存储器与所述第一FPGA图像采集板卡通信连接;
所述第二FPGA图像采集板卡包括第三FIFO存储器、第二SDRAM控制模块、第二SDRAM存储器、第二PROM存储器、第二图形算法处理模块、第四FIFO存储器、第二寄存器控制模块,第二同步信号控制模块和第二摄像头控制模块,所述第二图形算法处理模块上设有第二寄存器;
所述第三FIFO存储器与所述第二SDRAM控制模块通信连接,所述第二SDRAM控制模块与所述第二SDRAM存储器双向通信连接,所述第二SDRAM控制模块与所述第二图形算法处理模块通信连接,所述第二图形算法处理模块与所述第四FIFO存储器通信连接,所述第二寄存器控制模块与所述第二寄存器通信连接,所述第二摄像头控制模块与所述第二同步信号控制模块和所述第二寄存器控制模块双向通信连接,所述第二PROM存储器与所述第二FPGA图像采集板卡通信连接。
3.根据权利要求1所述的三自由度仿生立体视觉系统,其特征在于,
所述FPGA信号处理板卡包括第一FPGA处理板卡和第二FPGA处理板卡,所述第一FPGA处理板卡通过第五FIFO存储器与所述第二FPGA处理板卡通信连接;
其中,
所述第一FPGA处理板卡包括数据转换模块、伺服电机控制模块、第一外部同步信号控制模块、第一FIFO存储器控制模块和以太网接口;
所述第二FPGA处理板卡包括算法处理模块、第二外部同步信号控制模块、第二FIFO存储器控制模块;
所述数据转换模块与所述算法处理模块通信连接,所述算法处理模块与所述第二FIFO存储器控制模块通信连接,所述第二FIFO存储器控制模块与所述第五FIFO存储器通信连接,所述第五FIFO存储器与所述第一FIFO存储器通信连接,所述第一外部同步信号控制模块和所述第二外部同步信号控制模块双向通信连接。
4.根据权利要求2所述的三自由度仿生立体视觉系统,其特征在于,
所述第一SDRAM存储器设于所述第一FPGA图像采集板卡或设于所述第一FPGA图像采集板卡外,所述第一PROM存储器设于所述第一FPGA图像采集板卡外;
所述第二SDRAM存储器设于所述第二FPGA图像采集板卡或设于所述第一FPGA图像采集板卡外,所述第二PROM存储器设于所述第二FPGA图像采集板卡外。
5.根据权利要求4所述的三自由度仿生立体视觉系统,其特征在于,所述第一FPGA处理板卡通过所述第一外部同步信号控制模块与外部同步信号双向通信连接,所述第一FPGA处理板卡通过所述以太网接口连接上位机。
6.根据权利要求1-5中任意一项所述的三自由度仿生立体视觉系统,其特征在于,采用所述三自由度仿生立体视觉系统实现目标的实时跟踪和三维定位的方法为:
步骤1,所述第一摄像装置和所述第二摄像装置通过所述第一仿生眼和所述第二仿生眼的运动,拍摄全场景的视频图像,具体包括:
在小范围内,所述第一仿生眼和所述第二仿生眼分别在所述第一伺服电机、所述第二伺服电机、所述第三伺服电机和所述第四伺服电机、所述第五伺服电机、所述第六伺服电机的驱动下进行俯仰、绕光轴、左右运动,捕捉小范围的图像;
在大范围内,所述第一FPGA处理板卡下发控制指令到所述第七伺服电机、所述第八伺服电机和所述第九伺服电机,所述第七伺服电机、所述第八伺服电机和所述第九伺服电机控制所述仿生颈部云台进行侧曲运动、摇摆运动和俯仰运动,所述仿生颈部云台运动带动所述第三转轴运动,进而带动所述第一仿生眼和所述第二仿生眼运动,
步骤2,所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡分别将所述第一摄像装置和所述第二摄像装置拍摄到的视频模拟信号转换为视频数字信号,并存储图像的数字信号;
步骤3,所述第一FPGA图像采集板卡和所述第二FPGA图像采集板卡对采集到的图像进行滤波处理,消除述第一摄像装置和所述第二摄像装置自身的信号干扰,并将滤波处理后的图像传输给所述第二FPGA处理板卡;
步骤4,所述第二FPGA处理板卡中的算法处理模块对滤波后的图像进行立体匹配;
步骤5;所述第二FPGA处理板卡中的算法处理模块对匹配后的视差进行三维重建,还原三维深度信息;
步骤6,对上一步处理后的图像进行稳像处理;
步骤7,对稳像后的图像进行均值移动处理,实现目标的实时跟踪和三维定位。
7.根据权利要求6所述的三自由度仿生立体视觉系统,其特征在于,步骤4具体包括:
步骤41,所述FPGA处理板卡下发控制指令至所述第一伺服电机、所述第二伺服电机、所述第三伺服电机、所述第四伺服电机、所述第五伺服电机、和所述第六伺服电机,控制所述第一仿生眼和所述第二仿生眼注视空间物体的同一目标特征点P,使所述目标特征点P在所述第一仿生眼中的图像和在所述第二仿生眼中的图像分别与所述第一仿生眼的光心位置l和所述第二仿生眼的光心位置r重合;
步骤42,建立所述第一仿生眼坐标系、所述第二仿生眼坐标系和世界坐标系,所述第一仿生眼坐标系是以所述第二仿生眼的光心位置l为原点建立的三维坐标系,所述第二仿生眼坐标系是以所述第二仿生眼的光心位置r为原点建立的三维坐标系,所述世界坐标系是以所述第二仿生眼的光心位置和所述第二仿生眼的光心位置之间的中点位置为原点建立的三维坐标系;
步骤43,获取所述第一仿生眼和所述第二仿生眼在三个方向上的转角信息,包括所述第一仿生眼的光轴方向和X轴的夹角θ1、所述第一仿生眼的光轴方向和Y轴的夹角α1、所述第一仿生眼的光轴方向和Z轴的夹角β1、所述第二仿生眼的光轴方向和X轴的夹角θ2′、所述第二仿生眼的光轴方向和Y轴的夹角α2、所述第二仿生眼的光轴方向和Z轴的夹角β2;
步骤44,根据三角几何法,得到:
计算得到所述目标特征点P与所述第一仿生眼的光心位置l之间的距离l1、所述目标特征点P与所述第二仿生眼的光心位置r之间的距离l2:
其中,θ2′+θ2=π,b为光心位置l和光心位置r之间的距离;
步骤45,根据三角几何关系,得到:
xl=l1cosθ1;yl=l1cosα1;zl=l1cosβ1;
xr=l1cosθ2;yr=l1cosα2;zr=l1cosβ2;
得出所述目标特征点P在所述第一仿生眼坐标系下的坐标(xl,yl,zl)和在所述第二仿生眼坐标系下的坐标(xr,yr,zr);
步骤46,假定所述目标特征点P在所述第一仿生眼中的图像和在所述第二仿生眼中的图像在同一个平面上,则所述目标特征点P在所述第一仿生眼坐标系和在所述第二仿生眼坐标系下的y坐标相同,即:
yl=yr;
根据三角几何关系,得到:
计算得到:
记视差D=xl-xr,根据步骤45中计算得到的坐标(xl,yl,zl)和坐标(xr,yr,zr),计算得到:
得到所述目标特征点P在所述世界坐标系下的世界坐标(XW,YW,ZW),即得到所述目标特征点P的深度信息;
或,
其中,所述第一仿生眼和所述第二仿生眼的焦距均为f。
8.根据权利要求6所述的三自由度仿生立体视觉系统,其特征在于,步骤5具体包括:
步骤51,在不同的角度和不同的位置,所述第一摄像装置和所述第二摄像装置围绕待重建物体连续拍摄图像,对多幅连续图像通过纹理映射,获取待重建物体的二维图像序列,对二维图像序列中相邻两幅图像之间利用SIFT特征匹配算法提取特征点并进行匹配,对得到的特征点进行基于两幅图像的三维重建,得到两幅图像间的重建三维点以及投影矩阵;
步骤52,从第一幅图像开始计算相邻三幅图像之间的公共匹配点;
步骤53,对相邻三幅图像中的第一幅图像、第二幅图像以及第二幅图像、第三幅图像对由步骤52得到的公共匹配点进行基于两幅图像的三维重建,将第一图像、第二幅图像重建三维点的重建结果变换到第二图像、第三幅图像所在坐标系下,由第二幅图像、第三幅图像重建三维点的重建结果与变换后的第一幅图像、第二幅图像的重建结果求出射影深度,由公共匹配点求出射影深度后,可将步骤51中得到的所有重建三维点进行坐标变换以及比例变换;
步骤54,利用简化迭代最近点算法ICP,先由公共匹配点的重建结果计算步骤53中两组重建三维点间的旋转矩阵Ricp和平移向量Ticp,再利用所求得的旋转矩阵Ricp和平移向量Ticp,将由步骤53执行坐标变换和比例变换的所有重建三维点的重建结果变换到第二幅图像、第三幅图像所选取的坐标系下,从而将前三幅图像的重建结果进行叠加;
步骤55,依次增加新图像,重复执行步骤52-54直至整个二维图像序列。
9.根据权利要求6所述的三自由度仿生立体视觉系统,其特征在于,步骤6具体包括:
步骤61,所述第一FPGA板卡测量所述第一电机和所述第二电机的电流突变,得到所述第一摄像装置和所述第二摄像装置的旋转加速度;
步骤62,所述第一FPGA板卡测量所述第一应变片力传感器和所述第二应变片力传感器的应变,得到所述第一摄像装置和所述第二摄像装置的平移加速度;
步骤63,所述第二FPGA板卡对所述第一摄像装置和所述第二摄像装置拍摄的图像的前帧图像、后帧图像进行匹配运动估计;
步骤64,步骤61中得到的旋转加速度、步骤62中得到的平移加速度作和步骤63中得到的匹配运动结果反馈给所述第二FPGA板卡;
步骤65,通过所述算法处理模块,提取图像的SIFT特征,进行特征点匹配,并利用步骤4中的方法计算特征点的三维坐标,匹配所述第一摄像装置和所述第二摄像装置拍摄的图像的前帧图像、后帧图像的SIFT特征,转换所有SIFT特征得到同组特征点帧间的运动三维坐标变化,通过最小二乘法求解特征点方程,得到旋转矩阵和平移向量得到所述第一摄像装置和所述第二摄像装置补偿运动所需旋转的速度和方向,并发送给所述伺服电机控制模块,控制所述第一摄像装置和所述第二摄像装置的运动,实现所述第一摄像装置和所述第二摄像装置拍摄图像的稳像。
10.根据权利要求6所述的三自由度仿生立体视觉系统,其特征在于,步骤7具体包括:
步骤71,所述算法处理模块对所述第一摄像装置和所述第二摄像装置获取的图像区域利用椭圆区域表示该跟踪目标,对该目标区域内的图像视频中的每一帧图像逐一进行均值移动计算,获取目标区域的极值位置;
步骤72,根据获得的极值位置,使用核外形函数计算出对应该极值点的最优带宽矩阵;
步骤73,根据所述极值位置和所述最优带宽矩阵得到每个跟踪目标区域的椭球体描述,获取该跟踪目标的大小、方向和位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510964401.3A CN105631859B (zh) | 2015-12-21 | 2015-12-21 | 三自由度仿生立体视觉系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510964401.3A CN105631859B (zh) | 2015-12-21 | 2015-12-21 | 三自由度仿生立体视觉系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105631859A CN105631859A (zh) | 2016-06-01 |
CN105631859B true CN105631859B (zh) | 2016-11-09 |
Family
ID=56046745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510964401.3A Active CN105631859B (zh) | 2015-12-21 | 2015-12-21 | 三自由度仿生立体视觉系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105631859B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106210445B (zh) * | 2016-07-15 | 2018-12-25 | 中国兵器工业计算机应用技术研究所 | 一种仿生眼的电子稳像验证装置及验证方法 |
CN106296825B (zh) * | 2016-07-27 | 2019-02-05 | 中国科学院半导体研究所 | 一种仿生三维信息生成系统及方法 |
CN106393179B (zh) * | 2016-11-25 | 2018-10-09 | 北京理工大学 | 一种九自由度双目仿生眼 |
CN106838563B (zh) * | 2017-01-20 | 2018-08-07 | 上海大学 | 一种机器人仿生机械云台 |
CN107274449B (zh) * | 2017-05-22 | 2020-11-13 | 陕西科技大学 | 一种光学照片对物体的空间定位系统及方法 |
US11614719B2 (en) * | 2019-07-25 | 2023-03-28 | Beijing Institute Of Technology | Wide-field-of-view anti-shake high-dynamic bionic eye |
CN110405784A (zh) * | 2019-07-25 | 2019-11-05 | 北京理工大学 | 防抖高动态仿生眼结构 |
CN115272587B (zh) * | 2022-09-26 | 2023-05-30 | 深圳市纵维立方科技有限公司 | 用于3d打印的模型文件生成方法、介质及电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101797435A (zh) * | 2010-03-17 | 2010-08-11 | 上海大学 | 三自由度球面并联机构仿生眼睛 |
CN104942830A (zh) * | 2015-07-27 | 2015-09-30 | 中国兵器工业计算机应用技术研究所 | 一种三自由度仿生眼睛 |
CN105147421A (zh) * | 2015-08-04 | 2015-12-16 | 中国兵器工业计算机应用技术研究所 | 一种三自由度仿生颈部机构 |
CN105150245A (zh) * | 2015-10-09 | 2015-12-16 | 中国兵器工业计算机应用技术研究所 | 一种三自由度双目仿生机构 |
-
2015
- 2015-12-21 CN CN201510964401.3A patent/CN105631859B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105631859A (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105631859B (zh) | 三自由度仿生立体视觉系统 | |
CN110032278B (zh) | 一种人眼感兴趣物体的位姿识别方法、装置及系统 | |
CN106529495B (zh) | 一种飞行器的障碍物检测方法和装置 | |
Wang et al. | 360sd-net: 360 stereo depth estimation with learnable cost volume | |
CN106251399B (zh) | 一种基于lsd-slam的实景三维重建方法及实施装置 | |
CN112634341B (zh) | 多视觉任务协同的深度估计模型的构建方法 | |
CN104036488B (zh) | 一种基于双目视觉的人体姿态动作研究方法 | |
CN110874864A (zh) | 获取对象三维模型的方法、装置、电子设备及系统 | |
WO2019140945A1 (zh) | 一种应用于飞行模拟器的混合现实方法 | |
CN110268444A (zh) | 一种用于经颅磁刺激诊疗的人头姿态跟踪系统 | |
CN107423729A (zh) | 一种面向复杂视觉场景下的远距离类脑三维步态识别系统及实现方法 | |
CN107358631A (zh) | 一种虑及三维畸变的双目视觉重建方法 | |
US20070076090A1 (en) | Device for generating three dimensional surface models of moving objects | |
CN110517306B (zh) | 一种基于深度学习的双目深度视觉估计的方法和系统 | |
CN101072366A (zh) | 基于光场和双目视觉技术的自由立体显示系统和方法 | |
CN106625673A (zh) | 狭小空间装配系统及装配方法 | |
CN101729920B (zh) | 一种自由视角立体视频显示方法 | |
CN206563985U (zh) | 三维成像系统 | |
CN110334701A (zh) | 数字孪生环境下基于深度学习和多目视觉的数据采集方法 | |
CN107749053A (zh) | 一种用于视觉假体的双目图像采集与预处理装置及方法 | |
CN104939793A (zh) | 基于液体透镜的可调焦3-d胶囊内窥镜系统 | |
CN109461206A (zh) | 一种多目立体视觉的人脸三维重建装置及方法 | |
CN110517309A (zh) | 一种基于卷积神经网络的单目深度信息获取方法 | |
CN109974853A (zh) | 基于多光谱复合的仿生视觉目标检测与跟踪方法 | |
CN116977449B (zh) | 一种基于闪烁棋盘格的复眼事件相机主动标定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |