电子装置和用于跟踪电子装置的姿势的方法与流程

文档序号:30171636发布日期:2022-05-26 10:38阅读:126来源:国知局
电子装置和用于跟踪电子装置的姿势的方法与流程

1.本公开涉及一种姿势跟踪技术,特定来说,涉及一种电子装置和用于跟踪电子装置的姿势的方法。


背景技术:

2.在现有技术中,头戴式显示器(head-mounted display;hmd)可基于由其前置相机所捕捉的图像而跟踪自身的姿势。然而,如果hmd前方的场景具有太少地标(landmark)或过于明亮/黑暗,则hmd可能无法恰当地执行姿势跟踪机制。在这种情况下,虚拟环境(例如虚拟现实世界)中的hmd的位置可能会不时地偏移,使得hmd的穿戴者感觉眩晕,从而可能降低用户体验。


技术实现要素:

3.因此,本公开涉及一种电子装置和一种用于跟踪电子装置的姿势的方法,其可用于解决以上技术问题。
4.本公开提供一种用于跟踪电子装置的姿势的方法,包含:获得所述电子装置在自由度(degree of freedom;dof)上的多个特定样本值,其中所述特定样本值在特定窗口中;从所述特定样本值中取得多个有效样本值且基于所述有效样本值而获得预测样本值;感测所述电子装置在所述dof上的第一实际样本值;响应于判定所述预测样本值与所述第一实际样本值之间的特定差大于预定阈值,将所述第一实际样本值判定为无效且基于所述预测样本值与所述第一实际样本值的组合而判定在所述dof上的输出样本值;以及响应于判定所述预测样本值与所述第一实际样本值之间的所述特定差不大于所述预定阈值,将所述第一实际样本值判定为有效且将所述第一实际样本值判定为在所述dof上的所述输出样本值。
5.本公开提供一种电子装置,所述电子装置包含存储器和处理器。所述存储器存储程序代码。所述处理器耦合到所述存储器且加载所述程序代码以执行:获得所述电子装置在自由度(dof)上的多个特定样本值,其中所述特定样本值在特定窗口中;从所述特定样本值中取得多个有效样本值且基于所述有效样本值而获得预测样本值;感测所述电子装置在所述dof上的第一实际样本值;响应于判定所述预测样本值与所述第一实际样本值之间的特定差大于预定阈值,将所述第一实际样本值判定为无效且基于所述预测样本值与所述第一实际样本值的组合而判定在所述dof上的输出样本值;以及响应于判定所述预测样本值与所述第一实际样本值之间的所述特定差不大于所述预定阈值,将所述第一实际样本值判定为有效且将所述第一实际样本值判定为在所述dof上的所述输出样本值。
附图说明
6.包含附图以提供对本发明的进一步理解,且附图并入在本说明书中且构成本说明书的一部分。附图示出本公开的实施例,且与描述一起用于解释本公开的原理。
7.图1为根据本公开的示例性实施例示出的电子装置的方块图;
8.图2是根据本公开的实施例示出的在6dof上的样本值;
9.图3是根据本公开的实施例示出的用于跟踪电子装置的姿势的方法的流程图。
10.附图标号说明
11.100:电子装置;
12.101:存储器;
13.102:惯性测量单元;
14.104:处理器;
15.s310、s320、s330、s340、s350、s360:步骤;
16.xi~x
i+n+2
,yi~y
i+n
,zi~z
i+n-2
,αi,βi,γi:样本值;
17.预测样本值;
18.δxi~δx
i+n-2
:差值;
19.预测差值;
20.ti~t
i+n+2
:时间点。
具体实施方式
21.现将详细地对本发明的目前优选实施例进行参考,所述实施例的实例在附图中示出。只要可能,在附图和描述中使用相同附图标记指代相同或类似部分。
22.图1为根据本公开的示例性实施例示出的电子装置的方块图。在不同实施例中,电子装置100可为hmd或能够执行姿势跟踪的其它装置,但本公开不限于此。参考图1,电子装置100包含但不限于,存储器101、惯性测量单元(inertial measurement unit;imu)102以及处理器104。电子装置100可适用于vr、ar、mr、xr或其它现实模拟相关技术。
23.存储器101可为任何类型的固定或可移动随机存取存储器(random-access memory;ram)、只读存储器(read-only memory;rom)、快闪存储器、类似装置或以上装置的组合。存储器101记录程序代码、装置配置、缓冲器数据或永久数据(例如用户数据、训练数据、情绪分类器、情绪决策、情绪配置、加权关系、线性关系、情绪组),且稍后将引入这些数据。
24.imu 102可在不同时间点处提供6dof的样本值。举例来说,imu 102可每1毫秒提供一组6dof样本值,但本公开不限于此。
25.处理器104耦合到存储器101和imu 102。处理器104配置成加载存储在存储器101中的程序代码,以执行本公开的示例性实施例的方法。
26.在一些实施例中,处理器104可为中央处理单元(central processing unit;cpu)、微处理器、微控制器、数字信号处理(digital signal processing;dsp)芯片、现场可编程门阵列(field-programmable gate array;fpga)。处理器104的功能也可通过独立电子装置或集成电路(integrated circuit;ic)来实施,且处理器104的操作也可通过软件来实施。
27.为了较佳地理解本公开的概念,图2作为实例而用于说明,其中图2是根据本公开的实施例示出的在6dof上的样本值。
28.在图2中,处理器104可在各时间点获得一组6dof样本值。举例来说,在时间点ti,处理器104可获得在各6dof上对应的样本值,例如x轴上的xi、y轴上的yi、z轴上的zi、偏航轴上的αi、俯仰轴上的βi,以及侧倾轴上的γi,但本公开不限于此。
29.在一个实施例中,可基于在对应dof上的第一感测结果和第二感测结果中的至少一个而获得在各6dof上的样本值。
30.以x轴上的样本值xi作为实例,假定imu 102在时间点ti感测x轴上的第一样本值,处理器104可将第一样本值定义为第一感测结果。同时,假定电子装置100的前置相机(未示出)在时间点ti下捕捉灰阶图像,处理器104可基于常规的姿势跟踪方法对灰阶图像执行图像辨识以在时间点ti获得x轴上的第二样本值,且可将第二样本值定义为第二感测结果。
31.在这种情况下,处理器104可使用第一感测结果将第二感测结果校正为在时间点ti的x轴上的样本值xi。
32.在另一实施例中,如果电子装置100的前置相机在时间点ti未捕捉任何灰阶图像,则处理器104可将第一感测结果(例如在时间点ti的x轴上的第一样本值)定义为在时间点ti的x轴上的样本值xi,但本公开不限于此。
33.以y轴上的样本值yi作为另一实例,假定imu 102在时间点ti感测y轴上的第三样本值,处理器104可将第三样本值定义为第一感测结果。同时,假定电子装置100的前置相机在时间点ti捕捉灰阶图像,处理器104可基于常规的姿势跟踪方法对灰阶图像执行图像辨识以在时间点ti获得y轴上的第四样本值,且可将第四样本值定义为第二感测结果。
34.在这种情况下,处理器104可使用第一感测结果将第二感测结果校正为在时间点ti的y轴上的样本值yi。
35.在另一实施例中,如果电子装置100的前置相机在时间点ti未捕捉任何灰阶图像,则处理器104可将第一感测结果(例如在时间点ti处的y轴上的第三样本值)定义为在时间点ti的y轴上的样本值yi,但本公开不限于此。
36.在一个常规的方法中,假定用于捕捉灰阶图像的前置相机的帧持续时间为k毫秒(即,前置相机每k毫秒捕捉图像),且前置相机在时间点ti、时间点t
i+k
捕捉灰阶图像,样本值xi与样本值x
i+k
之间的差将用于将样本值x
i+1
校正到样本值x
i+k-1
(即,由imu 102在样本值xi与样本值x
i+k
之间提供的样本值)。类似地,样本值yi与样本值y
i+k
之间的差将用于将样本值y
i+1
校正到样本值y
i+k-1
,并且其它dof上的样本值亦是如此。
37.在这种情况下,如果电子装置100(例如hmd)前方的场景具有太少地标或田于明亮/黑暗,则常规的方法将导致电子装置100未能获得在各6dof上的准确样本值。因此,虚拟环境(例如虚拟现实世界)中的电子装置100的位置/姿势可能会不时地偏移,使得电子装置100的穿戴者可能感觉眩晕,从而降低用户体验。
38.在本公开的实施例中,处理器104可存取存储在存储器101中的模块/程序代码,以实施用于跟踪本公开中所提供的电子装置100的姿势的方法以解决以上问题,所述方法将在以下进一步论述。
39.参考图3,其是根据本公开的实施例示出的用于跟踪电子装置的姿势的方法的流程图。此实施例的方法可由图1中的电子装置100来执行,且将结合图1和图2来描述图3中的每一步骤的细节。
40.在本公开的实施例中,处理器104可对各dof上的样本值执行本公开的方法。为了
易于理解,在以下论述中所考虑的dof可假定为x轴,且本领域的技术人员可理解本公开的方法如何用于其它dof(例如y轴、z轴、偏航轴、俯仰轴、侧倾轴)。
41.大致来说,对于在所考虑的dof(例如x轴)上的样本值,本公开的方法可使用特定窗口(其长度可称为n)中的特定样本值的一部分以预测对应于特定窗口之后的时间点的另一样本值,且预测样本值将用于与在特定窗口之后的时间点处感测到的实际样本值进行比较。如果预测样本值接近实际样本值,则实际样本值可直接用作对应于特定窗口之后的时间点的输出样本值。另一方面,如果预测样本值与实际样本值偏离,则可基于预测样本值而校正实际样本值,且所校正的实际样本值可用作对应于特定窗口之后的时间点的输出样本值。在下文中将提供详细论述。
42.首先,在步骤s310中,处理器104可获得电子装置100在dof上的多个特定样本值。在第一实施例中,假定图2中所考虑的dof为x轴且所考虑的特定窗口可包含时间点ti到时间点t
i+n-1
(即,特定窗口的长度为n),处理器104可在x轴上获得作为特定样本的样本值xi到样本值x
i+n-1
,但本公开不限于此。
43.在步骤s320中,处理器104可从特定样本值(例如样本值xi到样本值x
i+n-1
)中取得多个有效样本值且基于有效样本值而获得预测样本值在本公开的实施例中,可将特定样本值中的有效样本值理解为适合作为用于获得对应于时间点t
i+n
(即,在特定窗口之后的时间点)的预测样本值的参考。另一方面,特定样本值中的一些可为无效样本值,且可将无效样本值理解为不适合作为用于获得对应于时间点t
i+n
的预测样本值的参考,但本公开不限于此。判定样本值为有效抑或无效的机制将在之后另行说明。
44.为了较好理解以下描述,在第一实施例中,假定所有特定样本值(例如样本值xi到样本值x
i+n-1
)为有效样本值,但本公开不限于此。
45.在一个实施例中,在获得预测样本值的过程中,处理器104可获得对应于有效样本值的第j个有效样本值的差值,其中对应于第j个有效样本值的差值是有效样本值的第j个有效样本值与第(j+1)个有效样本值之间的差,其中1≤j≤m-1,且m是有效样本值的数目。
46.在第一实施例中,由于所有特定样本值(即xi到x
i+n-1
)假定为有效,故m可等于n,且对应于第j(1≤j≤m-1)有效样本值(即样本值xj)的差值可为差值δxj,所述差值δxj可通过从x
j+1
减去xj来获得。
47.接着,处理器104可基于对应于各第j有效样本值的差值而获得预测差值在第一实施例中,处理器104可基于差值δxi(即对应于第1个有效样本值的差值)到差值δx
i+n-2
(即对应于第(m-1)个有效样本值的差值)而获得预测差值
48.在一个实施例中,处理器104可经由对差值δxi到差值δx
i+n-2
执行线性组合来获得预测差值特定来说,差值δxi到差值δx
i+n-2
可个别经指派有权重,且预测差值可表征为差值δxi到差值δx
i+n-2
的加权平均值。在一个实施例中,差值δxi到差值δx
i+n-2
个别的权重可与其时间索引成正比。举例来说,对应于第(j+1)个有效样本值的差值的权重可大于对应于第j个有效样本值的差值的权重,但本公开不限于此。
49.接着,处理器104可经由将预测差值与有效样本值的第m个有效样本值组合来产生预测样本值在第一实施例中,第m个有效样本值可为样本值x
i+n-1
,且因此预测样本值可通过将预测差值与样本值x
i+n-1
组合来获得,但本公开不限于此。
50.在获得预测样本值之后,在步骤s330中,处理器104可感测电子装置100在dof上的第一实际样本值。在第一实施例中,第一实际样本值可为在时间点t
i+n
所感测的样本值x
i+n

