一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

显示设备、控制设备以及同步校准方法与流程

2022-05-17 23:24:51 来源:中国专利 TAG:


1.本技术实施例涉及vr(virtual reality,虚拟现实)技术和ar(augmented reality,增强现实)技术。更具体地讲,涉及一种显示设备、控制设备以及同步校准方法。


背景技术:

2.随着科技的发展,vr技术和ar技术应用而生。该些技术均是将真实世界信息和虚拟世界信息无缝集成的新技术,是把原本在现实世界的一定时间空间范围内很难体验到的实体信息,例如,视觉信息,声音,味道,触觉等,通过电脑等科学技术,模拟仿真后再叠加,实现将虚拟的信息应用到真实世界,被用户感官所感知,从而达到超越现实的感官体验。对vr技术或ar技术的应用,可体现为具体的vr设备或ar设备,例如vr头显(也即虚拟现实头戴式显示设备)。
3.在实际应用中,vr头显的使用需配备手柄。通过手柄,用户可以进入vr世界并对其中的虚拟目标进行互动。目前,vr头显对手柄的定位,具体为:vr头显通过摄像头拍摄手柄图像,然后对该手柄图像进行光斑提取,并基于光斑确定手柄的空间位置。其中,手柄上有按照一定空间结构排列的led(light emitting diode,发光二极管)灯,在手柄工作过程中,led灯处于闪烁状态,点亮的led灯在手柄图像上呈现为光斑。
4.通常情况下,摄像头拍摄手柄图像的曝光时间和手柄上led灯闪烁时间存在时间偏移。随着时间的推移,在定位手柄位置时会由于摄像头拍摄手柄图像与手柄上led灯闪烁不同步而造成手柄定位失败的问题,进而影响用户体验。


技术实现要素:

