System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 手柄定位方法、数据处理设备及头戴式设备技术_技高网

手柄定位方法、数据处理设备及头戴式设备技术

技术编号:41260149 阅读:3 留言:0更新日期:2024-05-11 09:18
本发明专利技术公开的手柄定位方法、数据处理设备及头戴式设备,通过在手柄上设置红外LED灯,所述头戴式设备的相机实时定位跟踪手柄并拍摄,提取拍摄图像上的发光点,计算手柄在所述相机坐标系下的位姿以及手柄上发光点在手柄坐标系下的坐标,基于Gauss‑Newton迭代法,通过计算雅可比以及更新量对手柄在所述相机坐标系下的位姿以及手柄上发光点在手柄坐标系下的坐标进行优化更新,实现手柄的精准定位。本发明专利技术的优点在于,满足了头戴式设备的手柄定位需求,提高了手柄定位的精度。

【技术实现步骤摘要】

本专利技术涉及计算机视觉和图像处理领域,尤其涉及一种手柄定位方法、数据处理设备及头戴式设备


技术介绍

1、在计算机视觉应用中,vr手柄定位算法通常用红外led灯定位方案,红外led灯位置的标定是保证手柄定位精度的关键所在,vr手柄的led灯珠位置参数的标定的目的是确定led灯在vr手柄上的绝对位置,从而能够通过vr头显上的相机拍摄到vr手柄上led灯,根据灯珠匹配算法可以匹配拍摄到图像上的光点和手柄上的对应的发光的灯,然后可计算得到vr手柄各部位与相机之间的相对位置和相对角度。一般地,vr手柄在厂时并不会对手柄进行标定,手柄在设计时的参数就已经可满足一般的定位精度需求,但这样的定位精度并不高,且会受到生产出厂的误差影响。有一些vr手柄厂商在手柄生产时候有对手柄进行离线标定,这种标定可以弥补手柄在生产时候产生的误差影响,但是会额外消耗生产时间,而且一旦出厂则参数就固定下来没有更新的空间。


技术实现思路

1、本专利技术提供一种手柄定位方法、数据处理设备及头戴式设备,用以解决现有的手柄定位方法精度不高的问题。

2、为了解决上述技术问题,本专利技术公开了如下技术方案:

3、本专利技术提供一种手柄定位方法,包括定位跟踪步骤,图像获取步骤,发光点提取步骤,位姿计算步骤,坐标计算步骤,观测误差计算步骤,第一雅可比计算步骤,第二雅可比计算步骤,位姿更新步骤以及坐标更新步骤。

4、所述定位跟踪步骤是通过一相机实时定位跟踪手柄在相机坐标系下的实时位置;所述图像获取步骤是通过所述相机获取至少一组包括手柄全部或局部的图像,所述手柄上包括至少三个发光点;所述发光点提取步骤是基于计算机视觉算法提取所述图像中的发光点;所述位姿计算步骤是基于pnp算法,计算所述手柄在所述相机坐标系下的第一位姿以及所述相机在手柄坐标系下的第二位姿;所述坐标计算步骤是为了计算所述发光点在所述相机坐标系下的坐标;所述观测误差计算步骤是基于所述发光点在所述相机坐标系下的单位方向向量计算所述观测误差;所述第一雅可比计算步骤是基于链式法则计算所述第一位姿的雅可比;所述第二雅可比计算步骤是基于链式法则计算所述发光点在所述手柄坐标系下的坐标的雅可比;所述位姿更新步骤是基于gauss-newton迭代法,通过第一雅可比以及第二雅可比更新所述第一位姿;所述坐标更新步骤是基于gauss-newton迭代法,通过一第三雅可比更新所述手柄上发光点在手柄坐标系下的坐标。

5、进一步地,所述发光点提取步骤之前还包括判断步骤,所述判断步骤用以判断所述图像中的发光点被所述相机拍摄到次数是否大于一预设阈值,若是,则进入下一步骤。

6、进一步地,所述第一位姿的计算公式为

7、tcj=[rcj,pcj]

8、其中,tcj表示第一位姿,rcj表示手柄在相机坐标系下的一个3×3的旋转矩阵,pcj表示手柄在相机坐标系下的平移,所述平移为一个3×1的向量。

9、进一步地,所述第二位姿的计算公式为

10、

11、

12、其中,-1表示位姿求逆,表示rcj的转置矩阵,tjc表示第二位姿。

13、进一步地,所述坐标计算步骤的公式为

14、pc=tcj.pj=rcj.pj+pcj

15、其中,pj表示手柄上发光点在手柄坐标系下的坐标,pc表示所述发光点在所述相机坐标系下的坐标。