51.如上文中所提到,如果在时间点t
i+n
未捕捉灰阶图像,则在dof(即x轴)上的第一实际样本值(即样本值x
i+n
)可由imu 102直接提供。另一方面,如果电子装置100的前置相机在时间点t
i+n
捕捉灰阶图像,则处理器104可通过使用第一感测结果将第二感测结果校正为在时间点t
i+n
的x轴上的样本值xi来获得第一实际样本值(即样本值x
i+n
),其细节将不在本文中重复。
52.在步骤s340中,处理器104可判断预测样本值与第一实际样本值(即样本值x
i+n
)之间的特定差是否大于预定阈值。
53.在本公开的实施例中,预定阈值可理解为用于判断第一实际样本值是否与预测样本值过度偏离的参考,且可基于设计者的要求而定为任何所需值。
54.在一个实施例中,如果预测样本值与第一实际样本值(即样本值x
i+n
)之间的特定差不大于预定阈值,则可表示第一实际样本值为正确测量的样本值,且因此处理器104可执行步骤s350以将第一实际样本值(即样本值x
i+n
)判定为有效,并将第一实际样本值判定为在dof上的输出样本值。也就是说,处理器104可基于第一实际样本值而定义电子装置100的姿势,且据以执行如呈现vr内容的操作,但本公开不限于此。
55.在另一实施例中,如果预测样本值与第一实际样本值(即样本值x
i+n
)之间的特定差大于预定阈值,则表示第一实际样本值可为不正确测量的样本值,且因此处理器104可执行步骤s360以将第一实际样本值(即样本值x
i+n
)判定为无效,并基于预测样本值与第一实际样本值(即样本值x
i+n
)的组合而判定在dof上的输出样本值。也就是说,处理器104可基于时间点t
i+n
的输出样本值而定义电子装置100的姿势,且据以执行例如呈现vr内容等操作,但本公开不限于此。
56.在一个实施例中,预测样本值可经指派有第一权重,且第一实际样本值(即样本值x
i+n
)可经指派有大于第一权重的第二权重。因此,处理器104可获得预测样本值和第一实际样本值(即样本值x
i+n
)的加权平均值作为时间点t
i+n
的输出样本值。
57.从另一角度而言,第一实际样本值(即样本值x
i+n
)可理解为基于预测样本值而被校正为时间点t
i+n
的输出样本值,但本公开不限于此。
58.如上文中所提到,如果第一实际样本值(即样本值x
i+n
)经判定为有效,则第一实际样本值可适合作为用于获得其它预测样本值的参考。因此,如果所考虑的特定窗口改变为包含时间点t
i+1
到时间点t
i+n
,则可再次执行图3中的方法以获得在时间点t
i+n+1
的dof上的输出样本值,其中步骤s310中的特定样本值将为样本值x
i+1
到样本值x
i+n
。另外,由于样本值
x
i+1
到样本值x
i+n
为有效,故步骤s320中的有效样本值将与特定样本值相同,且其它步骤的细节可参考以上教示,所述细节将不在本文中重复。
59.另一方面,如果第一实际样本值(即样本值x
i+n
)经判定为无效,则第一实际样本值可能不适合作为用于获得其它预测样本值的参考。因此,如果所考虑的特定窗口改变为包含时间点t
i+1
到时间点t
i+n
且再次执行图3中的方法以获得在时间点t
i+n+1
的在dof上的输出样本值,则步骤s310中的特定样本值也将为样本值x
i+1
到样本值x
i+n