5.本技术示例性的实施方式提供一种显示设备、控制设备以及同步校准方法,可实现对控制设备的准确定位,提升用户体验。
6.第一方面,本技术实施例提供一种显示设备,包括:
7.显示器;
8.摄像头;
9.分别与摄像头和显示器连接的处理器,该处理器被配置为:
10.获取摄像头拍摄得到的当前帧图像在拍摄过程中的帧数;
11.在帧数为预设帧数的整数倍时,根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间;
12.通过通信器发送亮灯延时时间给控制设备,控制设备为与显示设备配对成功的设备。
13.示例地,显示设备为vr头盔,控制设备为手柄,指示灯为led灯。在拍摄过程中,对于与显示设备配对成功的控制设备,显示设备统计当前已拍摄图像的帧数,在已拍摄图像的帧数为预设帧数的整数倍时,显示设备确定对控制设备上指示灯进行同步校准的亮灯延时时间,并通过通信器发送亮灯延时时间给控制设备,以实现显示设备曝光时间与控制设
备亮灯时间的同步校准,进而基于后续拍摄图像上的光斑准确定位追踪控制设备,提升用户体验。
14.本技术一些实施例中,若在当前帧图像之后的n帧图像后进行同步校准,n为自然数,则根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间,可以包括:确定当前帧图像的曝光起始时刻和当前系统时间的时间偏差值;根据时间偏差值与获取n帧图像的时长,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
15.例如,在当前帧图像之后的下一帧图像后进行同步校准,即n取值为1。此时,确定当前帧图像的曝光起始时刻t0和当前系统时间t1的时间偏差值为δt=t1-t0;根据时间偏差值δt与获取1帧图像的时长t,确定对控制设备上指示灯进行同步校准的亮灯延时时间为dt=t-δt d,其中,d为调整时间,是基于实验结果得到的。
16.本技术一些实施例中,该处理器还被配置为:根据摄像头的帧率,确定控制设备上指示灯的闪烁周期,闪烁周期与帧率的乘积为1;发送闪烁周期给控制设备。本技术实施例根据摄像头的帧率设定指示灯的闪烁周期,以便使摄像头的拍摄曝光时刻与指示灯闪烁保持同步。假如摄像头的帧率是60fps,则一帧图像时间大约为t=16.667ms,一帧图像时间包含曝光时间8.33ms和图像存储时间8.33ms,这里我们假设都是8ms,则对应的指示灯闪烁的亮暗时间分别对应为8ms和8ms。
17.本技术一些实施例中,该处理器还被配置为:在控制设备亮灯时,通过摄像头拍摄包含控制设备的图像;根据图像对控制设备进行定位追踪。
18.第二方面,本技术实施例提供一种控制设备,包括:
19.通信器,用于与显示设备进行通信,控制设备为与显示设备配对成功的设备;
20.处理器,被配置为:
21.通过通信器接收显示设备发送的亮灯延时时间,亮灯延时时间用于指示控制设备上指示灯进行同步校准的亮灯延时时间;
22.根据亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻;
23.自亮灯起始时刻开始,控制指示灯周期性闪烁。
24.本技术一些实施例中,指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,闪烁周期与帧率的乘积为1。
25.本技术实施例中,控制设备根据显示设备发送的亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻,并自亮灯起始时刻开始,控制指示灯周期性闪烁,其中指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,从而实现显示设备曝光时间与控制设备亮灯时间的同步校准,进而基于后续拍摄图像上的光斑准确定位追踪控制设备,提升用户体验。
26.第三方面,本技术实施例提供一种同步校准方法,应用于显示设备,该方法包括:获取摄像头拍摄得到的当前帧图像在拍摄过程中的帧数;在帧数为预设帧数的整数倍时,根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间;通过通信器发送亮灯延时时间给控制设备,控制设备为与显示设备配对成功的设备。
27.本技术一些实施例中,若在当前帧图像之后的n帧图像后进行同步校准,n为自然
数,则根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间,可以包括:确定当前帧图像的曝光起始时刻和当前系统时间的时间偏差值;根据时间偏差值与获取所述n帧图像的时长,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
28.本技术一些实施例中,上述方法还可以包括:根据摄像头的帧率,确定控制设备上指示灯的闪烁周期,闪烁周期与帧率的乘积为1;发送闪烁周期给控制设备。
29.本技术一些实施例中,所述方法还可以包括:在控制设备亮灯时,通过摄像头拍摄包含控制设备的图像;根据图像对控制设备进行定位追踪。
30.第四方面,本技术实施例提供一种同步校准方法,应用于控制设备,该方法包括:接收显示设备发送的亮灯延时时间,亮灯延时时间用于指示控制设备上指示灯进行同步校准的亮灯延时时间,控制设备为与显示设备配对成功的设备;根据亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻;自亮灯起始时刻开始,控制指示灯周期性闪烁。
31.本技术一些实施例中,指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,闪烁周期与帧率的乘积为1。
32.第五方面,本技术实施例提供一种同步校准装置,应用于显示设备,该装置包括:
33.获取模块,用于获取摄像头拍摄得到的当前帧图像在拍摄过程中的帧数;
34.处理模块,用于在帧数为预设帧数的整数倍时,根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间;
35.发送模块,用于通过通信器发送亮灯延时时间给控制设备,控制设备为与显示设备配对成功的设备。
36.基于同一发明构思,由于该装置解决问题的原理与第一方面的显示设备设计中的方案对应,因此该装置的实施可以参见显示设备的实施,重复之处不再赘述。
37.第六方面,本技术实施例提供一种同步校准装置,应用于控制设备,该装置包括:
38.接收模块,用于接收显示设备发送的亮灯延时时间,亮灯延时时间用于指示控制设备上指示灯进行同步校准的亮灯延时时间,控制设备为与显示设备配对成功的设备;
39.处理模块,用于根据亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻;以及,自亮灯起始时刻开始,控制指示灯周期性闪烁,指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,闪烁周期与帧率的乘积为1。
40.基于同一发明构思,由于该装置解决问题的原理与第二方面的控制设备设计中的方案对应,因此该装置的实施可以参见控制设备的实施,重复之处不再赘述。
41.第七方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第三方面或第四方面中任一项所述的方法。
42.第八方面,本技术实施例提供一种显示系统,包括如第一方面所述的显示设备和如第二方面所述的控制设备。
43.第九方面,本技术实施例提供一种运行指令的芯片,芯片用于执行如上所述的方法。
44.第十方面,本技术实施例提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,至少一个处理器可以从该计算机可读存储介质中读取计算机程序,该至少一个处理器执行所述计算机程序时可实现如上任一
方法实施例所述的方法。
45.本技术的这些和其它方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
46.为了更清楚地说明本技术实施例或相关技术中的实施方式,下面将对实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
47.图1中示例性示出了根据一些实施例的显示设备与控制设备之间操作场景的示意图;
48.图2a中示例性示出了根据一些实施例的显示设备的硬件配置框图;
49.图2b至图2d中示例性示出了显示设备的结构示意图;
50.图3中示例性示出了根据一些实施例的控制设备的硬件配置框图;
51.图4为本技术提供的显示设备的软件系统示意图;
52.图5为本技术提供的显示设备能够提供的应用程序的示意图;
53.图6中示例性示出了摄像头拍摄曝光与led灯闪烁不同步的时序图;
54.图7中示例性示出了摄像头拍摄曝光与led灯闪烁同步的时序图;
55.图8为本技术一实施例提供的同步校准方法的流程图;
56.图9中示例性示出了当前帧图像的曝光起始时刻和当前系统时间的关系示意图;
57.图10为本技术一实施例提供的同步校准装置的结构示意图;
58.图11为本技术另一实施例提供的同步校准装置的结构示意图。
具体实施方式
59.为使本技术的目的、实施方式和优点更加清楚,下面将结合本技术示例性实施例中的附图,对本技术示例性实施方式进行清楚、完整地描述,显然,所描述的示例性实施例仅是本技术一部分实施例,而不是全部的实施例。
60.基于本技术描述的示例性实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术所附权利要求保护的范围。此外,虽然本技术中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整实施方式。
61.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
62.本技术中说明书和权利要求书及上述附图中的术语

第一



第二



第三