16、进一步地,所述观测误差计算步骤的公式为

17、

18、bc=f(uv);

19、

20、其中,表示所述发光点在相机坐标系下的单位方向向量,r表示观测误差,bc表示相机模型畸变到单位球面得到其观测的方向向量,f()表示投影函数,uv表示在相机坐标系下相机畸变图像平面坐标。

21、进一步地,所述第一雅可比计算步骤的公式为

22、

23、

24、

25、

26、

27、

28、其中,j1表示第一雅可比,∧符号为斜对称(skew-symmetric)操作,例如a^b=-b^a;dr表示tbj旋转角的更新量;tbj表示手柄在主体坐标系下的位姿,所述主体坐标系表示手柄算法在运行最初时候根据需求定义的初始坐标系;dp为平移量的更新量;exp表示旋转角与旋转矩阵的转化。

29、进一步地,所述第二雅可比计算步骤的公式为

30、

31、其中,j2表示第二雅可比。

32、进一步地,所述位姿更新步骤的公式为:

33、j=[j1 j2];

34、j·dx=-r;

35、其中,j·dx=-r等效于jtj·dx=-jtr,故有雅可比j的更新量dx为

36、dx=-(jtj)-1jtr

37、则更新后手柄在主体坐标系下的位姿为

38、

39、其中,所述手柄在主体坐标系下的位姿的雅可比与所述手柄在相机坐标系的初始位姿的雅可比间接等价,故更新后手柄在主体坐标系下的位姿间接等价与更新后手柄在相机坐标系下的位姿tcj。

40、进一步地,所述坐标更新步骤的公式为:

41、根据链式法则计算pj关于pc的雅可比

42、

43、

44、其中,j3为pj关于pc的雅可比,即为所述第三雅可比;

45、则关于pj的单次迭代的更新量为

46、

47、根据单次迭代的更新量得到关于pj的迭代优化更新量的累加和,此时

48、更新量为

49、

50、最终得到更新后所述手柄上发光点在手柄坐标系下的坐标

51、

52、其中,为更新后的柄上发光点在手柄坐标系下的坐标。

53、本专利技术还提供一种数据处理设备包括存储器以及处理器。

54、所述存储器用以存储可执行程序代码;所述处理器用以读取所述可执行程序代码,以运行与所述可执行程序代码对应的计算机程序,以执行权利要求所述的手柄定位方法中的至少一步骤。

55、本专利技术还提供一种头戴式设备,包括所述的数据处理设备,至少一个手柄以及相机。所述手柄连接至所述数据处理设备,所述手柄上设有至少一个红外led灯;所述相机连接至所述数据处理设备。

56、与现有技术相比,本专利技术至少具备以下技术效果:

57、本专利技术提供一种手柄定位方法、数据处理设备及头戴式设备,通过在手柄上设置红外led灯,所述头戴式设备的相机实时定位跟踪手柄并拍摄,提取拍摄图像上的发光点,计算手柄在所述相机坐标系下的位姿以及手柄上发光点在手柄坐标系下的坐标,基于gauss-newton迭代法,通过计算雅可比以及更新量对手柄在所述相机坐标系下的位姿以及手柄上发光点在手柄坐标系下的坐标进行优化更新,实现手柄的精准定位,提高手柄定位的精度。

本文档来自技高网...

【技术保护点】

1.一种手柄定位方法,其特征在于,包括:

2.如权利要求1所述的手柄定位方法,其特征在于,所述发光点提取步骤之前还包括

3.如权利要求1所述的手柄定位方法,其特征在于,

4.如权利要求1所述的手柄定位方法,其特征在于,

5.如权利要求1所述的手柄定位方法,其特征在于,

6.如权利要求1所述的手柄定位方法,其特征在于,

7.如权利要求1所述的手柄定位方法,其特征在于,

8.如权利要求1所述的手柄定位方法,其特征在于,

9.如权利要求1所述的手柄定位方法,其特征在于,

10.如权利要求1所述的手柄定位方法,其特征在于,

11.一种数据处理设备,其特征在于,包括:

12.一种头戴式设备,其特征在于,包括:

【技术特征摘要】

1.一种手柄定位方法,其特征在于,包括:

2.如权利要求1所述的手柄定位方法,其特征在于,所述发光点提取步骤之前还包括

3.如权利要求1所述的手柄定位方法,其特征在于,

4.如权利要求1所述的手柄定位方法,其特征在于,

5.如权利要求1所述的手柄定位方法,其特征在于,

6.如权利要求1所述的手柄定位方法,其特...

【专利技术属性】
技术研发人员:张军辉张腾吴家宁
申请(专利权)人:玩出梦想上海科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1