1.一种基于混合现实技术的实景训练系统,其特征在于:包括实景骑行训练系统和基于混合现实技术的视频处理系统;
所述用于实现实景骑行训练系统包括:
视频采集模块,用于视频拍摄和数据采集,数据采集针对海拔、经纬度和坡度,采集到的数据用于后期的处理;
数据处理模块,坡度数据处理采用基于傅里叶级数展开的曲线拟合方法,经纬度和海拔数据不做处理;
播放显示模块,采用WPF中的视频播放控件类,视频播放控件类封装视频播放器类的全部功能,播放视频的时候,在播放视频的界面添加一个视频播放控件元素,在视频模式下还需要显示用户的训练数据,将视频播放控件和标签组合起来就可以完成视频播放及显示的需求;
所述基于混合现实技术的视频处理系统包括:
动态路径规划模块,包括车道线检测单元和障碍物检测单元;
车道线检测单元,通过读取视频流,将视频进行反透视变换,变换后的视频进行预处理,经过Canny变换边缘检测和随机霍夫变换车道线检测,根据斜率和长度筛选符合要求的线段;
障碍物检测单元,通过上面车道线的检测,得到赛道场景中的车道区域,将此区域设置为感兴趣区域进行车道中的障碍物检测。将边界标线包围的矩形区域设置为感兴趣区域,采用背景差分法提取交通图像中的前景车辆;
虚拟人物融合模块,根据前面的动态路径规划得到虚拟人物在视频中的运动轨迹,然后根据彼此之间的距离将虚拟人物正确地融入到视频画面中相应的位置。
2.如权利要求1所述基于混合现实技术的实景训练系统,其特征在于:所述基于傅里叶级数展开的曲线拟合方法中,设f(x)是一个周期为T的波,在一定条件下可以把它写成:其中, 为n次谐波, 上式右端可称为由f
(x)确定的傅里叶级数;
当函数f(x)满足条件:在区间(0,L)上除了有限个第一类间断点外,处处都是连续的,同时至多只有有限个极值点;则f(x)的傅立叶级数收敛,并且在连续点处收敛于该点的函数值,在间断点处收敛于该点左极限与右极限的算术平均值;
设函数f(x)已展开为全区间一致收敛的三角级数:
将其沿区间[-π,π]积分,由三角函数的正交性可得:
即
设n是任一正整数,对f(x)的展开式两边都乘以cos nx沿[-π,π]积分,得:即 同理,
拟合具体计算结果如下:
f(x)=a0+a1cos(xw)+b1sin(xw)+a2cos(2xw)+b2sin(2xw)+a3cos(3xw)+b3sin(3xw)+a4cos(4xw)+b4sin(4xw)+a5cos(5xw)+b5sin(5xw)+a6cos(6xw)+b6sin(6xw)+a7cos(7xw)+b7sin(7xw)+a8cos(8xw)+b8sin(8xw)。
3.如权利要求1或2所述基于混合现实技术的实景训练系统,其特征在于:所述播放显示模块中,采用自适应播放速度算法,通过获取播放器的最大播放倍数N,视频播放的最大速度Smax=S0N,下位机传递上来最大的速度Smax0,当Smax0小于Smax,根据实际骑行数据可以实现其正常的播放速度playSpeed=S/S0,当Smax0大于Smax,playSpeed=(Smax/Smax0)(S/S0)=SN/Smax0,其中S为下位机传上来的实际速度,S0为视频录制的标准速度。
4.如权利要求1或2所述基于混合现实技术的实景训练系统,其特征在于:所述车道线检测单元,处理过程包含以下步骤:
2.1.1:视频进行反透视变换
在对视频进行反透视变换前,先确定视频从世界坐标系到像素坐标系的对应关系,再将视频进行反透视变换,把视角转变为俯视图,把视频画面投影到道路平面,去除透视误差,得到真实的路面场景;
2.1.2:视频预处理
先对反透视变换后的画面设置感兴趣区ROI,然后进行腐蚀膨胀、平滑处理预处理,首先设置感兴趣的区域ROI,根据车道线的一系列特点,逐步缩小感兴趣区域,聚焦于车道线可能出现的位置;然后通过腐蚀和膨胀这一组形态学操作,消除图像噪音,最后使用中值滤波进行图像平滑处理;
2.1.3:Canny变换检测出画面的边缘
Canny边缘检测基于多级算法,并且采用两个关键阈值,高阈值Th和低阈值Tl来检测和连接边缘,根据灰度直方图来设置阈值,自动获得其Th和Tl,应用局部Th和Tl进行检测并连接每一个子图的边缘,再将处理后的子图合并为一个集成图像;
2.1.4:Hough变换进行车道线检测
选用随机霍夫变换进行直线检测,随机霍夫变换RHT计算包括从边缘图像中选择2个随机像素,并从点连接线计算参数,累加并输出累加器中的数据,从该数据中提取线段;
2.1.5:根据线段的斜率挑选符合要求的线段
根据经过反透视变换车道线与竖直方向y轴的夹角较小,左右车道线保持互相平行的关系,等约束条件来挑选符合要求的线段;用该方法挑选出起始段的车道线,再沿起始段向后跟踪检测车道线,连接形成的直线就是该路段的车道线,流程如下:
1)测出车道线的起始段(θL0,xL0,yL0)、(θR0,xR0,yR0),其中θL0、θR0表示左右车道线起始段与竖直方向y轴的夹角,(xL0,yL0)、(xR0,yR0)表示左右车道线起始段的上端点坐标;
2)然后以(xL0,yL0)、(xR0,yR0)为起始点,搜索与y轴方向的夹角在θL0±15°、θR0±15°范围的线段;
3)重复步骤2),最后将检测到的短车道线短首尾相连,拼接为长的车道线段。
5.如权利要求1或2所述基于混合现实技术的实景训练系统,其特征在于:所述障碍物检测单元,处理过程包含以下步骤:
2.2.1:背景模型的建立
采用混合模型使用统计滤波器来消除背景上连续的轻微运动,通过将时间演变的像素特征在聚类或颜色原型中分组,并将人口较多的人物描述为背景,通过考虑颜色特征来模拟背景,把每个像素分为四类:前景,阴影背景,突出背景和背景,识别出由于光照和阴影引起的背景不连续性,并依此将它们记录为背景,在户外拍摄中,由于光照条件的变化和其他会对背景产生影响的因素变化,背景原型经常无法反映实际背景;因此采用自适应更新模型,保持背景模板递归更新,以便在即将到来的图像变化中调整背景模板;
2.2.2:背景扣除
通过将每个帧与背景实例进行比较来提取前景,执行此操作的最优方法是计算当前帧和背景模板之间每个像素的色差,当色差大于预定阈值的每个像素被分类为前景掩模,属于前景掩模的像素被分组以形成连接的组件,进一步处理连接的组件以便去除孔或其他不规则干扰,选用最常见地形态滤波器来形成前景;
2.2.3:滤波与轮廓检测
通过背景减法提取的前景仍包含残留噪声,这可能对车辆检测产生不利影响,为了消除这种噪音,采用盒子对检测到的轮廓进行建模,首先使用Canny边缘检测器来检测车辆轮廓,然后计算轮廓的坐标并获得一个由盒子建模的车辆掩模。
6.如权利要求1或2所述基于混合现实技术的实景训练系统,其特征在于:所述虚拟人物融合模块,处理过程的步骤如下:
2.3.1:逆透视变换确定虚拟人物位置
本发明使用逆透视变换将前向图转化为俯视图来消除路面透视变形的影响,然后依据俯视图和世界坐标系之间的线性位置关系来进行标定,最后结合路径规划来确定虚拟人物融入视频画面时的正确位置;
2.3.2:透视变换确定虚拟人物大小
透视变换将之前道路平面上的三维点映射到原视角的二维投影平面上,连接世界点与摄像机镜头的直线与定义世界点对应的唯一图像点的图像平面相交,而逆过程是将每一幅图像的投影还原成三维世界的过程,反向投影点将位于连接图像点与投影中心的直线上的某处,直接透视投影和反透视投影通常以针孔摄像机为模型,变换过程涉及到三个坐标系:世界坐标系、摄像机坐标系和图像坐标系,世界到图像点的线性映射,均以齐次坐标表示,表示为:其中(xp,yp)是图像点坐标,f是焦距,(xr,yr,zr)是相应现场点的世界坐标, 是涉及的4×4变换矩阵,通过R转动矩阵和平移向量的世界和相机坐标框架。虚拟人物的尺寸和场景点世界坐标可以通过它对应的图像点坐标计算出来,还原到原视角画面;
2.3.3:根据虚拟人物的轮廓生成掩模
为了让虚拟人物融入到视频场景时不受到噪声的污染,通过创建掩码模型来抑制干扰并保留良好的边缘信息,先对虚拟人物的源图采用Canny算子进行边缘检测,然后根据外围轮廓创建不规则掩码模型;
2.3.4:虚拟人物融入到目标图
采用与相机的图像平面平行的矩形掩模融合虚拟对象的形状,其宽度和高度默认设置为0.5和1.8米,一旦将所有相关矩形掩模投影到图像平面上,投影就会覆盖图像中合并的斑点,对于具有最大深度的行人,将分割设置为投影和合并的像素点的交叉点,通过将分段区域设置为背景来更新像素点,然后以相同的方式从剩余的像素点中提取具有最大深度的虚拟对象,通过迭代操作直到获得具有最接近深度的操作。