等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明(unless otherwise indicated)。应该理解这样使用的用语在适当情况下可以互换,例如能够根据本技术实施例图示或描述中给出那些以外的顺序实施。
63.此外,术语

包括



具有

以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
64.本技术中使用的术语

模块

,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
65.本技术中使用的术语

显示设备

,例如vr头盔,即vr头显,早期也有vr眼镜等称呼。vr头显是一种利用头戴式显示器将人的对外界的视觉、听觉封闭,引导用户产生一种身在虚拟环境中的感觉,其显示原理是左右眼屏幕分别显示左右眼的图像,人眼获取这种带有差异的信息后在脑海中产生立体感。
66.本技术中使用的术语

控制设备

,例如手柄,是与显示设备配对工作的一个便携式设备,通常可在较短的距离范围内有线/无线控制显示设备。一般使用红外线和/或射频(rf)信号和/或蓝牙与显示设备连接,也可以包括wifi模块、usb(universal serial bus,通用串行总线)通信模块、蓝牙、动作传感器等功能模块。对于vr设备而言,手柄相当于鼠标对于pc(personal computer,个人计算机)一样重要。
67.本技术中使用的术语

手势

,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。
68.图1中示例性示出了根据实施例中显示设备与控制设备之间操作场景的示意图。如图1中示出,用户可通过控制设备100和移动终端300控制显示设备200。此外,显示设备200可能需要控制控制设备100执行一些特定的动作。
69.示例性地,用户可以通过控制设备100上按键,语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过控制设备100上音量加减键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键等输入相应控制指令,来实现控制显示设备200的功能。
70.对于显示设备200控制控制设备100执行的特定动作,例如可以具体为显示设备200控制控制设备100中的马达进行震动以模拟射击感觉,等等。
71.在一些实施例中,控制设备100和显示设备200的通信可以包括红外协议通信、蓝牙协议通信及其他短距离通信方式等。控制设备100通过无线或其他有线方式来控制显示设备200。
72.在一些实施例中,也可以使用平板电脑、计算机、笔记本电脑等移动终端300和其他智能设备以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序通过配置可以在与智能设备关联的屏幕上,在直观的用户界面(ui)中为用户提供各种控制。
73.在一些实施例中,移动终端300可与显示设备200安装软件应用,通过网络通信协议实现连接通信,实现一对一控制操作的和数据通信的目的。如:可以实现用移动终端300与显示设备200建立控制指令协议,将遥控控制键盘同步到移动终端300上,通过控制移动终端300上用户界面,实现控制显示设备200的功能。也可以将移动终端300上显示音视频内容传输到显示设备200上,实现同步显示功能。
74.如图1中还示出,显示设备200还与服务器400通过多种通信方式进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。示例的,显示设备200通过发送和接收信息,接收软件程序更新,或访问远程储存的数字媒体库。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。通过服务器400提供视频点播和广告服务等其他网
络服务内容。
75.本技术实施例不对具体显示设备200的类型,尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,显示设备200可以根据需要做性能和配置上一些改变。
76.图2a中示例性示出了根据一些实施例的控制设备的硬件配置框图。如图2a中示出,控制设备100可以包括物理功能键21、用于被追踪的指示灯22、通信器23、处理器24、电源25、复位电路26和存储器27等组件中的至少一个。其中:
77.在一些实施例中,物理功能键21可以包括但不限于音量加减键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键、用于调出系统菜单的系统按键、扳机(trigger)键等。对于各按键的功能可参考相关技术,此处仅作示例性说明,不再一一赘述。例如,音量加减键用于vr场景中音量的大小控制;移动按键用于控制vr场景中的上、下、左、右的移动。
78.在一些实施例中,指示灯22,按照一定结构布局在控制设备100的外壳上。以led灯为例,其发光色可以是饱和度较高的可见光颜色,也可以是红外光,通过led灯可以实现显示设备对控制设备100的定位追踪。其中,指示灯的个数可以为至少一个,并且左手手柄上指示灯和右手手柄上指示灯的数目和排列形状可以是相同的,或左手手柄上指示灯和右手手柄上指示灯的数目和排列形状可以是不同的。另外,随着控制设备100的形状的不同,指示灯22的结构布局也是不同的,例如图2b至图2d所示。
79.在一些实施例中,通信器23可以包括wifi模块、usb通信模块、蓝牙模块等基于各种通信协议的模块。示例地,通信器23可以提供应用在控制设备100上的包括2g/3g/4g/5g等无线通信的解决方案。通信模块23可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。通信模块23还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,通信模块23的至少部分功能模块可以被设置于处理器24中。在一些实施例中,通信模块23的至少部分功能模块可以与处理器24的至少部分模块被设置在同一个器件中。或者,通信器23还包括nfc(near field communication,近场通信)模块,以促进短程通信。例如,在nfc模块可基于rfid(radio frequency identification,射频识别)技术,irda(infrared data association,红外数据协会)技术,uwb(ultra wideband,超宽带)技术,bt(bluetooth,蓝牙)技术和其他技术来实现。
80.处理器24通常控制控制设备100的整体操作,诸如与显示,数据通信,摄像机操作和记录操作相关联的操作。处理器24可以包括一个或多个处理单元,例如:处理器24可以是mcu(micro control unit,微控制单元)、cpu(central processing unit,中央处理单元),也可以是dsp(digital signal processor,数字信号处理器)、asic(application specific integrated circuit,专用集成电路)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
81.在一些实施例中,电源25用于为控制设备100的各功能电路和模块提供稳定的电力。电源25可以包括电源管理系统,一个或多个电源,及其他与为控制设备100生成、管理和分配电力相关联的组件。示例性地,电源25可以是电池及相关控制电路。
82.在一些实施例中,复位电路26是使处理器24在获得供电的瞬间,由初始状态开始
工作。若处理器24内的随机存储器、计数器等电路获得供电后不经复位便开始工作,可能某种干扰会导致处理器24因程序错乱而不能正常工作,为此,处理器24需要设置复位电路。
83.在一些实施例中,存储器27,包括存储用于驱动控制设备200的各种软件模块。如:存储器27中存储的各种软件模块,包括:基础模块、检测模块、显示控制模块、浏览器模块、和各种服务模块等中的至少一种。
84.其中,基础模块用于显示设备200中各个硬件之间信号通信、并向上层模块发送处理和控制信号的底层软件模块。检测模块用于从各种传感器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块。显示控制模块用于控制显示器进行显示图像内容的模块,可以用于播放多媒体图像内容和ui界面等信息。通信模块用于与外部设备之间进行控制和数据通信的模块。浏览器模块用于执行浏览服务器之间数据通信的模块。服务模块,用于提供各种服务以及各类应用程序在内的模块。同时,存储器27还用存储接收外部数据和用户数据、各种用户界面中各个项目的图像以及焦点对象的视觉效果图等。
85.图3中示例性示出了根据一些实施例的显示设备的硬件配置框图。如图3所示例,显示设备200通常包括处理器31、显示器32、摄像头33、通信器34、电源35和存储器36等组件中的至少一种。
86.在一些实施例中,处理器31通过存储在存储器上中各种软件控制程序,来控制显示设备200的工作和响应用户的操作。处理器31可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器32上显示ui对象的用户命令,处理器31便可以执行与由用户命令选择的对象有关的操作。
87.处理器31可以包括ram(random access memory,随机存取存储器)、rom(read-only memory,只读存储器)、cpu(central processing unit,中央处理器)、视频处理器、音频处理器、gpu(graphics processing unit,图形处理器)或其他处理器、通信接口(communication interface),以及通信总线(bus)中的至少一种。其中,通信总线连接各个部件。
88.在一些实施例中,ram用于存储操作系统或其他正在运行中的程序的临时数据。
89.在一些实施例中,rom用于存储各种系统启动的指令。
90.在一些实施例中,rom用于存储一个基本输入输出系统,称为bios(basic input output system,基本输入输出系统)。用于完成对系统的加电自检、系统中各功能模块的初始化、系统的基本输入/输出的驱动程序及引导操作系统。
91.在一些实施例中,在收到开机信号时,显示设备200的电源35开始启动,cpu运行rom中系统启动指令,将存储在存储器的操作系统的临时数据拷贝至ram中,以便于启动或运行操作系统。当操作系统启动完成后,cpu再将存储器中各种应用程序的临时数据拷贝至ram中,然后,以便于启动或运行各种应用程序。
92.在一些实施例中,cpu用于执行存储在存储器中操作系统和应用程序指令,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
93.在一些示例性实施例中,cpu可以包括多个处理器。多个处理器可包括一个主处理器以及一个或多个子处理器。主处理器,用于在预加电模式中执行显示设备200一些操作,和/或在正常模式下显示画面的操作。一个或多个子处理器,用于在待机模式等状态下一种
操作。
94.在一些实施例中,gpu,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,对基于运算器得到的各种对象,进行渲染,上述渲染后的对象用于显示在显示器上。
95.在一些实施例中,视频处理器被配置为将接收外部视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等等视频处理,可得到直接可显示设备200上显示或播放的信号。
96.在一些实施例中,视频处理器包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。
97.其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入mpeg-2,则解复用模块进行解复用成视频信号和音频信号等。
98.视频解码模块,则用于对解复用后的视频信号进行处理,包括解码和缩放处理等。
99.图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的gui信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。
100.帧率转换模块,用于对转换输入视频帧率,如将60hz帧率转换为120hz帧率或240hz帧率,通常的格式采用如插帧方式实现。
101.显示格式化模块,则用于将接收帧率转换后视频输出信号,改变信号以符合显示格式的信号,如输出rgb数据信号。
102.在一些实施例中,gpu可以和视频处理器可以集成设置,也可以分开设置,集成设置的时候可以执行输出给显示器的图形信号的处理,分离设置的时候可以分别执行不同的功能,例如gpu frc(frame rate conversion,帧率变换))构。
103.在一些实施例中,音频处理器用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等处理,得到可以在扬声器中播放的声音信号。
104.在一些实施例中,视频处理器可以包括一颗或多颗芯片组成。音频处理器,也可以包括一颗或多颗芯片组成。
105.在一些实施例中,视频处理器和音频处理器,可以单独的芯片,也可以于控制器一起集成在一颗或多颗芯片中。
106.在一些实施例中,音频输出,在处理器31的控制下接收音频处理器输出的声音信号,如:扬声器,以及除了显示设备200自身携带的扬声器之外,可以输出至外接设备的发生装置的外接音响输出端子,如:外接音响输出端子或耳机接口等,还可以包括通信接口中的近距离通信模块,例如:用于进行蓝牙扬声器声音输出的蓝牙模块。
107.在一些实施例中,显示器32,用于接收源自处理器31输出的图像信号,进行显示视频内容和图像以及菜单操控界面的组件。
108.在一些实施例中,显示器32,包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件。
109.在一些实施例中,显示视频内容,可以显示来自网络通信协议接收来自网络服务器端发送的各种图像内容。
110.在一些实施例中,显示器32用于呈现显示设备200中产生且用于控制显示设备200的用户操控ui界面。
111.在一些实施例中,根据显示器32类型不同,还包括用于驱动显示的驱动组件。
112.在一些实施例中,显示器32为一种投影显示器,还可以包括一种投影装置和投影屏幕。
113.在一些实施例中,用户可在显示器32上显示的图形用户界面(gui)输入用户命令,则用户输入接口通过图形用户界面(gui)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
114.在一些实施例中,