60.然而,由于样本值x
i+n
为无效,故步骤s320中的有效样本值将不与特定样本值相同,而将仅包含样本值x
i+1
到样本值x
i+n-1
。在这种情况下,处理器104可基于有效样本值(即样本值x
i+1
到样本值x
i+n-1
)而获得预测样本值且其细节可参考以上教示,所述细节将不在本文中重复。
61.在一个实施例中,如果样本值x
i+n+1
经判定为有效,则样本值x
i+n+1
可适合作为用于获得其它预测样本值的参考。因此,如果所考虑的特定窗口变成包含时间点t
i+2
到时间点t
i+n+1
,且再次执行图3中的方法以获得在时间点t
i+n+2
的dof上的输出样本值,则步骤s310中的特定样本值将为样本值x
i+2
到样本值x
i+n+1

62.然而,由于样本值x
i+n+1
为有效,故步骤s320中的有效样本值将包含样本值x
i+2
到样本值x
i+n-1
及样本值x
i+n+1
(即不包含无效的样本值x
i+n
)。在这种情况下,处理器104可基于有效样本值(即样本值x
i+2
到样本值x
i+n-1
及样本值x
i+n+1
)而获得预测样本值且其细节可参考以上教示,所述细节将不在本文中重复。
63.另一方面,如果样本值x
i+n+1
以及样本值x
i+n
经判定为无效,则样本值x
i+n+1
可不适合作为用于获得其它预测样本值的参考。因此,如果所考虑的特定窗口变成包含时间点t
i+2
到时间点t
i+n+1
,且再次执行图3中的方法以获得在时间点t
i+n+2
的在dof上的输出样本值,则步骤s310中的特定样本值将为样本值x
i+2
到样本值x
i+n+1

