一种基于unity 3D的VR健身交互***
技术领域
本发明涉及虚拟现实技术领域,尤其是一种VR健身交互***。
背景技术
虚拟现实技术(Virtual Reality简称VR)是一种能够创建和体验虚拟世界的计算机仿真技术,利用计算机图形***和外接各类设备生成虚拟的交互式三维动态场景,对用户的输入作出实时响应,能够使用户产生沉浸感。Unity3D是由Unity Technologies开发的多平台的综合型游戏开发工具,包含了完整的渲染、UI、场景构建、动画、视觉特效、物理模拟、资源管理等模块,是一个全面整合的专业游戏引擎。
现有的室内健身单车形式单一,只能在固定场景下使用,单调而且缺乏互动性。随着技术的发展,VR技术逐渐被人们熟知,但内容却相对缺乏。现有的专利CN 206660438 U使用脚踏板动作传感器测速,不方便且不够精准,用显示屏播放固定的视景视频,内容单一缺乏交互性,不能调动用户的健身兴趣。
发明内容
为了克服现有技术的不足,本发明提供一种基于unity 3D的VR健身交互***,对于提高用户健身的兴趣、增强交互性方面发挥了积极作用。
本发明解决其技术问题所采用的技术方案是:
所述的基于unity 3D的VR健身交互***,包括运动信息采集模块、虚拟场景生成模块、外部设备和VR交互模块,其中运动信息采集模块用于采集单车运动速度和角度信息;虚拟场景生成模块用于生成模拟实际的健身场景;外部设备用于展现虚拟场景和捕捉用户的动作信息;VR交互模块用于用户和虚拟场景中的物体交互。
所述基于unity 3D的VR健身交互***使用unity 3D创建虚拟健身场景,整个虚拟场景是动态的,所有物体具有位置尺寸信息的三维立体图形,使用与现实相似的虚拟单车作为载具,用户骑行单车在街道中穿行,骑行速度通过光电传感器监测实时传送到虚拟场景中,虚拟单车依据得到的速度信息向前移动并将速度显示在视野的右上方,用户转动车把时通过角度传感器把角度信息传输到电脑端,虚拟场景中的单车随之转向,并实现选择道路、改变方向、加速飞跃、碰撞检测功能。
所述的运动信息采集模块对单车进行改造,选用方便拆卸的室内骑行平台,自主调节车轮阻力,在骑行平台阻尼轮部位安装反射式光电传感器,光电传感器发射频率为38kHz的红外线,当红外线遇到固定在阻尼轮上的反射面时,红外线反射回来被接收管接收,经过比较器电路处理后,绿色指示灯亮起,同时信号输出接口输出数字信号,产生高低电平,通过电位器旋钮调节检测距离,有效距离范围为2~30cm,工作电压为3.3V-5V,在单车的前轮下方安装一个随车轮左右转动的滑动变阻器,单车左右转向时同时改变滑动变阻器的阻值大小,改变电路的分压值,从而获得转动角度信息,采集到的输出电平和分压值信息经过单片机***滤波处理后,通过输出电平占空比变化计算速度大小,通过滑动变阻器分压值变化计算转动角度,并以串口方式发送到电脑端输入虚拟场景中控制虚拟单车的速度和方向。
所述虚拟场景生成模块包括飞行游戏场景,通过深度学习方法将挥动手臂的上肢运动与虚拟场景相结合,即建立山谷中飞行游戏的模型,用户以一只飞行物的视角通过关卡,在重力的作用下向前俯冲,用户挥动双臂时,前方放置的摄像头实时拍摄用户的肢体动作,使用OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型实现多线程的多人骨骼点实时检测,对人体姿态建模,判断用户当前是否挥动手臂,当判断为挥臂时,控制飞行物向上飞行越过设置的障碍以通过关卡。
所述外部设备包括虚拟现实头盔、红外激光发射器和摄像头,虚拟现实头盔通过有线从单片机传输速度和角度数据到控制端,向用户展现虚拟场景,在单车固定位置的车头左前方和车尾右后方分别放置一个相同高度且互成斜对角的红外激光发射器,两个红外激光发射器内各有一个扫描模块,扫描模块以每秒6次的周期分别在水平和垂直方向轮流对定位空间发射横竖激光扫描定位空间,虚拟现实头盔的前面板上分布有32个光敏传感器,红外激光扫过虚拟现实头盔时,虚拟现实头盔开始计数,根据接收到红外激光的所有光敏传感器的位置和接收激光时间的关系,用时间乘以速度计算得到每个接收到红外激光的光敏传感器相对于两个红外激光发射器的距离,即可形成一个3D模型,从而探测虚拟现实头盔的位置和方向,摄像头捕捉用户的肢体动作,使用公开的OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型识别姿态信息,控制场景中选定的与用户视角相关联的飞行物的飞行高度并和虚拟场景模块产生互动效果。
所述VR交互模块有三种体现形式,第一,碰撞检测方式,将所有场景中的实物物体在unity3D场景中加入碰撞体组件,当用户骑行单车碰撞到实物物体时,实物物体包括但不限于房屋、路沿、树木、石头,能够模拟真实情况检测到碰撞,根据检测到的碰撞控制虚拟单车作出停止或加速反应;第二,注视反馈方式,用户佩戴上虚拟现实头盔后,场景中设置跟踪头部移动代表光标的准星,当准星对准场景中的任意动物,准星停留1秒时间后该动物会被激发选中,产生跳跃和奔跑;第三,手势交互方式,使用分辨率1024*768像素以上、帧率30帧/秒以上且无红外功能的摄像头实时捕捉用户的姿态信息,当用户上下挥动手臂时,对捕捉到的图像进行深度学习处理,使用OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型实现多线程的多人骨骼点实时检测,对人体姿态建模,得到人体的骨骼位点信息,将胸部的骨骼位点作为身体中心,计算骨骼手部与身体中心的连线和骨骼头部与身体中心的连线之间的夹角,当夹角角度小于50度时则判定为挥手动作,角度大于50度时则判定为没有挥手,并将判定结果反馈到虚拟场景中,当判定结果为挥手时控制游戏场景中的飞行物随之升高并通过障碍。
本发明的有益效果在于:
(1)本发明可以实现VR健身场景多元化。在unity 3D开发环境中,可以利用开发工具创建各种丰富的场景,例如著名景点的模拟场景、校园环境模拟场景以及专业赛道模拟场景,可以根据需求创建特定的场景。
(2)本发明有较低的硬件成本。摆脱了当前VR运动设备必须深度定制的要求,使用普通单车和外部设备组装而成,提供了通用的解决方案,大大降低了成本。
(3)本发明具有交互性和趣味性。不同于当前枯燥的室内健身运动,本发明结合虚拟现实技术,用户在健身同时佩戴头盔可以沉浸到丰富的虚拟场景中,犹如在真实的室外环境。用户还可以与场景产生互动,以游戏化的方式来完成任务,使健身体验更加有趣。
附图说明
图1为本发明的结构示意图。
图2为本发明的VR视觉部分示意图。
图3为本发明的城市街道场景示意图。
图4为本发明的公园场景示意图。
图5为本发明的公园场景空中示意图。
图6为本发明的闯关游戏场景示意图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
如图1所示,本发明包括:
运动信息采集模块1,用于采集单车运动速度和角度信息;
虚拟场景生成模块2,用于生成模拟实际的健身场景;
外部设备3,用于展现虚拟场景和捕捉用户的动作信息;
VR交互模块4,用于虚拟场景中用户和物体进行交互。
本发明所述基于unity 3D的VR健身交互***,具体实施方式包括以下内容:
本发明的技术方案为:一种基于unity 3D的VR健身交互***,包括运动信息采集模块、虚拟场景生成模块、外部设备和VR交互模块,其中运动信息采集模块用于采集单车运动速度和角度信息;虚拟场景生成模块用于生成模拟实际的健身场景;外部设备用于展现虚拟场景和捕捉用户的动作信息;VR交互模块用于用户和虚拟场景中的物体交互。
所述基于unity 3D的VR健身交互***使用unity 3D创建虚拟健身场景,区别于传统的平面地图,整个虚拟场景是动态的,所有物体是具有位置尺寸信息的三维立体图形。在城市街道场景中,使用与现实相似的虚拟单车作为载具,用户骑行单车在街道中穿行,骑行速度通过光电传感器监测实时传送到虚拟场景中,虚拟单车依据得到的速度信息向前移动并将速度显示在视野的右上方。用户转动车把时通过角度传感器把角度信息传输到电脑端,虚拟场景中的单车随之转向,并实现选择道路、改变方向、加速飞跃、碰撞检测功能。创新点在于将传感器与单车分离,能够精准方便的测得运动速度和方向信息,并控制虚拟单车随现实单车的运动而移动。
所述的运动信息采集模块对单车进行改造,使用方便拆卸的室内骑行平台,可以自主调节车轮阻力。在骑行台阻尼轮部位安装反射式光电传感器,传感器发射频率38kHz的红外线,当红外线遇到固定在阻尼轮上的反射面时,红外线反射回来被接收管接收,经过比较器电路处理后,绿色指示灯亮起,同时信号输出接口输出数字信号,产生高低电平。通过电位器旋钮可以调节检测距离,有效距离范围为2~30cm,工作电压为3.3V-5V。在单车的前轮下方安装一个随车轮左右转动的滑动变阻器,单车左右转向时同时改变滑动变阻器的阻值大小,改变电路的分压值,从而获得转动角度信息。采集到的输出电平和分压值信息经过单片机***滤波处理后,通过输出电平占空比变化计算速度大小,通过滑动变阻器分压值变化计算转动角度,并以串口方式发送到电脑端输入虚拟场景中控制虚拟单车的速度和方向。
所述虚拟场景生成模块包括飞行游戏场景,本发明通过深度学习方法将挥动手臂的上肢运动与虚拟场景相结合,具体实现如下:建立山谷中飞行游戏的模型,用户以一只飞行物的视角通过关卡,在重力的作用下向前俯冲,用户挥动双臂时,前方放置的摄像头实时拍摄用户的肢体动作,使用OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型实现多线程的多人骨骼点实时检测,对人体姿态建模,判断用户当前是否挥动手臂,当判断为挥臂时,控制飞行物向上飞行越过设置的障碍以通过关卡。
所述外部设备包括虚拟现实头盔、红外激光发射器和摄像头,虚拟现实头盔通过有线从单片机传输速度和角度数据到控制程序,向用户展现虚拟场景,产生沉浸式体验,在单车固定位置的车头左前方和车尾右后方分别放置一个相同高度且互成斜对角的红外激光发射器,两个红外激光发射器内各有一个扫描模块,扫描模块以每秒6次的周期分别在水平和垂直方向轮流对定位空间发射横竖激光扫描定位空间,虚拟现实头盔的前面板上分布有32个光敏传感器,红外激光扫过虚拟现实头盔时,虚拟现实头盔开始计数,根据接收到红外激光的所有光敏传感器的位置和接收激光时间的关系,用时间乘以速度计算得到每个接收到红外激光的光敏传感器相对于两个红外激光发射器的距离,即可形成一个3D模型,从而探测虚拟现实头盔的位置和方向,摄像头捕捉用户的肢体动作,使用公开的OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型识别姿态信息,控制场景中选定的与用户视角相关联的飞行物的飞行高度并和虚拟场景模块产生互动效果。
所述VR交互模块有三种体现形式,第一,碰撞检测方式,将所有场景中的实物物体在unity3D场景中加入碰撞体组件,当用户骑行单车碰撞到实物物体时,实物物体包括但不限于房屋、路沿、树木、石头,能够模拟真实情况检测到碰撞,根据检测到的碰撞控制虚拟单车作出停止或加速反应;第二,注视反馈方式,用户佩戴上虚拟现实头盔后,场景中设置跟踪头部移动代表光标的准星,当准星对准场景中的任意动物,准星停留1秒时间后该动物会被激发选中,产生跳跃和奔跑;第三,手势交互方式,使用分辨率1024*768像素以上、帧率30帧/秒以上且无红外功能的摄像头实时捕捉用户的姿态信息,当用户上下挥动手臂时,对捕捉到的图像进行深度学习处理,使用OpenPose实时多人关键点检测库并通过COCO数据集训练后的深度学习模型实现多线程的多人骨骼点实时检测,对人体姿态建模,得到人体的骨骼位点信息,将胸部的骨骼位点作为身体中心,计算骨骼手部与身体中心的连线和骨骼头部与身体中心的连线之间的夹角,当夹角角度小于50度时则判定为挥手动作,角度大于50度时则判定为没有挥手,并将判定结果反馈到虚拟场景中,当判定结果为挥手时控制游戏场景中的飞行物随之升高并通过障碍。
1.健身单车与虚拟现实结合方法:
本发明为了增加室内健身单车运动的乐趣,将普通单车与虚拟现实技术相结合。使用室内骑行平台固定单车的后轮,平台设置的阻尼轮可以调节骑行阻力大小。在阻尼轮旁安装光电传感器,接收阻尼轮上的反光装置反射的红外线,输出高低电平,经过处理后可以得到车轮的转速信息。在单车的前轮下方安装一个可随车轮转动的滑动变阻器,通过改变阻值大小来获得转动角度信息,采集到的两种运动数据经过单片机***处理后以串口方式发送到电脑端进一步处理。
用户佩戴虚拟现实头盔可以沉浸到虚拟场景中,用户的位置处于一辆虚拟单车的座位上,与实际场景中位置相匹配,见图2。用户转动头部时可以看到头盔中前后左右的场景全貌,用户骑行单车开始进行健身时,虚拟场景中的单车会随之前进,并且在视野的右上方实时显示当前的速度信息,见图3。用户在实际中转动车把,通过角度传感器把角度信息记录下来,虚拟场景中的单车会同时转向,实现变动车道转弯的功能。当用户骑车进入场景中设置的特效球后,即可触发程序进入下一个场景。
进入公园场景后,用户可以选择在公园中骑行漫游,或者使用注视反馈功能与场景中的动物互动,见图4。注视特定的动物后,用户的载具会换成这个动物并且缓慢上升,从空中视角俯视整个公园场景,这时用户骑行单车可以体验到在空中遨游的感觉,见图5。在空中可以向任意方向骑行,骑行进入空中设置的特效球后即可进入选择的另一个场景。
2.上肢运动与虚拟现实交互的方法
本发明内置了闯关游戏模块,用于实现上肢挥臂运动的交互游戏化。在游戏模块,用户以一只飞翔的雄鹰视角飞行,见图6。在游戏提示的倒计时结束后,雄鹰在重力的作用下向前俯冲,快要撞到墙面时,用户可以挥动双臂控制雄鹰向上飞行以通过关卡。使用外置的摄像头捕捉用户的姿态信息,通过深度学习模型得到骨骼信息,当判断为挥臂动作时,传递信息到虚拟场景即可控制雄鹰的飞行高度。本模块既可以实现上肢协调运动又可以增加健身的趣味性。