本发明涉及一种驱动播放视频的系统和方法,尤其是涉及了一种单车实时驱动调整播放虚拟现实视频的系统。
背景技术:
随着生活水平的提高,人们越来越关注自己的身体健康,骑车成为一种重要的健身方法。在健身房里,人们骑着普通健身自行车锻炼身体,总觉得枯燥乏味、兴趣全无,实在是弃之可惜,食之无味。科学健身的理念日渐深入人心,锻炼者更加注重骑车的健身质量和效果,希望在轻松愉快的环境中骑车锻炼身体,能够实时了解自己的运动状况,实时调整运动强度,达到最佳的运动效果。普通的动感单车不能与视频模块相连,没有交互性。
技术实现要素:
为了解决背景技术中存在的问题,本发明的目的在于设计一种单车实时驱动调整播放虚拟现实视频的系统。
本发明采用的技术方案是:
一、一种单车实时驱动调整播放虚拟现实视频的系统:
系统包括动感单车、电源模块、霍尔测速模块、单片机模块、蓝牙模块和视频模块;霍尔测速模块安装在动感单车的驱动轮处,电源模块与单片机模块连接,霍尔测速模块与单片机模块连接,单片机模块与蓝牙模块连接,蓝牙模块和视频模块无线连接;霍尔测速模块实时监测动感单车驱动轮的转动,获得速度脉冲信号,并传给单片机模块,单片机模块依据速度脉冲信号获得动感单车的车速并传送给蓝牙模块,蓝牙模块将速度的数据无线实时地传送到视频模块。
所述电源模块的正负电源线分别与单片机模块的vcc引脚和gnd引脚相连。
所述霍尔测速模块的vcc引脚与单片机模块的vcc引脚相连,霍尔测速模块的gnd引脚与单片机模块的gnd引脚相连,霍尔测速模块的d0引脚与单片机模块的p3.2引脚相连;蓝牙模块的vcc引脚与单片机模块的vcc引脚相连,蓝牙模块的gnd引脚与单片机模块的gnd引脚相连,蓝牙模块的rxd引脚与单片机模块的txd引脚相连,蓝牙模块的txd引脚与单片机模块的rxd引脚相连。
二、一种单车实时驱动调整播放虚拟现实视频的方法:
通过摄像机的匀速移动采集到真实物理世界的视频,人在体验虚拟现实骑行动感单车时观看真实物理世界的视频,骑行动感单车过程中通过霍尔测速模块检测动感单车的速度脉冲信号,单片机模块依据速度脉冲信号获得动感单车的实时速度,在视频模块中根据实时速度计算播放帧率,用播放帧率控制播放真实物理世界的视频,使得视频播放和虚拟现实骑行相匹配。
所述的根据实时速度计算播放帧率具体采用以下方式计算:
先采用以下公式计算获得视频模块中的漫游路程为:
其中,k表示摄像机拍摄视频时的帧率(单位为每秒帧数),v表示摄像机拍摄视频时摄像机匀速移动的速度(单位为千米每小时);
采用以下公式计算获得动感单车所经过的路程为l:
其中,n1、n2、…、n20表示霍尔测速模块在1s内采样获得的各个速度脉冲信号数据,d表示动感单车的驱动轮直径,m表示磁钢个数;
最后根据l=p×δk计算获得播放帧率δk,再采用
所述用播放帧率控制播放真实物理世界的视频具体为:在视频模块中,通过opencv库创建视频显示的窗口,并将视频存储到cvcapture结构体中,然后使用函数cvqueryframe从cvcapture结构体中读取每一帧的图像,再使用函数cvshowimage在窗口中显示每一帧的图像;接着使用函数recvdata打开动感单车数据传输串口,接收动感单车的速度数据,并计算相邻帧之间的延时,从而控制视频的播放。
所述通过摄像机的匀速移动采集真实物理世界的视频具体为以下两种方式的其中一种:
(1)在自行车、汽车、列车等交通工具在匀速移动过程中,通过固定在交通工具上的摄像机采集视频;
(2)在无人机、飞机等飞行物在匀速移动过程中,通过固定在飞行物上的摄像机采集视频。
典型的是在人匀速骑行单车过程中通过头戴或者车载的摄像机采集视频。
本发明方法的优点及显著效果,和以往的方法相比具有以下特点:
本发明能够实时采集锻炼者骑车时的速度,并能输出速度数据,让锻炼者实时了解自己的运动状态。该系统提供了骑车虚拟场景所需的硬件设备,把车速实时输入视频模块中,较好的实现与视频模块的互动,增加骑车的娱乐性,提升骑车健身效果。
本发明装置能同步实时采集锻炼者骑车时的速度,保证速度数据传输的实时性。
本发明装置可用于驱动视频模块模型,且速度和视频驱动匹配效果好,显示实时性好。
附图说明
图1是本发明整体流程图。
图2是电源模块与单片机模块的连接电路图
图3是霍尔测速模块与单片机模块的连接电路图。
图4是蓝牙模块与单片机模块的连接电路图。
图中:1.动感单车,2.霍尔传感器,3.单片机模块,4.电源模块,5.蓝牙模块,6.视频模块。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
如图1所示,本发明包括动感单车1、电源模块4、霍尔测速模块2、单片机模块3、蓝牙模块7和视频模块6;霍尔测速模块2安装在动感单车1的驱动轮处,电源模块4与单片机模块3连接,霍尔测速模块2与单片机模块3连接,单片机模块3与蓝牙模块5连接,蓝牙模块5和视频模块6无线连接;霍尔测速模块2实时监测动感单车1驱动轮的转动,获得速度脉冲信号,并传给单片机模块3,单片机模块3依据速度脉冲信号获得动感单车4的车速并传送给蓝牙模块5,蓝牙模块5将速度的数据无线实时地传送到视频模块6。
如图2所示,电源模块4的正负电源线分别与单片机模块3的vcc引脚和gnd引脚相连。
如图3所示,霍尔测速模块2的vcc引脚与单片机模块3的vcc引脚相连,霍尔测速模块2的gnd引脚与单片机模块3的gnd引脚相连,霍尔测速模块2的d0引脚与单片机模块3的p3.2引脚相连。
如图4所示,蓝牙模块5的vcc引脚与单片机模块3的vcc引脚相连,蓝牙模块5的gnd引脚与单片机模块3的gnd引脚相连,蓝牙模块5的rxd引脚与单片机模块3的txd引脚相连,蓝牙模块5的txd引脚与单片机模块3的rxd引脚相连。
本发明的具体实施过程是:
在人匀速骑行单车过程中,通过头戴或者车载的摄像机采集视频,测速模块2实时监测动感单车1驱动轮的转动,获得速度脉冲信号,并传给单片机模块3,依据速度脉冲信号,单片机模块3计算出动感单车1的车速,计算方法如下:
动感单车的车速为:
式中,v为动感单车的车速,单位为转/秒,t为速度脉冲信号的采样时间,单位为毫秒,m为t时间内单片机脉冲计数器的计数值,单位为个,n为磁钢个数,单位为个。
通过单车上的摄像机匀速移动采集到真实物理世界的视频,人在体验虚拟现实骑行动感单车1时观看真实物理世界的视频,骑行动感单车1过程中通过霍尔测速模块2检测动感单车1的速度脉冲信号,单片机模块3依据速度脉冲信号获得动感单车4的实时速度,发送到蓝牙模块5。
当蓝牙模块5将动感单车的速度数据,无线实时地传入视频模块6后,视频模块就可以依据动感单车的速度数据,播放视频。动感单车的速度快,视频播放就快,动感单车的速度慢,视频播放就慢,动感单车的速度为零,视频就停止播放。
在视频模块6中根据实时速度计算播放帧率,先采用以下公式计算获得视频模块6中的漫游路程为:
其中,k表示摄像机拍摄视频时的帧率(单位为每秒帧数),v表示摄像机拍摄视频时摄像机匀速移动的速度(单位为千米每小时);
再采用以下公式计算获得动感单车1所经过的路程为l:
其中,n1、n2、…、n20表示霍尔测速模块2在1s内采样获得的各个速度脉冲信号数据,d表示动感单车1的驱动轮直径,m表示磁钢个数;
最后根据l=p×δk计算获得播放帧率δk,再采用
基于vc++的视频播放结构用播放帧率控制播放真实物理世界的视频,使得视频播放和虚拟现实骑行相匹配,具体过程如下:
所述用播放帧率控制播放真实物理世界的视频具体为:
在视频模块(6)中,首先通过opencv库创建视频显示的窗口,并将视频存储到cvcapture结构体中,用于一帧一帧读取视频。cvcapture是一个结构体,用来保存图像捕获的信息,就像一种数据类型(如int,char等)只是存放的内容不一样,在opencv中处理视频时按一帧一帧读取。cvcapture结构中,每获取一帧后,这些信息都将被更新,获取下一帧回复。
然后使用函数cvqueryframe(cvcapture*capture),从cvcapture结构体中读取每一帧的图像,再使用函数cvshowimage(constchar*name,constcvarr*image),在窗口中显示每一帧的图像;
使用函数recvdata(lptstrlpszdata,constintnsize),打开动感单车数据传输串口,接收动感单车的速度数据,并计算相邻帧之间的延时,实现实时接收到的速度数据控制驱动视频的播放。