发明内容
本申请提供了一种虚拟现实头戴式可视设备的调试方法和***,解决现有虚拟现实头戴式可视设备调试过程中存在的耗时繁琐的技术问题。
为解决上述技术问题,本申请采用以下技术方案予以实现:
提出一种虚拟现实头戴式可视设备的调试方法,包括以下步骤:获取至少一个调试项数组;基于每个所述调试项数组生成与其对应的一条调试参数曲线;显示虚拟图像,并在所述虚拟图像上叠加显示每条所述调试参数曲线;其中,每个所述调试项数组对应一个调试项,每个所述调试项数组包括N个按照时间顺序采样的调试参数,N为正整数;虚拟图像由包括各个所述调试项数组在内的数据生成。
进一步的,每个所述调试项数组均为动态数组,所述调试项数组的更新频率为所述虚拟图像的刷新帧频率,所述调试项数组的更新方式为:将新采样的调试参数设置为更新后的调试项数组中的第一位数值,从所述调试项数组第二位开始,将原调试项数组中的第N-1位数值设置为更新后的调试项数组的第N位数值,N大于等于2;显示虚拟图像,并在所述虚拟图像上叠加显示每条所述调试参数曲线,具体为:按照所述刷新帧频率显示更新后的虚拟图像,并在所述虚拟图像上叠加显示更新后的调试参数曲线。
进一步的,所述基于每个所述调试项数组生成与其对应的一条调试参数曲线,具体为:以时间为横轴,以调试参数值为纵轴建立坐标系;将N个所述调试参数按照时间顺序放置于所述坐标系中;以N个所述调试参数为节点绘制调试参数曲线。
进一步的,在步骤“获取至少一个调试项数组”之前,还包括步骤:选择至少一个调试项;所述“获取至少一个调试项数组”具体为:获取与被选择的调试项相对应的调试项数组。
进一步的,在所述虚拟图像上叠加显示每条所述调试参数曲线,具体为:将M条调试参数曲线分区域叠加显示于虚拟图像上;或者,将M条调试曲线叠加显示于虚拟图像上的同一区域中,M大于等于2。
提出一种虚拟现实头戴式可视设备的调试***,包括调试参数获取模块、调试参数曲线生成模块和叠加显示模块;所述调试参数获取模块,用于获取至少一个调试项数组;其中,每个所述调试项数组对应一个调试项,每个所述调试项数组包括有N个按照时间顺序采样的调试参数,N为正整数;所述调试参数曲线生成模块,用于接收所述调试参数获取模块获取的至少一个调试项数组,并基于每个所述调试项数组生成与其对应的一条调试参数曲线;所述叠加显示模块,用于显示虚拟图像,并在所述虚拟图像上叠加显示每条所述调试参数曲线;其中,虚拟图像由包括各个所述调试项数组在内的数据生成。
进一步的,所述调试参数获取模块获取到的每个调试项数组均为动态数组,所述调试项数组的更新频率为所述虚拟图像的刷新帧频率,所述调试项数组的更新方式为:将新采样的调试参数设置为更新后的调试项数组中的第一位数值,从所述调试项数组第二位开始,将原调试项数组中的第N-1为数值设置为更新后的调试项数组的第N位数值,N大于等于2;则所述调试参数曲线生成模块生成的调试参数曲线,为基于按照所述刷新频率动态更新的调试项数组生成的按照所述刷新频率动态更新的调试参数曲线;则所述叠加显示模块,用于按照所述刷新帧频率显示更新后的虚拟图像,并在所述虚拟图像上叠加显示更新后的调试参数曲线。
进一步的,调试参数曲线生成模块包括坐标建立模块、调试参数输入模块和绘制模块;所述坐标建立模块包括至少一个坐标建立子模块,每个所述坐标建立子模块用于以时间为横轴,以调试参数值为纵轴建立一个坐标系;所述调试参数输入模块,用于建立至少一个N位的数组,将从所述调试参数获取模块获取的至少一个调试项数组存储于所述至少一个N位的数组中;所述绘制模块包括至少一个绘制子模块,每个所述绘制子模块用于从所述调试参数输入模块中的一个N位的数组中读取N个调试参数,按时间顺序将N个调试参数放置于一个坐标系中,并以N个调试参数为节点绘制一条调试参数曲线。
进一步的,所述***还包括调试项选择模块;所述调试项选择模块,用于选择至少一个调试项,以使所述调试参数获取模块获取与被选择的调试项相对应的至少一个调试项数组。
进一步的,所述叠加显示模块,用于将至少一条调试参数曲线分区域叠加显示于虚拟图像上;或者,将至少一条调试参数曲线叠加显示于虚拟图像上的同一区域中。
与现有技术相比,本申请的优点和积极效果是:本申请实施例提出的虚拟现实头戴式可视设备的调试方法和***中,显示虚拟图像的同时,在虚拟图像上叠加显示有与生成虚拟图像相关的调试项对应的调试参数曲线;调试参数为生成虚拟图像的相关数据,因此调试参数曲线反应的是与虚拟图像成像相关的参数的变化情况,则这种叠加显示方式,实现了将底层数据与底层数据产生的虚拟画面同时显示在一个空间中,能够直观的看到由于数据的变化引起的虚拟图像的变化,如果虚拟图像出现了问题,测试人员无需从头部取下虚拟现实头戴式可视设备,也无需根据现象和经验定位问题范围,更无需查看log数据查找问题点,通过调试参数曲线的变化就能直观的了解到引起虚拟图像变化的哪些底层数据出现了问题,使得开发人员在调试过程中,能够在虚拟环境中直接观察调试数据的实时动态变化与显示的虚拟图像之间的关系,解决了调试过程中耗时繁琐的技术问题。
结合附图阅读本申请实施方式的详细描述后,本申请的其他特点和优点将变得更加清楚。
具体实施方式
下面结合附图对本申请的具体实施方式作进一步详细地说明。
如图1所示,为本申请实施例提出的虚拟现实头戴式可视设备的调试方法流程图,包括以下步骤:
步骤S11:选择至少一个调试项。
调试项为与生成虚拟图像相关的软件和硬件的参数种类,虚拟图像由包括调试项在内的众多数据生成;例如生成虚拟图像相关的帧频率和生成虚拟图像所需的各种传感器的3轴数据等;对于传感器的3轴数据,将3轴的数据细分为3个调试项,每个调试项对应一个轴的参数。
步骤S12:获取至少一个调试项数组。
也即,获取与被选择的调试项相对应的调试项数组。一个调试项数组对应一个调试项,其内包含有N个按照时间顺序采样的调试参数。生成一帧虚拟图像的底层数据中,对应有多项调试项,也即对应获取多个调试项数组。
步骤S13:基于每个调试项数组生成与其对应的一条调试参数曲线。
调试参数曲线体现的是调试参数的动态变化,在调试过程中,若显示的虚拟图像产生不正常显示情况,则与生成虚拟图像相关的调试参数曲线会出现不正常波动,从而能够根据调试参数曲线的波动判断虚拟图像显示出现问题的原因。
而对于多项调试项,对应多组调试参数组,则相应生成多条调试参数曲线,每条调试参数曲线的波动表征生成虚拟图像的底层数据的一个调试项的变化。
具体的调试参数曲线生成可以通过OpenGL图像接口按照以下实施例方式实现:以时间为横轴,以调试参数值为纵轴建立坐标系;然后将N个调试参数按照时间顺序放置于所述坐标系中后,以N个调试参数为节点绘制调试参数曲线。坐标原点作为当前采样时间点时,坐标横轴表征的是过去某时间点至当前采样时间的时间段,N个调试参数中,按照采样时间顺序放置于坐标系后绘制的调试曲线,越靠近坐标原点表征的越靠近当前时间的底层数据变化。
步骤S14:显示虚拟图像,并在虚拟图像上叠加显示每条调试参数曲线。
通过图像接口OpenGL进行调试参数曲线的绘制,绘制的调试参数曲线以叠加(Overlay)的形式叠加到虚拟图像上。具体的图像叠加方法采用现有的可以实现图像叠加显示的技术实现,本申请不予赘述。
本申请实施例中,每个调试项数组均为动态数组,其更新频率为虚拟现实头戴式可视设备显示虚拟图像的刷新帧频率;则对应的,基于调试项数组生成的调试参数曲线的显示刷新频率也与虚拟图像的刷新帧频率相同。
更新方式为:将新采样的调试参数设置为更新后的调试项数组中的第一位数值,并从调试项数组第二位开始,将原调试项数组中的第N-1位数值设置为更新后的调试项数组的第N位数值,N大于等于2。则显示虚拟图像,并在虚拟图像上叠加显示每条调试参数曲线,具体为:按照刷新帧频率显示更新后的虚拟图像,并在虚拟图像上按照帧频率叠加显示更新后的调试参数曲线;更新的调试参数曲线基于更新的调试项数组生成。
以调试虚拟图像抖动的例子为例,陀螺仪传感器的x轴向数据对应为一个调试项,以10位的调试项数组为例,其中包含按照时间顺序采样的a1、a2、……、a9和a10共10个陀螺仪x轴调试参数,其中a1在时间轴上对应当前采样时间采样的参数,而a2、……、a9和a10依次为过去时间采样的参数,编号越大过去时间越久;按照步骤S13的方法,在当前帧虚拟图像中叠加显示的由a1至a10生成的调试参数曲线。进而,继续采样的参数a11,也即新采样的调试参数替换a1设置成为当前采样参数,原采样参数a1替换原采样参数a2成为更新的a2,原采样参数a2替换原采样参数a3成为更新的a3,直至原采样参数a9替换原采样参数a10成为更新a10,形成更新的调试项数组,并且更新频率为虚拟现实头戴式可视设备显示虚拟图像的刷新帧频率。根据更新的调试项数组生成更新的调试参数曲线。当显示下一帧虚拟图像时,与下一帧虚拟图像叠加显示的是基于更新调试项数组生成的更新的调试参数曲线。因此,对于按照帧频率刷新显示的虚拟图像上,叠加显示的是动态的调试参数曲线。若虚拟图像产生抖动的不正常现象是由陀螺仪传感器的x轴数据不正常引起的,则与虚拟图像叠加的陀螺仪x轴调试参数曲线会出现不正常波动,从而能够使测试人员第一时间获知图像的抖动是否陀螺仪传感器引起的,实现了问题的准确定位,节省了问题查找时间,并且测试人员无需从头部取下虚拟现实头戴式可视设备。
上述可见,由于调试项为生成虚拟图像的底层数据,则若虚拟图像的显示出现问题,对应底层数据一定也存在问题,本申请的实现方式,即将生成虚拟图像的底层数据以调试参数曲线的形式与虚拟图像一起显示出来,使得测试人员能够直观的同时掌握虚拟图像的变化以及底层数据的变化关系,如果虚拟图像出现了问题,测试人员无需从头部取下虚拟现实头戴式可视设备,也无需根据现象和经验定位问题范围,更无需查看log数据查找问题点,通过调试参数曲线的变化就能直观的了解到引起虚拟图像变化的哪些底层数据出现了问题,使得测试人员在调试过程中,能够在虚拟环境中直接观察调试数据的实时动态变化与显示的虚拟图像之间的关系,解决了调试过程中耗时繁琐的技术问题。
生成虚拟图像相关的底层数据很多,因此本申请实施例中,调试项至少为一个。则针对M个调试项,M大于1,需要获取M个调试项数组,并基于M个调试项数组生成M条调试参数曲线,这M条调试参数曲线,可以分区域的叠加显示于对应的虚拟图像上,例如对于图像抖动而言,引起图像抖动的调试项可能是陀螺仪传感器x轴数据、可能是陀螺仪z轴数据、可能是加速度传感器x轴数据、可能是加速度传感器z轴数据等等,将这些调试项对应的调试参数曲线分区域的全部与虚拟图像叠加显示,则在图像抖动发生时,能够快速定位引起图像抖动的方向和问题数据。这里所指的分区域,是指对于一帧虚拟图像而言,在其显示空间内建立有多个子坐标系,每个子坐标系相互之间不重叠,每个子坐标系用于显示一条调试参数曲线,因此显示的调试参数曲线彼此之间独立不重叠,但每一条调试参数曲线与虚拟图像重叠显示。
也可以将M条调试曲线叠加显示于虚拟图像上的同一区域中;同样以图像抖动为例,将陀螺仪传感器x轴对应的调试参数曲线和陀螺仪传感器z轴对应的调试参数曲线在同一个显示区域,甚至同一个坐标系中,与虚拟图像叠加显示,而将加速度传感器x轴对应的调试参数曲线和速度传感器z轴对应的调试参数曲线在另外的同一个显示区域与虚拟图像叠加显示,一方面实现对同类调试项的分类,同时也实现了让测试人员快速定位引起图像抖动的方向和问题数据。这里所指的同区域,可以理解为多个子坐标重叠在一个坐标系内,多条调试参数曲线显示在同一坐标系中,不仅与虚拟图像重叠显示,各个调试参数曲线之间也彼此重叠显示。
基于上述的虚拟现实头戴式可视设备的调试方法,本申请实施例还提出一种虚拟现实头戴式可视设备的调试***,如图2所示,包括调试参数获取模块21、调试参数曲线生成模块22和叠加显示模块23。
调试参数获取模块21,用于获取至少一个调试项数组;其中,每个调试项数组对应一个调试项,每个调试项数组包括有N个按照时间顺序采样的调试参数,N为正整数;调试参数曲线生成模块22,用于接收调试参数获取模块获取的至少一个调试项数组,并基于每个调试项数组生成与其对应的一条调试参数曲线;叠加显示模块23,用于显示虚拟图像,并在虚拟图像上叠加显示每条调试参数曲线;其中,虚拟图像由包括各个调试项数组在内的数据生成。
调试参数获取模块21获取到的每个调试项数组均为动态数组,调试项数组的更新频率为虚拟图像的刷新帧频率,调试项数组的更新方式为:将新采样的调试参数设置为更新后的调试项数组中的第一位数值,并从调试项数组第二位开始,将原调试项数组中的第N-1位数值设置为更新后的调试项数组的第N位数值,N大于等于2;则调试参数曲线生成模块22生成的调试参数曲线,为基于按照虚拟图像的刷新频率动态更新的调试项数组生成的按照刷新频率动态更新的调试参数曲线;则叠加显示模块23,用于按照刷新帧频率显示更新后的虚拟图像,并在虚拟图像上叠加显示更新后的调试参数曲线。
具体的,调试参数曲线生成模块22包括坐标建立模块221、调试参数输入模块222和绘制模块223;坐标建立模块221包括至少一个坐标建立子模块2211,每个坐标建立子模块2211用于以时间为横轴,以调试参数值为纵轴建立一个坐标系;调试参数输入模块222,用于建立至少一个N位的数组,将从调试参数获取模块获取的至少一个调试项数组存储于至少一个N位的数组中;绘制模块223包括至少一个绘制子模块2231,每个绘制子模块用于从调试参数输入模块中的一个N位的数组中读取N个调试参数,按时间顺序将N个调试参数放置于一个坐标系中,并以N个调试参数为节点绘制一条调试参数曲线。
该调试***中还包括调试项选择模块24,该调试项选择模块,用于选择至少一个调试项,以使调试项参数获取模块21获取与被选择的调试项相对应的至少一个调试项数组。
叠加显示模块23,用于将至少一条调试参数曲线分区域叠加显示于虚拟图像上;或者,将至少一条调试曲线叠加显示于虚拟图像上的同一区域中。
多个调试参数获取模块21中包括有软件调试参数采样模块和硬件调试参数采样模块;硬件调试参数采样模块包括但不限于陀螺仪传感器、加速度传感器、地磁传感器等。
具体的虚拟现实头戴式可视设备的调试***的工作过程,已经在上述虚拟现实头戴式可视设备的调试方法中详述,此处不予赘述。
上述本申请实施例提出的虚拟现实头戴式可视设备的调试方法和***中,采用调试项的调试参数曲线与生成的虚拟图像叠加显示的方式,使测试人员在测试过程中能够直接观察生成虚拟图像的底层数据的实时动态变化,从而能够快速的在虚拟图像发生异常时获知引起异常的调试项数据的变化,无需测试人员将虚拟现实头戴式可视设备取下,无需定位问题范围,无需查找log数据,节省了测试时间,简化了测试步骤。
应该指出的是,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的普通技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。