用户界面

,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphic user interface,gui),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、widget等可视的界面元素。
115.在一些实施例中,摄像头33可以包括但不限于双目摄像头,例如双目红外摄像头,用于拍摄控制设备的指示灯。双目摄像头包括统一标定后的双摄像头,能够同步曝光图像。也就是说,摄像头33的位置应该使得,当用户佩戴上显示设备200时,摄像头33能够拍摄到用户的手部位置。
116.在一些实施例中,通信器34是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器34可以包括wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。
117.电源35在处理器31控制下,将外部电源输入的电力为显示设备200提供电源供电支持。电源35可以包括安装显示设备200内部的内置电源电路,也可以是安装在显示设备200外部电源,在显示设备200中提供外接电源的电源接口。
118.存储器36,用于在控制器的控制下存储驱动和控制显示设备200的各种运行程序、数据和应用。存储器36,可以存储用户输入的各类控制信号指令。
119.在一些实施例中,系统可以包括内核(kernel)、命令解析器(shell)、文件系统和应用程序。内核、shell和文件系统一起组成了基本的操作系统结构,它们让用户可以管理文件、运行程序并使用系统。上电后,内核启动,激活内核空间,抽象硬件、初始化硬件参数等,运行并维护虚拟内存、调度器、信号及进程间通信(ipc)。内核启动后,再加载shell和用户应用程序。应用程序在启动后被编译成机器码,形成一个进程。
120.图4为本技术提供的显示设备的软件系统示意图。参见图4,在一些实施例中,将系统分为四层,从上至下分别为应用程序(applications)层(简称

应用层

),应用程序框架(application framework)层(简称

框架层

),安卓运行时(android runtime)和系统库层(简称

系统运行库层

),以及内核层。
121.在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(window)程序、系统设置程序、时钟程序、相机应用等;也可以是第三方开发者所开发的应用程序,比如嗨见程序、k歌程序、魔镜程序等。在具体实施时,应用程
序层中的应用程序包不限于以上举例,实际还可以包括其它应用程序包,本技术实施例对此不做限制。
122.框架层为应用程序层的应用程序提供api(application programming interface,应用编程接口)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处理中心,这个中心决定让应用层中的应用程序做出动作。应用程序通过api接口,可在执行中访问系统中的资源和取得系统的服务。
123.如图4所示,本技术实施例中应用程序框架层包括管理器(managers),内容提供者(content provider),视图系统(view system)等,其中管理器包括以下模块中的至少一个:活动管理器(activity manager)用与和系统中正在运行的所有活动进行交互;位置管理器(location manager)用于给系统服务或应用提供了系统位置服务的访问;文件包管理器(package manager)用于检索当前安装在设备上的应用程序包相关的各种信息;通知管理器(notification manager)用于控制通知消息的显示和清除;窗口管理器(window manager)用于管理用户界面上的图标、窗口、工具栏、壁纸和桌面部件。
124.在一些实施例中,活动管理器用于:管理各个应用程序的生命周期以及通常的导航回退功能,比如控制应用程序的退出(包括将显示窗口中当前显示的用户界面切换到系统桌面)、打开、后退(包括将显示窗口中当前显示的用户界面切换到当前显示的用户界面的上一级用户界面)等。
125.在一些实施例中,窗口管理器用于管理所有的窗口程序,比如获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕,控制显示窗口变化(例如将显示窗口缩小显示、抖动显示、扭曲变形显示等)等。
126.在一些实施例中,系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系统运行库层中包含的c/c 库以实现框架层要实现的功能。opengl es(opengl for embedded systems)是opengl三维图形api的子集,针对手机、pda和游戏主机等嵌入式设备而设计。webkit是一个开源的浏览器引擎。
127.在一些实施例中,内核层是硬件和软件之间的层。如图4所示,内核层至少包含以下驱动中的至少一种:音频驱动、显示驱动、蓝牙驱动、摄像头驱动、wifi驱动、usb驱动、hdmi驱动、传感器驱动(如指纹传感器,温度传感器,触摸传感器、压力传感器等)等。
128.在一些实施例中,内核层还包括用于进行电源管理的电源驱动模块。
129.在一些实施例中,图4中的软件架构对应的软件程序和/或模块存储在图2a或图3所示的存储器27或存储器36中。
130.在一些实施例中,以魔镜应用(拍照应用)为例,当遥控接收装置接收到控制设备输入操作,相应的硬件中断被发给内核层。内核层将输入操作加工成原始输入事件(包括输入操作的值,输入操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,根据焦点当前的位置识别该输入事件所对应的控件以及以该输入操作是确认操作,该确认操作所对应的控件为魔镜应用图标的控件,魔镜应用调用应用框架层的接口,启动魔镜应用,进而通过调用内核层启动摄像头驱动,实现通过摄像头捕获静态图像或视频。
131.在一些实施例中,对于具备触控功能的显示设备,以分屏操作为例,显示设备接收用户作用于显示屏上的输入操作(如分屏操作),内核层可以根据输入操作产生相应的输入
事件,并向应用程序框架层上报该事件。由应用程序框架层的活动管理器设置与该输入操作对应的窗口模式(如多窗口模式)以及窗口位置和大小等。应用程序框架层的窗口管理根据活动管理器的设置绘制窗口,然后将绘制的窗口数据发送给内核层的显示驱动,由显示驱动在显示屏的不同显示区域显示与之对应的应用界面。
132.在一些实施例中,图5为本技术提供的显示设备能够提供的应用程序的示意图。如图5中所示,应用程序层包含至少一个应用程序可以在显示器中显示对应的图标控件,如:媒体中心图标控件、应用程序中心图标控件、游戏应用图标控件等。
133.在一些实施例中,媒体中心应用程序,可以提供各种多媒体内容播放的应用程序。例如,媒体中心,可以为不同于直播电视或视频点播,用户可通过媒体中心应用程序访问各种图像或音频所提供服务。
134.在一些实施例中,应用程序中心,可以提供储存各种应用程序。应用程序可以是一种游戏、应用程序,或某些和计算机系统或其他设备相关但可以在智能电视中运行的其他应用程序。应用程序中心可从不同来源获得这些应用程序,将它们储存在本地储存器中,然后在显示设备200上可运行。
135.目前,例如vr头盔等vr设备在各行各业如教育培训、消防演练、虚拟驾驶、房地产等项目中具有广泛的应用,给用户带来身临其境般沉浸式的视觉盛宴,其中手柄等类似的控制设备扮演着不可或缺的角色。目前,vr设备对于手柄的定位追踪主要有3dof(degree of freedom,自由度)的(仅姿态)和6dof(姿态与位置)两种。
136.在一些vr应用场景中,需要对在一个空间范围内运动的目标进行定位。例如用户与vr环境交互过程中,通常采用的方式为手持带有led灯亮灭闪烁的控制设备,利用控制设备上的双目摄像头获取控制设备的图像,然后对图像进行光斑提取并编码,判断出led灯的id编号,并根据pnp(pespective-n-point)算法实现定位追踪,完成vr场景中的交互。但此方式存在摄像头拍摄曝光和led灯闪烁存在时间偏移的问题。随着时间的推移,摄像头拍摄曝光与led灯闪烁不能实现严格的同步控制。如图6所示例,假如摄像头拍摄曝光时刻为tc,led灯点亮时刻为tl,摄像头拍摄曝光时刻与led灯点亮时刻的时间差为:c=tl-tc。这个时间差属于纳秒级别很小,但累加起来偏移会造成对控制设备的识别和定位不准确,追踪失效进一步会导致操作延时、失败或误操作,用户体验效果差。
137.针对以上问题,本技术根据实际使用环境,通过获取摄像头拍摄曝光起始时间戳和帧数定期同步校准控制设备上指示灯的闪烁,从而实现摄像头拍摄曝光与指示灯闪烁一直保持严格的同步。
138.在如图1所示的vr交互系统中,在佩戴显示设备的用户使用控制设备100进入vr场景后,显示设备200利用摄像头追踪控制设备100,控制设备100上排布一定空间结构的指示灯周期亮暗闪烁。具体地,显示设备200利用摄像头获取包含控制设备100的图像,由于摄像头拍摄曝光和指示灯闪烁保持严格同步(如图7所示),因此,通过提取图像中亮斑进行编码,去除干扰杂点,识别出控制设备上指示灯的id编号,并根据pnp算法计算出控制设备在空间中的位置,可实现对控制设备的高精度空间定位,保证用户操作的有效性,提升用户体验。
139.下面采用详细的实施例,来说明本技术如何进行同步校准。
140.图8为本技术一实施例提供的同步校准方法的流程图。如图8所示,显示设备200中
处理器31被配置为执行以下步骤:
141.在s101中,获取摄像头拍摄得到的当前帧图像在拍摄过程中的帧数。
142.在实际应用过程中,显示设备200通过摄像头33拍摄控制设备100上灯闪(指示灯22点亮时),得到包含控制设备100的图像,图像中光斑为指示灯22对应影像,并通过处理器31统计摄像头33拍摄得到的当前帧图像在拍摄过程中的帧数。
143.在一些实施例中,可通过设置计数器来统计帧数,其中计数器可以是加法计数器或减法计数器或可逆计数器。一种实现中,计数器为加法计数器,当计数器统计的帧数达到预设帧数时,复位至0重新开始计数,其中预设帧数例如为200帧;或者,计数器不断累加图像的帧数,直至达到该计数器本身可统计的最大值,然后复位至0重新开始计数。类似的,当计数器为减法计数器时,其初始值可以设置为预设帧数,然后在统计过程中随图像帧数的增加而递减,直至归零,然后复位至预设帧数,重新开始统计;或者,计数器的初始值为其本身可统计的最大值,然后在统计过程中随图像帧数的增加而递减,直至归零,然后复位至最大值重新开始计数。或者,当计数器为可逆计数器,例如在技术过程中先加后减或者先减后加,其中累加的过程与加法计数器的实现类似,累减的过程与减法计数器的实现类似,此处不再赘述。
144.在s102中,在帧数为预设帧数的整数倍时,根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
145.示例地,仍以预设帧数为200为例,具体实现时,处理器31获取帧数num,当num%200!=0时,继续获取帧数num=num 1,直至num%200=0,即帧数为预设帧数的整数倍。在帧数为200或400等200的整数倍时,处理器31根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
146.通常情况下,摄像头的帧率是固定的,根据帧率可获得摄像头拍摄单帧图像的周期。例如,摄像头的帧率是60fps(frames per second,每秒传输帧数),则摄像头拍摄单帧图像的周期为t=1/60≈16.667ms,其中可包含曝光时间8.33ms和图像存储时间8.33ms。在摄像头拍摄单帧图像的周期已知的情况下,通过当前帧图像的曝光起始时刻和当前系统时间可以确定摄像头后续拍摄图像的起始曝光时刻。
147.由于本技术同步校准的是摄像头拍摄曝光和指示灯闪烁,因此,可进一步根据摄像头后续拍摄图像的起始曝光时刻确定控制设备上指示灯的亮灯延时时间。
148.在s103中,通过通信器发送亮灯延时时间给控制设备。
149.其中,控制设备100为与显示设备200配对成功的设备。一些实施例中,可以将亮灯延时时间携带在同步指令中发送给控制设备100。
150.一些实施例中,处理器31周期性地执行以上操作,通过摄像头33拍摄图像曝光起始时间戳和帧数定期同步校准指示灯22闪烁,以确保摄像头33拍摄图像和指示灯22闪烁的严格同步控制,从而实现显示设备200对控制设备100的精准定位追踪。
151.本技术实施例在显示设备的摄像头已拍摄图像的帧数为预设帧数的整数倍时,显示设备确定对控制设备上指示灯进行同步校准的亮灯延时时间,并通过通信器发送亮灯延时时间给控制设备,以实现显示设备曝光时间与控制设备亮灯时间的同步校准,进而基于后续拍摄图像上的光斑准确定位追踪控制设备,提升用户体验。
152.对应地,如图8所示,控制设备100中处理器24被配置为执行以下步骤:
153.在s201中,通过通信器接收显示设备发送的亮灯延时时间。
154.在s202中,根据亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻。
155.在s203中,自亮灯起始时刻开始,控制指示灯周期性闪烁。
156.若亮灯延时时间是携带在同步指令中发送给控制设备100的,则处理器24通过通信器23接收同步指令后,还需解析该同步指令以获得亮灯延时时间。
157.本技术实施例中,控制设备根据显示设备发送的亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻,并自亮灯起始时刻开始,控制指示灯周期性闪烁,其中指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,从而实现显示设备曝光时间与控制设备亮灯时间的同步校准,进而基于后续拍摄图像上的光斑准确定位追踪控制设备,提升用户体验。
158.在上述实施例的基础上,若在当前帧图像之后的n帧图像后进行同步校准,n为自然数,则根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间,可以包括:确定当前帧图像的曝光起始时刻和当前系统时间的时间偏差值;根据时间偏差值与获取n帧图像的时长,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
159.当摄像头拍摄一帧图像开始曝光时,处理器31会分配一个缓存区(buffer)给该帧图像,此时会有一个时间戳,就是该帧图像开始曝光时刻。
160.例如,参考图9,摄像头拍摄单帧图像的周期为t,确定当前帧图像的曝光起始时刻t0和当前系统时间t1的时间偏差值为δt=t1-t0。其中,下一帧图像的曝光起始时刻为t2,或者第n帧图像的曝光起始时刻为tn。假如下一次同步校准为第n帧图像之后,则亮灯延时时间为:
161.dt=t*n-δt d
162.其中,d为调整时间,是基于实验结果得到的。考虑到亮灯延时时间在显示设备200和控制设备100之间的传输需要时间,且显示设备200发送亮灯延时时间也可能存在延迟,因此,可以通过设置d来平衡发送延迟及传输所需的时间。
163.一些实施例中,处理器31还被配置为:根据摄像头的帧率,确定控制设备上指示灯的闪烁周期,闪烁周期与帧率的乘积为1;发送闪烁周期给控制设备。
164.基于摄像头的帧率设定指示灯的闪烁周期,以便使摄像头的拍摄曝光时刻与指示灯闪烁保持严格同步。假如摄像头的帧率是60fps,则一帧图像时间大约为t=16.667ms,一帧图像时间包含曝光时间8.33ms和图像存储时间8.33ms,这里可以假设都是8ms,则对应的指示灯闪烁的亮暗时间分别对应为8ms和8ms,如图7所示。
165.一些实施例中,处理器31还被配置为:在控制设备亮灯时,通过摄像头拍摄包含控制设备的图像;根据图像对控制设备进行定位追踪。
166.具体地,处理器31计算出指示灯22在空间中的位置,并根据指示灯22在控制设备100上的空间布局,结合pnp算法算处控制设备100在现实空间中的位置,从而实现控制设备在三维空间中的定位和追踪。
167.进一步地,处理器31基于计算出的结果对控制设备的位置进行平滑和预测,保证控制设备定位追踪的时效性和流畅性。
168.补充说明的是,本技术提供的方案中,指示灯发出的光可以是可见光或红外光等。
169.下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
170.图10为本技术一实施例提供的同步校准装置的结构示意图。本技术实施例提供一种同步校准装置,应用于显示设备。如图10所示,该同步校准装置110包括:获取模块111、处理模块112和发送模块113。其中:
171.获取模块111,用于获取摄像头拍摄得到的当前帧图像在拍摄过程中的帧数。
172.处理模块112,用于在帧数为预设帧数的整数倍时,根据当前帧图像的曝光起始时刻和当前系统时间,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
173.发送模块113,用于通过通信器发送亮灯延时时间给控制设备,控制设备为与显示设备配对成功的设备。
174.本技术实施例提供的装置,可用于执行图8所示实施例中显示设备执行的步骤,其实现原理和技术效果类似,在此不再赘述。
175.一些实施例中,若在当前帧图像之后的n帧图像后进行同步校准,n为自然数,则处理模块112可以具体用于:确定当前帧图像的曝光起始时刻和当前系统时间的时间偏差值;根据时间偏差值与获取所述n帧图像的时长,确定对控制设备上指示灯进行同步校准的亮灯延时时间。
176.一些实施例中,处理模块112还可以用于:根据摄像头的帧率,确定控制设备上指示灯的闪烁周期,闪烁周期与帧率的乘积为1;触发发送模块113发送闪烁周期给控制设备。
177.一些实施例中,处理模块112还可以用于:在控制设备亮灯时,通过摄像头拍摄包含控制设备的图像;根据图像对控制设备进行定位追踪。
178.图11为本技术另一实施例提供的同步校准装置的结构示意图。本技术实施例提供一种同步校准装置,应用于控制设备,该控制设备为与上述显示设备配对成功的设备。如图11所示,该同步校准装置120包括:接收模块121和处理模块122。其中:
179.接收模块121,用于接收显示设备发送的亮灯延时时间。其中,亮灯延时时间用于指示控制设备上指示灯进行同步校准的亮灯延时时间。
180.处理模块122,用于根据亮灯延时时间,确定控制设备上指示灯的亮灯起始时刻;以及,自亮灯起始时刻开始,控制指示灯周期性闪烁。
181.本技术实施例提供的装置,可用于执行图8所示实施例中控制设备执行的步骤,其实现原理和技术效果类似,在此不再赘述。
182.一些实施例中,指示灯的闪烁周期是根据显示设备的摄像头的帧率确定的,闪烁周期与帧率的乘积为1。
183.需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,处理模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程
中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
184.例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个asic(application specific integrated circuit,特定集成电路),或,一个或多个dsp(digital signal processor,数字信号处理器),或,一个或者多个fpga(field programmable gate array,现场可编程门阵列)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如cpu或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以soc(system-on-a-chip,片上系统)的形式实现。
185.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机程序可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
186.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当计算机程序被处理器执行时实现如上任一方法实施例所述的方法。
187.本技术实施例还提供一种显示系统,包括如上所述的显示设备和控制设备,例如图1所示。
188.本技术实施例还提供一种运行指令的芯片,芯片用于执行如上任一方法实施例所述的方法。
189.本技术实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,至少一个处理器可以从该计算机可读存储介质中读取计算机程序,该至少一个处理器执行所述计算机程序时可实现如上任一方法实施例所述的方法。
190.最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
191.为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从
而使得本领域技术人员更好的使用所述实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献