64.然而,由于样本值x
i+n
和样本值x
i+n+1
为无效,故步骤s320中的有效样本值将包含样本值x
i+2
到样本值x
i+n-1
(即不包含无效样本值x
i+n
和样本值x
i+n+1
)。在这种情况下,处理器104可基于有效样本值(即样本值x
i+2
到样本值x
i+n-1
)而获得预测样本值且其细节可参考以上教示,所述细节将不在本文中重复。
65.由上可知,本公开的方法可以与常规的方法不同的方式来获得在所考虑的时间点的在dof上的输出样本值。更具体来说,本公开的方法可判断所感测的实际样本值是否与对应的预测样本值过度偏离,并适应性地将实际样本值校正为输出样本值。另外,如果所感测的实际样本值经判定为无效,则所感测的实际样本值将不会作为用于获得其它预测样本值的参考,但本公开不限于此。
66.因此,电子装置100在虚拟环境(例如虚拟现实世界)中的位置将不会不时地偏移,使得电子装置100的穿戴者将较少感觉眩晕,从而可提高用户体验。
67.在一些实施例中,即使预测样本值与第一实际样本值(即样本值x
i+n
)之间的特定差大于预定阈值,并不意味着第一实际样本值必然是不正确测量的样本值。举例来说,如果电子装置100(例如hmd)在时间点t
i+n
突然移动,则这可能导致第一实际样本值(即样本值x
i+n
)与预测样本值高度偏离。也就是说,第一实际样本值(即样本值x
i+n
)已准确地
表征电子装置100的移动,且因此在这种情况下应判定第一实际样本值(即样本值x
i+n
)为有效。
68.为了防止不恰当地判定任何样本值为无效的状况,本公开进一步提供以下机制。大致来说,在以下机制中,处理器104将判断预定数目的连续实际样本值是否为无效。如果是,则这可表示与对应预测样本值高度偏离的那些连续实际样本值可能是由电子装置100的突然移动产生,而不是不正确地测量。因此,处理器104可重新判定那些连续的实际样本值为有效,使得那些连续实际样本值可适合作为用于获得其它预测样本值的参考。
69.具体来说,在一个实施例中,响应于判定第一实际样本值(即样本值x
i+n
)为无效,处理器104可进一步将第一实际样本值存储到缓冲器中。
70.接着,处理器104可在时间点t
i+n+1
感测第二实际样本值(即样本值x
i+n+1
)且判断第二实际样本值是否有效。感测第二实际样本值且判断第二实际样本值是否有效的细节可参考以上教示,所述细节将不在本文中重复。
71.在一个实施例中,响应于判定第二实际样本值为有效,其表示第一实际样本值为不正确测量的值,即第一实际样本值不由电子装置100的突然移动产生。因此,处理器104可重置缓冲器。也就是说,处理器104可清除缓冲器。
72.另一方面,响应于判定第二实际样本值以及第一实际样本值为无效,表示第一实际样本值和第二实际样本值可能是由电子装置100的突然移动产生。因此,处理器104可将第二实际样本值(即样本值x
i+n+1
)存储到缓冲器中。
73.在一个实施例中,处理器104可判断缓冲器是否已存储预定数目(例如5)的实际样本值。如果是,则表示缓冲器中的所有实际样本值并非被不正确地测量,而是由电子装置100的突然移动产生。因此,处理器104可将缓冲器中的实际样本值重新定义为有效且重置缓冲器。
74.举例来说,假定预定数目为5且在缓冲器中存储有4个实际样本值(例如样本值x
i+n
到样本值x
i+n+3
)。在这种情况下,如果处理器104进一步判定样本值x
i+n+4
为无效且将样本值x
i+n+4
存储到缓冲器中,则处理器104可判定缓冲器中的实际样本值(即样本值x
i+n
到样本值x
i+n+4
)没有被不正确地测量,而是由电子装置100的突然移动产生。因此,处理器104可将样本值x
i+n
到样本值x
i+n+4
重新定义为有效,使得样本值x
i+n
到样本值x
i+n+4
可适合作为用于获得其它预测样本值的参考,但本公开不限于此。
75.如上文中所提到,尽管以上教示是通过将x轴视为所考虑的dof来说明,但本领域的技术人员应能够理解所述方法可怎样应用到其它dof。
76.举例来说,在假定y轴为所考虑的dof的第二实施例中,处理器104可获得作为y轴上的特定样本的特定窗口中的样本值yi到样本值y
i+n-1
,但本公开不限于此。
77.接着,处理器104可从特定样本值(例如样本值yi到样本值y
i+n-1
)中取得多个有效样本值且基于有效样本值而获得预测样本值在获得预测样本值之后,处理器104可感测电子装置100的在dof上的第一实际样本值(其可称为样本值y
i+n
)。在第二实施例中,第一实际样本值(即样本值y
i+n
)可在时间点t
i+n
处感测。
78.然后,处理器104可判断预测样本值与第一实际样本值(即样本值y
i+n
)之间的特定差是否大于预定阈值。
79.如果预测样本值与第一实际样本值(即样本值y
i+n
)之间的特定差不大于预定阈值,则处理器104可将第一实际样本值(即样本值y
i+n
)判定为有效且将第一实际样本值判定为在dof上的输出样本值。
80.另一方面,如果预测样本值与第一实际样本值(即样本值y
i+n
)之间的特定差大于预定阈值,则处理器104可将第一实际样本值(即样本值y
i+n
)判定为无效且基于预测样本值与第一实际样本值(即样本值y
i+n
)的组合而判定在dof上的输出样本值。
81.类似地,对于其它dof(例如z轴、偏航轴、俯仰轴、侧倾轴),处理器104可在时间点t
i+n
获得在各dof上的输出样本值。在这种情况下,处理器104可基于在时间点t
i+n
的在各dof上的输出样本值而判定在时间点t
i+n
电子装置100的姿势。
82.将对本领域的技术人员显而易见的是,在不脱离本发明的范围或精神的情况下,可对本发明的结构作出各种修改和变化。鉴于前述内容,希望本发明涵盖属于所附权利要求和其等效物的范围内的本发明的修改和变化。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1