扩展现实设备的畸变系数标定方法、装置和存储介质转让专利

申请号 : CN202211593972.7

文献号 : CN115587952B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李子祺嵇盼李宏东

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请涉及一种扩展现实设备的畸变系数标定方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取标准标定图像和畸变标定图像;基于标准标定图像和畸变标定图像进行标定点检测,得到多对标定点坐标对;每个标定点坐标对,包括属于标准标定图像的第一标定点坐标和属于畸变标定图像的第二标定点坐标,第二标定点坐标是第一标定点坐标畸变后对应的标定点坐标;获取待拟合畸变关系;待拟合畸变关系包括待确定的畸变系数,用于表征标准标定图像与畸变标定图像之间标定点坐标的映射关系;根据多对标定点坐标对,对待拟合畸变关系进行数值拟合,以确定待拟合畸变关系中畸变系数的目标值。采用本方法能够实现畸变系数的自动标定。

权利要求 :

1.一种扩展现实设备的畸变系数标定方法,其特征在于,所述方法包括:

获取标准标定图像和畸变标定图像;所述畸变标定图像,是在扩展现实设备的显示器将所述标准标定图像显示为画面时,透过所述扩展现实设备的光机镜头采集所述画面形成的;

基于所述标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对;每个所述标定点坐标对,包括属于所述标准标定图像的第一标定点坐标和属于所述畸变标定图像的第二标定点坐标,所述第二标定点坐标是所述第一标定点坐标畸变后对应的标定点坐标;

获取待拟合畸变关系;所述待拟合畸变关系包括待确定的畸变系数,用于表征所述标准标定图像与所述畸变标定图像之间标定点坐标的映射关系;

获取畸变系数值增量模型,并进入迭代,以通过所述畸变系数值增量模型和所述多对标定点坐标对得到畸变系数预测值增量;所述畸变系数预测值增量,为两次连续迭代中畸变系数的预测值的变化量;

在当前轮次的所述畸变系数预测值增量满足数值收敛条件时,将当前轮次的畸变系数的预测值,作为待拟合畸变关系中的所述畸变系数的目标值。

2.根据权利要求1所述的方法,其特征在于,所述畸变标定图像是图像采集设备采集得到的;在所述图像采集设备采集所述畸变标定图像的过程中,所述扩展现实设备的光机镜头位于所述图像采集设备和所述扩展现实设备的显示器之间,且所述光机镜头的光心与所述显示器的中心对齐。

3.根据权利要求1所述的方法,其特征在于,所述基于所述标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对,包括:对所述标准标定图像进行标定点检测,得到多个第一标定点,并确定每个所述第一标定点在所述标准标定图像中的坐标,得到多个第一标定点坐标;

对所述畸变标定图像进行标定点检测,得到多个第二标定点,并确定每个所述第二标定点在所述畸变标定图像中的坐标,得到多个第二标定点坐标;

根据各所述第一标定点坐标之间的位置关系和各所述第二标定点坐标之间的位置关系,对所述多个第一标定点坐标和所述多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。

4.根据权利要求3所述的方法,其特征在于,所述对所述标准标定图像进行标定点检测,得到多个第一标定点,包括:获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述标准标定图像上滑动,得到所述滑动窗口所框选的当前标准局部图像;

确定所述当前标准局部图像的第一整体灰度值;

触发所述滑动窗口多次朝任意方向滑动,得到与所述当前标准局部图像相对应的多个滑动后标准局部图像;

确定每个所述滑动后标准局部图像的第二整体灰度值;

在每个所述第二整体灰度值与所述第一整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前标准局部图像的中心作为第一标定点。

5.根据权利要求3所述的方法,其特征在于,所述对所述畸变标定图像进行标定点检测,得到多个第二标定点,包括:获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述畸变标定图像上滑动,得到所述滑动窗口所框选的当前畸变局部图像;

确定所述当前畸变局部图像的第三整体灰度值;

触发所述滑动窗口多次朝任意方向滑动,得到与所述当前畸变局部图像相对应的多个滑动后畸变局部图像;

确定每个所述滑动后畸变局部图像的第四整体灰度值;

在每个所述第四整体灰度值与所述第三整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前畸变局部图像的中心作为第二标定点。

6.根据权利要求1所述的方法,其特征在于,所述获取畸变系数值增量模型,并进入迭代,以通过所述畸变系数值增量模型和所述多对标定点坐标对得到畸变系数预测值增量,在当前轮次的所述畸变系数预测值增量满足数值收敛条件时,将当前轮次的畸变系数的预测值,作为待拟合畸变关系中的所述畸变系数的目标值,包括:获取预设的畸变系数值增量模型;所述畸变系数值增量模型是根据所述待拟合畸变关系中的畸变系数生成得到的;

确定当前轮次的畸变系数的预测值;

根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量;

当所述畸变系数预测值增量不满足数值收敛条件时,将所述当前轮次的畸变系数预测值增量和所述当前轮次的畸变系数预测值进行叠加,得到所述畸变系数的更新预测值;

将下一轮次作为当前轮次,将所述更新预测值作为当前轮次的畸变系数的预测值,并返回根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量的步骤继续执行,直至所述畸变系数预测值增量满足数值收敛条件;

将最后一个轮次的所述畸变系数的预测值,作为所述待拟合畸变关系中的畸变系数所对应的目标预测值。

7.根据权利要求6所述的方法,其特征在于,所述畸变系数值增量模型是基于残差模型确定的;所述残差模型是基于所述畸变关系确定的;所述残差模型表征,基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的实际值所确定的畸变前后坐标变化之间的残差。

8.根据权利要求6所述的方法,其特征在于,所述根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量,包括:根据所述多对标定点坐标对,并通过所述畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵;

根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵;

对所述当前轮次的海森矩阵和所述当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量。

9.根据权利要求8所述的方法,其特征在于,所述根据所述多对标定点坐标对,并通过所述畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵,包括:对于所述多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过所述海森矩阵模型中的雅可比矩阵模型,得到与所述当前标定点坐标对相对应的当前雅可比矩阵;

将所述当前雅可比矩阵和所述当前雅可比矩阵的转置相融合,得到与所述当前标定点坐标对相对应的融合雅可比矩阵;

将所述多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。

10.根据权利要求8所述的方法,其特征在于,所述根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵,包括:对于所述多对标定点坐标对中的每对标定点坐标对,均确定与当前标定点坐标对相对应的当前雅可比矩阵;

根据当前标定点坐标对和所述当前轮次的畸变系数的预测值,通过所述迭代矩阵模型中的残差模型,得到所述当前标定点坐标对所对应的当前残差矩阵;

将所述当前雅可比矩阵的转置与所述当前残差矩阵进行融合,得到与所述当前标定点坐标对相对应的融合迭代矩阵;

将所述多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。

11.根据权利要求8至9任意一项所述的方法,其特征在于,所述海森矩阵模型是根据雅可比矩阵模型生成得到的,所述雅可比矩阵模型表征残差模型在所述畸变系数方向上的偏导数;所述迭代矩阵是根据所述雅可比矩阵模型和所述残差模型生成得到的;所述残差模型表征,基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的实际值所确定的畸变前后坐标变化之间的残差。

12.根据权利要求1所述的方法,其特征在于,所述方法还包括:

综合所述畸变系数的目标值和所述畸变关系,得到目标畸变关系;

获取待显示图像,并根据所述目标畸变关系对所述待显示图像中的各像素点进行反畸变处理,以确定各所述像素点各自对应的畸变矫正位置;

将各所述像素点分别移动至相应的畸变矫正位置处,得到反畸变图像;

通过所述扩展现实设备显示所述反畸变图像。

13.一种扩展现实设备的畸变系数标定装置,其特征在于,所述装置包括:

图像获取模块,用于获取标准标定图像和畸变标定图像;所述畸变标定图像,是在扩展现实设备的显示器将所述标准标定图像显示为画面时,透过所述扩展现实设备的光机镜头采集所述画面形成的;

坐标对确定模块,用于基于所述标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对;每个所述标定点坐标对,包括属于所述标准标定图像的第一标定点坐标和属于所述畸变标定图像的第二标定点坐标,所述第二标定点坐标是所述第一标定点坐标畸变后对应的标定点坐标;

数值拟合模块,用于获取待拟合畸变关系;所述待拟合畸变关系包括待确定的畸变系数,用于表征所述标准标定图像与所述畸变标定图像之间标定点坐标的映射关系;获取畸变系数值增量模型,并进入迭代,以通过所述畸变系数值增量模型和所述多对标定点坐标对得到畸变系数预测值增量;所述畸变系数预测值增量,为两次连续迭代中畸变系数的预测值的变化量;在当前轮次的所述畸变系数预测值增量满足数值收敛条件时,将当前轮次的畸变系数的预测值,作为待拟合畸变关系中的所述畸变系数的目标值。

14.根据权利要求13所述的装置,其特征在于,所述畸变标定图像是图像采集设备采集得到的;在所述图像采集设备采集所述畸变标定图像的过程中,所述扩展现实设备的光机镜头位于所述图像采集设备和所述扩展现实设备的显示器之间,且所述光机镜头的光心与所述显示器的中心对齐。

15.根据权利要求13所述的装置,其特征在于,所述坐标对确定模块还用于对所述标准标定图像进行标定点检测,得到多个第一标定点,并确定每个所述第一标定点在所述标准标定图像中的坐标,得到多个第一标定点坐标;对所述畸变标定图像进行标定点检测,得到多个第二标定点,并确定每个所述第二标定点在所述畸变标定图像中的坐标,得到多个第二标定点坐标;根据各所述第一标定点坐标之间的位置关系和各所述第二标定点坐标之间的位置关系,对所述多个第一标定点坐标和所述多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。

16.根据权利要求14所述的装置,其特征在于,所述坐标对确定模块还用于获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述标准标定图像上滑动,得到所述滑动窗口所框选的当前标准局部图像;确定所述当前标准局部图像的第一整体灰度值;触发所述滑动窗口多次朝任意方向滑动,得到与所述当前标准局部图像相对应的多个滑动后标准局部图像;确定每个所述滑动后标准局部图像的第二整体灰度值;在每个所述第二整体灰度值与所述第一整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前标准局部图像的中心作为第一标定点。

17.根据权利要求14所述的装置,其特征在于,所述坐标对确定模块还包括第二标定点确定模块,用于获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述畸变标定图像上滑动,得到所述滑动窗口所框选的当前畸变局部图像;确定所述当前畸变局部图像的第三整体灰度值;触发所述滑动窗口多次朝任意方向滑动,得到与所述当前畸变局部图像相对应的多个滑动后畸变局部图像;确定每个所述滑动后畸变局部图像的第四整体灰度值;在每个所述第四整体灰度值与所述第三整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前畸变局部图像的中心作为第二标定点。

18.根据权利要求13所述的装置,其特征在于,所述数值拟合模块还用于获取预设的畸变系数值增量模型;所述畸变系数值增量模型是根据所述待拟合畸变关系中的畸变系数生成得到的;确定当前轮次的畸变系数的预测值;根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量;当所述畸变系数预测值增量不满足数值收敛条件时,将所述当前轮次的畸变系数预测值增量和所述当前轮次的畸变系数预测值进行叠加,得到所述畸变系数的更新预测值;

将下一轮次作为当前轮次,将所述更新预测值作为当前轮次的畸变系数的预测值,并返回根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量的步骤继续执行,直至所述畸变系数预测值增量满足数值收敛条件;将最后一个轮次的所述畸变系数的预测值,作为所述待拟合畸变关系中的畸变系数所对应的目标预测值。

19.根据权利要求18所述的装置,其特征在于,所述畸变系数值增量模型是基于残差模型确定的;所述残差模型是基于所述畸变关系确定的;所述残差模型表征,基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的实际值所确定的畸变前后坐标变化之间的残差。

20.根据权利要求18所述的装置,其特征在于,所述数值拟合模块还用于根据所述多对标定点坐标对,并通过所述畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵;根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵;对所述当前轮次的海森矩阵和所述当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量。

21.根据权利要求20所述的装置,其特征在于,所述数值拟合模块还包括海森矩阵确定模块,用于对于所述多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过所述海森矩阵模型中的雅可比矩阵模型,得到与所述当前标定点坐标对相对应的当前雅可比矩阵;将所述当前雅可比矩阵和所述当前雅可比矩阵的转置相融合,得到与所述当前标定点坐标对相对应的融合雅可比矩阵;将所述多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。

22.根据权利要求20所述的装置,其特征在于, 所述数值拟合模块还包括迭代矩阵确定模块,用于对于所述多对标定点坐标对中的每对标定点坐标对,均确定与当前标定点坐标对相对应的当前雅可比矩阵;根据当前标定点坐标对和所述当前轮次的畸变系数的预测值,通过所述迭代矩阵模型中的残差模型,得到所述当前标定点坐标对所对应的当前残差矩阵;将所述当前雅可比矩阵的转置与所述当前残差矩阵进行融合,得到与所述当前标定点坐标对相对应的融合迭代矩阵;将所述多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。

23.根据权利要求20至21任意一项所述的装置,其特征在于,所述海森矩阵模型是根据雅可比矩阵模型生成得到的,所述雅可比矩阵模型表征残差模型在所述畸变系数方向上的偏导数;所述迭代矩阵是根据所述雅可比矩阵模型和所述残差模型生成得到的;所述残差模型表征,基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的实际值所确定的畸变前后坐标变化之间的残差。

24.根据权利要求13所述的装置,其特征在于,所述扩展现实设备的畸变系数标定装置还包括反畸变模块,用于综合所述畸变系数的目标值和所述畸变关系,得到目标畸变关系;

获取待显示图像,并根据所述目标畸变关系对所述待显示图像中的各像素点进行反畸变处理,以确定各所述像素点各自对应的畸变矫正位置;将各所述像素点分别移动至相应的畸变矫正位置处,得到反畸变图像;通过所述扩展现实设备显示所述反畸变图像。

25.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。

26.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。

说明书 :

扩展现实设备的畸变系数标定方法、装置和存储介质

技术领域

[0001] 本申请涉及计算机技术领域,特别是涉及一种扩展现实设备的畸变系数标定方法、装置、计算机设备和存储介质。

背景技术

[0002] 随着扩展现实技术的兴起,扩展现实设备应运而生。扩展设备又称XR设备,其包括有虚拟现实设备(又称VR设备)、增强现实设备(AR设备)和混合现实设备(MR设备)。这些设备可实现三维动态视景和实体行为的系统仿真。
[0003] 用户在使用扩展现实设备时,扩展现实设备中显示器发出的光线会经过光机镜头进入人眼中。但是,由于光线在透过扩展现实设备中的光机镜头后会产生畸变,因此用户通过扩展现实设备观看到的图像可能为一个畸变图像。为了使得用户能够观看到正常的图像,在使用扩展现实设备之前,需要通过扩展现实设备的畸变系数进行畸变矫正。然而,目前并没有统一的标准的畸变系数自动化标定方法。

发明内容

[0004] 基于此,有必要针对上述技术问题,提供一种能够实现畸变系数自动标定的扩展现实设备的畸变系数标定方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005] 第一方面,本申请提供了一种扩展现实设备的畸变系数标定方法,所述方法包括:
[0006] 获取标准标定图像和畸变标定图像;所述畸变标定图像,是在扩展现实设备的显示器将所述标准标定图像显示为画面时,透过所述扩展现实设备的光机镜头采集所述画面形成的;
[0007] 基于所述标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对;每个所述标定点坐标对,包括属于所述标准标定图像的第一标定点坐标和属于所述畸变标定图像的第二标定点坐标,所述第二标定点坐标是所述第一标定点坐标畸变后对应的标定点坐标;
[0008] 获取待拟合畸变关系;所述待拟合畸变关系包括待确定的畸变系数,用于表征所述标准标定图像与所述畸变标定图像之间标定点坐标的映射关系;
[0009] 根据所述多对标定点坐标对,对所述待拟合畸变关系进行数值拟合,以确定所述待拟合畸变关系中所述畸变系数的目标值。
[0010] 第二方面,本申请还提供了一种扩展现实设备的畸变系数标定装置,所述装置包括:
[0011] 图像获取模块,用于获取标准标定图像和畸变标定图像;所述畸变标定图像,是在扩展现实设备的显示器将所述标准标定图像显示为画面时,透过所述扩展现实设备的光机镜头采集所述画面形成的;
[0012] 坐标对确定模块,用于基于所述标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对;每个所述标定点坐标对,包括属于所述标准标定图像的第一标定点坐标和属于所述畸变标定图像的第二标定点坐标,所述第二标定点坐标是所述第一标定点坐标畸变后对应的标定点坐标;
[0013] 数值拟合模块,用于获取待拟合畸变关系;所述待拟合畸变关系包括待确定的畸变系数,用于表征所述标准标定图像与所述畸变标定图像之间标定点坐标的映射关系;根据所述多对标定点坐标对,对所述待拟合畸变关系进行数值拟合,以确定所述待拟合畸变关系中所述畸变系数的目标值。
[0014] 在其中一个实施例中,所述畸变标定图像是图像采集设备采集得到的;在所述图像采集设备采集所述畸变标定图像的过程中,所述扩展现实设备的光机镜头位于所述图像采集设备和所述扩展现实设备的显示器之间,且所述光机镜头的光心与所述显示器的中心对齐。
[0015] 在其中一个实施例中,所述坐标对确定模块还用于对所述标准标定图像进行标定点检测,得到多个第一标定点,并确定每个所述第一标定点在所述标准标定图像中的坐标,得到多个第一标定点坐标;对所述畸变标定图像进行标定点检测,得到多个第二标定点,并确定每个所述第二标定点在所述畸变标定图像中的坐标,得到多个第二标定点坐标;根据各所述第一标定点坐标之间的位置关系和各所述第二标定点坐标之间的位置关系,对所述多个第一标定点坐标和所述多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。
[0016] 在其中一个实施例中,所述坐标对确定模块还包括第一标定点确定模块,用于获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述标准标定图像上滑动,得到所述滑动窗口所框选的当前标准局部图像;确定所述当前标准局部图像的第一整体灰度值;触发所述滑动窗口多次朝任意方向滑动,得到与所述当前标准局部图像相对应的多个滑动后标准局部图像;确定每个所述滑动后标准局部图像的第二整体灰度值;在每个所述第二整体灰度值与所述第一整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前标准局部图像的中心作为第一标定点。
[0017] 在其中一个实施例中,所述坐标对确定模块还包括第二标定点确定模块,用于获取滑动窗口,并触发所述滑动窗口按照预设的移动步长在所述畸变标定图像上滑动,得到所述滑动窗口所框选的当前畸变局部图像;确定所述当前畸变局部图像的第三整体灰度值;触发所述滑动窗口多次朝任意方向滑动,得到与所述当前畸变局部图像相对应的多个滑动后畸变局部图像;确定每个所述滑动后畸变局部图像的第四整体灰度值;在每个所述第四整体灰度值与所述第三整体灰度值之间的差异均大于或等于预设差异阈值时,将所述当前畸变局部图像的中心作为第二标定点。
[0018] 在其中一个实施例中,所述数值拟合模块还用于获取预设的畸变系数值增量模型;所述畸变系数值增量模型是根据所述待拟合畸变关系中的畸变系数生成得到的;确定当前轮次的畸变系数的预测值;根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量;当所述畸变系数预测值增量不满足数值收敛条件时,将所述当前轮次的畸变系数预测值增量和所述当前轮次的畸变系数预测值进行叠加,得到所述畸变系数的更新预测值;将下一轮次作为当前轮次,将所述更新预测值作为当前轮次的畸变系数的预测值,并返回根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型得到当前轮次的畸变系数预测值增量的步骤继续执行,直至所述畸变系数预测值增量满足数值收敛条件;将最后一个轮次的所述畸变系数的预测值,作为所述待拟合畸变关系中的畸变系数所对应的目标预测值。
[0019] 在其中一个实施例中,所述畸变系数值增量模型是基于残差模型确定的;所述残差模型是基于所述畸变关系确定的;所述残差模型表征,基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的实际值所确定的畸变前后坐标变化之间的残差。
[0020] 在其中一个实施例中,所述数值拟合模块还用于根据所述多对标定点坐标对,并通过所述畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵;根据所述多对标定点坐标对和所述当前轮次的畸变系数的预测值,并通过所述畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵;对所述当前轮次的海森矩阵和所述当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量。
[0021] 在其中一个实施例中,所述数值拟合模块还包括海森矩阵确定模块,用于对于所述多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过所述海森矩阵模型中的雅可比矩阵模型,得到与所述当前标定点坐标对相对应的当前雅可比矩阵;将所述当前雅可比矩阵和所述当前雅可比矩阵的转置相融合,得到与所述当前标定点坐标对相对应的融合雅可比矩阵;将所述多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。
[0022] 在其中一个实施例中,所述数值拟合模块还包括迭代矩阵确定模块,用于对于所述多对标定点坐标对中的每对标定点坐标对,均确定与当前标定点坐标对相对应的当前雅可比矩阵;根据当前标定点坐标对和所述当前轮次的畸变系数的预测值,通过所述迭代矩阵模型中的残差模型,得到所述当前标定点坐标对所对应的当前残差矩阵;将所述当前雅可比矩阵的转置与所述当前残差矩阵进行融合,得到与所述当前标定点坐标对相对应的融合迭代矩阵;将所述多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。
[0023] 在其中一个实施例中,所述海森矩阵模型是根据雅可比矩阵模型生成得到的,所述雅可比矩阵模型表征残差模型在所述畸变系数方向上的偏导数;所述迭代矩阵是根据所述雅可比矩阵模型和所述残差模型生成得到的;所述残差模型,表征基于所述畸变系数的预测值所确定的畸变前后坐标变化与基于所述畸变系数的预测值实际值所确定的畸变前后坐标变化之间的残差。
[0024] 在其中一个实施例中,所述扩展现实设备的畸变系数标定装置还包括反畸变模块,用于综合所述畸变系数的目标值和所述畸变关系,得到目标畸变关系;获取待显示图像,并根据所述目标畸变关系对所述待显示图像中的各像素点进行反畸变处理,以确定各所述像素点各自对应的畸变矫正位置;将各所述像素点分别移动至相应的畸变矫正位置处,得到反畸变图像;通过所述扩展现实设备显示所述反畸变图像。
[0025] 第三方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序, 所述处理器执行所述计算机程序时实现本申请实施例提供的任一种扩展现实设备的畸变系数标定方法中的步骤。
[0026] 第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的任一种扩展现实设备的畸变系数标定方法中的步骤。
[0027] 第五方面,本申请还提供了一种计算机程序产品,所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0028] 上述扩展现实设备的畸变系数标定方法、装置、计算机设备、存储介质和计算机程序产品,通过获取标准标定图像和该标准标定图像进畸变后的畸变标定图像,可对标准标定图像和畸变标定图像进行标定点检测,从而得到包括发生畸变前的第一标定点坐标和发生畸变后的第二标定点坐标的标定点坐标对,如此,便可基于多对标定点坐标对,对表征标准标定图像与畸变标定图像之间标定点坐标的映射关系的待拟合畸变关系进行数值拟合处理,得到待拟合畸变关系中畸变系数的目标值,从而实现畸变系数自动标定的目的。由于本申请只需要一张标准标定图像即可实现扩展现实设备的畸变系数标定,因此,大大简化了畸变系数标定的流程,提升了畸变系数标定的效率。

附图说明

[0029] 图1为一个实施例中扩展现实设备的畸变系数标定方法的应用环境图;
[0030] 图2为一个实施例中扩展现实设备的畸变系数标定方法的流程示意图;
[0031] 图3为一个实施例中标定图像的示意图;
[0032] 图4为一个实施例中畸变标定图像的采集示意图;
[0033] 图5为一个实施例中标定点的示意图;
[0034] 图6为一个实施例中滑动窗口朝任意方向滑动的示意图;
[0035] 图7为一个实施例中扩展现实设备显示图像的示意图;
[0036] 图8为一个实施例中畸变系数标定的整体流程示意图;
[0037] 图9为一个具体实施例中扩展现实设备的畸变系数标定方法的流程示意图;
[0038] 图10为一个实施例中扩展现实设备的畸变系数标定装置的结构框图;
[0039] 图11为另一个实施例中扩展现实设备的畸变系数标定装置的结构框图;
[0040] 图12为一个实施例中计算机设备的内部结构图;
[0041] 图13为一个实施例中计算机设备的内部结构图。

具体实施方式

[0042] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0043] 本申请实施例提供的扩展现实设备的畸变系数标定方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。终端102和服务器104均可单独用于执行本申请实施例中提供的扩展现实设备的畸变系数标定方法。终端102和服务器104也可协同用于执行本申请实施例中提供的扩展现实设备的畸变系数标定方法。以终端102和服务器104可协同用于执行本申请实施例中提供的扩展现实设备的畸变系数标定方法为例进行说明,终端102可获取标准标定图像和畸变标定图像,并将标准标定图像和畸变标定图像发送至服务器104,以使服务器根据标准标定图像和畸变标定图像确定扩展现实设备的畸变系数的目标值。
[0044] 其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、指环、手柄、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0045] 需要说明的是,本申请涉及XR技术,例如,本申请涉及对XR设备中的畸变系数进行标定。XR技术,即扩展现实技术,是指通过计算机技术和可穿戴设备将真实与虚拟相融合,打造一个可人机交互的虚拟环境,囊括了VR、AR(Augmented Reality,增强现实)、MR(Mediated Reality,混合现实)的技术特点,为体验者带来虚拟世界与现实世界之间无缝转换的沉浸感。VR技术是指借助计算机等设备产生一个逼真的三维视觉、触觉、嗅觉等多种感官体验的虚拟世界,从而使处于虚拟世界中的人产生一种身临其境的感觉,多用于游戏娱乐场景,如VR眼镜、VR显示、VR一体机;AR技术是将虚拟信息叠加到真实世界,甚至是实现超越现实的技术,在一定程度上是VR技术的延伸,相对来说,AR设备产品具有体积小、重量轻、便携等特点;MR技术是VR与AR技术的进一步发展,通过在现实场景呈现虚拟场景,在用户之间搭建交流闭环,极大增强用户体验感。XR技术囊括以上三种技术的特点,具有广泛应用前景,可应用于教育培训中实现科学、实验课程远程教学的场景,或影视娱乐中沉浸式娱乐场景,如沉浸式观影、游戏等,或音乐会、话剧、博物馆等展览活动场景,或工业建模与设计中3D家装、建筑设计场景,或新型场景消费,如云购物、云试装等场景。
[0046] 需要说明的是,本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。除非上下文另外清楚地指出,否则单数形式“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。本申请各实施例中提及的“多个”或“多份”等的数量均指代“至少两个”的数量,比如,“多个”指“至少两个”,“多份”指“至少两份”。
[0047] 在一个实施例中,如图2所示,提供了一种扩展现实设备的畸变系数标定方法,以该方法应用于计算机设备为例进行说明。计算机设备可为图1中的终端或者服务器。扩展现实设备的畸变系数标定方法包括以下步骤:
[0048] 步骤202,获取标准标定图像和畸变标定图像;所述畸变标定图像,是在扩展现实设备的显示器将所述标准标定图像显示为画面时,透过所述扩展现实设备的光机镜头采集所述画面形成的。
[0049] 其中,标准标定图像指的是用以进行标定的标准化图像。比如,由于棋盘格图像的角点分布均匀,能够包含更多的畸变变化趋势,因此,标准标定图像具体可为标准化的棋盘格图像。畸变标定图像指的是标准标定图像发生畸变后的图像。比如,参考图3的301或302,图301即为标准标定图像,图302即为畸变标定图像。图3示出了一个实施例中标定图像的示意图。
[0050] 具体地,当需要确定扩展现实设备的畸变系数时,计算机设备可获取标准标定图像和畸变标定图像。其中,扩展现实(XR)是虚拟现实(VR)、增强现实(AR)和混合现实(MR)等各种新沉浸式技术的统称,扩展现实设备则是虚拟现实设备、增强现实设备和混合现实设备的统称。从理论上来讲,扩展现实技术是一种可以创建虚拟世界或将现实世界与虚拟世界融合的计算机系统,通过创建虚拟世界或将现实世界与虚拟世界融合,可使得用户体验高度沉浸的内容。畸变系数指的是扩展现实设备中的光机镜头产生畸变时采用的系数。
[0051] 在其中一个实施例中,畸变标定图像是图像采集设备采集得到的;在图像采集设备采集畸变标定图像的过程中,扩展现实设备的光机镜头位于图像采集设备和扩展现实设备的显示器之间,且光机镜头的光心与显示器的中心对齐。
[0052] 具体地,畸变标定图像是通过图像采集设备采集到的。在对畸变标定图像进行采集的过程中,可将标准标定图像输入至扩展现实设备,由扩展现实的显示器显示该标准标定图像,从而图像采集设备可透过扩展现实设备的光机镜头对标准标定图像进行采集,得到畸变标定图像。
[0053] 比如,参考图4,扩展现实设备可包括光机镜头和显示器。其中,光机镜头可包括多个镜片。可先将光机镜头的光心与显示器的中心对齐,从而显示器在显示标准标定图像时发出的光线可通过光机镜头传输至图像采集设备,进而图像采集设备可对接收到的光线进行成像,得到畸变标定图像。图4示出了一个实施例中畸变标定图像的采集示意图。
[0054] 在其中一个实施例中,扩展现实设备中的光机镜头具体可为复杂折叠光路超短焦XR光机镜头,该光机镜头也称作光机pancake镜头,该光机镜头是通过光学元件进行光路折叠的超薄XR镜头。通过在扩展现实设备搭载光机pancake镜头,可大大降低扩展现实设备的厚度。
[0055] 在其中一个实施例中,pancake镜头又称作折叠光路镜头,其采用了“折叠式”的光路结构,在保证虚像放大的同时,缩短屏幕到眼睛的直线距离。pancake镜头包括半反半透功能的镜片、相位延迟片和反射式偏振片。在pancake镜头中,XR设备中的显示器发出的光线进入半反半透功能的镜片之后,光线在镜片、相位延迟片以及反射式偏振片之间多次折返,最终从反射式偏振片射出。通过此种方案,
[0056] 可以降低光机部分体积,进而达到降低整个XR设备体积,提高佩戴舒适性的目的。
[0057] 在其中一个实施例中,图像采集设备与光机镜头之间的距离,可参考用户在使用扩展现实设备时人眼至光机镜头之间的距离。比如,图像采集设备与光机镜头之间的距离可与人眼至光机镜头之间的距离一致。
[0058] 在其中一个实施例中,图像采集设备的中心、光机镜头的光心以及显示器的中心,三者可对齐。比如,图像采集设备的中心、光机镜头的光心以及显示器的中心可位于一条水平线上。
[0059] 上述实施例中,只需通过显示器显示标准标定图像,即可通过图像采集设备透过光机镜头方便快捷地采集到畸变标定图像,从而提升了畸变标定图像的采集效率,进而提升了畸变系数的标定效率。
[0060] 步骤204,基于标准标定图像和畸变标定图像进行标定点检测,得到多对标定点坐标对;每个标定点坐标对,包括属于标准标定图像的第一标定点坐标和属于畸变标定图像的第二标定点坐标,第二标定点坐标是第一标定点坐标畸变后对应的标定点坐标。
[0061] 其中,标定点指的是标定图像中具有标定特性的位置点。在标准标定图像和畸变标定图像为棋盘格图像时,标定点可为棋盘格中的角点。
[0062] 具体地,当获取得到标准标定图像和畸变标定图像时,计算机设备可对标准标定图像和畸变标定图像进行标定点检测,以得到标准标定图像中的多个第一标定点坐标和畸变标定图像中的各第一标定点坐标各自对应的第二标定点坐标,从而得到多对标定点对坐标。比如,参考图5,在标准标定图像中的第一标定点501经过畸变后变化为畸变标定图像中的第二标定点502时,该第一标定点501即与第二标定点502相对应,此时,第一标定点501在标准标定图像中的坐标与第二标定点502在畸变标定图像中的坐标,即组成了一个标定点坐标对。其中,第一标定点在标准标定图像中的坐标称作第一标定点坐标;第二标定点在畸变标定图像中的坐标称作第二标定点坐标。图5示出了一个实施例中标定点的示意图。
[0063] 在其中一个实施例中,在标定点为角点时,计算机设备可根据opencv(一种跨平台计算机视觉和机器学习软件库)角点检测方法对标准标定图像和畸变标定图像进行标定点检测,得到多对标定点坐标对。
[0064] 在其中一个实施例中,针对标准标定图像中的每个像素块,计算机设备均确定像素块是否为标准标定图像中的第一标定点。若确定该像素块为第一标定点,则确定该像素块在标准标定图像中的位置,得到第一标定点坐标。计算机设备可通过预训练的机器学习模型确定像素块是否包括标定点特征,若像素块包括标定点特征,则确定该像素块为第一标定点。相应的,计算机设备也可通过上述方式,确定第二标定点坐标。其中,像素块可包括一个或者多个像素点。
[0065] 在其中一个实施例中,可以标准标定图像的中心为原点建立坐标系,从而确定标准标定图像中的第一标定点在该坐标系中的坐标,得到第一标定点坐标。相应的,也可以畸变标定图像的中心为原点建立坐标系,从而确定畸变标定图像中的第二标定点在该坐标系中的坐标,得到第二标定点坐标。
[0066] 在其中一个实施例中,在对标准标定图像和畸变标定图像进行标定点检测之前,可调整标准标定点图像和畸变标定点图像的尺寸,使得标准标定图像与畸变标定图像的尺寸相统一。
[0067] 步骤206,取待拟合畸变关系;待拟合畸变关系包括待确定的畸变系数,用于表征标准标定图像与畸变标定图像之间标定点坐标的映射关系。
[0068] 具体地,计算机设备可获取预先设置的待拟合畸变关系,该待拟合畸变关系用于表征标准标定图像与畸变标定图像之间标定点坐标的映射关系,且待拟合畸变关系中的畸变系数是待确定的。
[0069] 在其中一个实施例中,以经典布朗(Brown)模型为例,待拟合畸变关系可通过下述公式确定:
[0070]
[0071] 其中, 是指非畸变距离; 是指畸变距离;非畸变距离是指第一标定点坐标与标准标定图像的中心点之间的距离。畸变距离是指第二标定点坐标与畸变标定图像的中心点之间的距离。 是指第一标定点坐标,第一标定点坐标,是以标准标定图像的中心点为原点建立坐标系而确定的坐标。
[0072] 是指第二标定点坐标,第二标定点坐标是以畸变标定图像的中心点为原点建立坐标系而确定的坐标。 和 为待确定的畸变系数。
[0073] 步骤208,根据多对标定点坐标对,对待拟合畸变关系进行数值拟合,以确定待拟合畸变关系中畸变系数的目标值。
[0074] 其中,数值拟合又称曲线拟合,俗称拉曲线,是指基于若干离散的数据,得到一个连续的函数(也就是曲线)的过程,其中,所得到的连续的函数与输入的若干离散的数据相吻合。
[0075] 具体地,当获取得到多对标定点坐标对时,计算机设备即可根据多对标定点坐标对,确定待拟合畸变关系中的待确定的畸变系数的目标值。比如,可确定上述公式中的 值和 值。容易理解地,该畸变系数的目标值,即为扩展现实设备的光机镜头产生畸变时采用的畸变系数值,至此,扩展现实设备产生畸变时的畸变系数已被标定。通过对畸变系数进行标定,可使得后续基于标定的畸变系数进行畸变矫正、深度估计和空间定位等。
[0076] 在其中一个实施例中,计算机设备可通过最小二乘法、梯度下降学习法、信赖域算法、高斯牛顿迭代法等,并根据多对标定点坐标对,对待拟合畸变关系进行数值拟合,以得到待拟合畸变关系中畸变系数的目标值。
[0077] 上述扩展现实设备的畸变系数标定方法中,通过获取标准标定图像和该标准标定图像进畸变后的畸变标定图像,可对标准标定图像和畸变标定图像进行标定点检测,从而得到包括发生畸变前的第一标定点坐标和发生畸变后的第二标定点坐标的标定点坐标对,如此,便可基于多对标定点坐标对,对表征标准标定图像与畸变标定图像之间标定点坐标的映射关系的待拟合畸变关系进行数值拟合处理,得到待拟合畸变关系中畸变系数的目标值,从而实现畸变系数自动标定的目的。由于本申请只需要一张标准标定图像即可实现扩展现实设备的畸变系数标定,因此,大大简化了畸变系数标定的流程,提升了畸变系数标定的效率。
[0078] 在其中一个实施例中,基于标准标定图像和所述畸变标定图像进行标定点检测,得到多对标定点坐标对,包括:对标准标定图像进行标定点检测,得到多个第一标定点,并确定每个第一标定点在标准标定图像中的坐标,得到多个第一标定点坐标;对畸变标定图像进行标定点检测,得到多个第二标定点,并确定每个第二标定点在畸变标定图像中的坐标,得到多个第二标定点坐标;根据各第一标定点坐标之间的位置关系和各第二标定点坐标之间的位置关系,对多个第一标定点坐标和多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。
[0079] 具体地,计算机设备对标准标定图像进行标定点检测,以识别出标准标定图像中的各第一标定点,并输出各第一标定点各自对应的第一标定点坐标。容易理解地,第一标定点指的是标准标定图像中的像素点或像素块,相应的,第一标定点坐标指的是该像素点或者像素块在标准标定图像中的位置坐标。比如,参考图5,在标准标定图像为棋盘格图像时,可将该标准标定图像中的白色作为背景色,从而计算机设备识别出各黑色方格的角点,并将识别出的角点作为第一标定点。相应的,计算机设备也可对畸变标定图像进行标定点检测,将畸变标定图像的白色作为背景色,识别出畸变标定图像中的黑色方格的角点,得到多个第二标定点,并输出各第二标定点各自对应的第二标定点坐标。
[0080] 进一步地,容易理解地,在计算机设备根据各第一标定点坐标中的横纵坐标值,确定各第一标定点之间的位置关系。由于第一标定点与第一标定点坐标之间是一一对应的,因此,各第一标定点之间的位置关系,也就是各第一标定点坐标之间的位置关系。比如,在第一标定点A的第一标定点坐标为(1,1),第一标定点B的第一标定点坐标为(1,0),第一标定点C的第一标定点坐标为(0,1)时,即可认为第一标定点A位于第一标定点C的右侧,以及位于第一标定点B的上方。进一步地,计算机设备按照各第一标定点之间的位置关系,对各第一标定点进行排序,得到第一标定点矩阵。比如,在第一标定点矩阵中,第一标定点A的标识A位于第一标定点C的标识C的右侧,且位于第一标定点B的标识B的上方。相应的,计算机设备可按照上述方式,确定各第二标定点之间的位置关系。由于第二标定点与第二标定点坐标之间是一一对应的,因此,各第二标定点之间的位置关系,也就是各第二标定点坐标之间的位置关系,并按照各第二标定点之间的位置关系,对各第二标定点进行排序,得到第二标定点矩阵。
[0081] 进一步地,计算机设备将位于第一标定点矩阵和第二标定点矩阵中的,位于相同位置处的第一标定点和第二标定点作为一对标定点,并将一对标定点中的第一标定点的第一标定点坐标和第二标定点的第二标定点坐标,作为一对标定点坐标对。比如,在确定第一标定点A位于第一标定点矩阵中的第一行与第一列的交汇处、第二标定点D位于第二标定点矩阵中的第一行与第一列的交汇处时,可确定第一标定点A所对应的第一标定点坐标和第二标定点D所对应的第二标定点坐标,为一对标定点坐标对。
[0082] 本实施例中,通过进行标定点检测,可得到反映标定点畸变前后变化情况的标定点坐标对,从而后续可基于标定点坐标对,得到扩展现实设备的畸变系数。
[0083] 在其中一个实施例中,对标准标定图像进行标定点检测,得到多个第一标定点,包括:获取滑动窗口,并触发滑动窗口按照预设的移动步长在标准标定图像上滑动,得到滑动窗口所框选的当前标准局部图像;确定当前标准局部图像的第一整体灰度值;触发滑动窗口多次朝任意方向滑动,得到与当前标准局部图像相对应的多个滑动后标准局部图像;确定每个滑动后标准局部图像的第二整体灰度值;在每个第二整体灰度值与第一整体灰度值之间的差异均大于或等于预设差异阈值时,将当前标准局部图像的中心作为第一标定点。
[0084] 具体地,当需要识别出第一标定点时,计算机设备可生成一个滑动窗口,并触发滑动窗口按照预设的移动步长在标准标定图像上滑动,比如,计算机设备可触发滑动窗口按照从上到下,从左到右的顺序,在滑动窗口上滑动。将滑动窗口框选的图像称作标准局部图像。针对滑动窗口每次框选的标准局部图像,计算机设备均可确定滑动窗口所框选的标准局部图像是否包括标定点的特征,若包括,则确定滑动窗口中具有标定点,并将该标定点作为第一标定点。
[0085] 在其中一个实施例中,在标定点为角点时,由于对角点来说,角点是边的角点,边的特征是梯度在某一方向上产生突变,因此,这个角点应该表现为某一区域内有两个或多方向上的边缘性变化的梯度信息,如果用滑动窗口来观察角点区域的话,滑动窗口向多个方向滑动,都能感知到像素密度的强变化(梯度),也即,都能感知到整体灰度值的变化。
[0086] 基于上述原理,当滑动窗口框选当前标准局部图像时,参考图6,计算机设备可触发滑动窗口601朝任意方向多次滑动,得到多个滑动后的滑动窗口,并将滑动后的滑动窗口所框选的每个内容均称作滑动后的当前标准局部图像。计算机设备确定当前标准局部图像的整体灰度值,以及确定每个滑动后的当前标准局部图像的整体灰度值,并确定每个滑动后的当前标准局部图像的整体灰度值与当前标准局部图像的整体灰度值之间的差异,在各差异均大于或等于预设差异阈值时,则可确定当前标准局部图像包括角点特征,此时当前标准局部图像的中心点为角点,因此,可将当前标准局部图像的中心点作为第一标定点。图6示出了一个实施例中滑动窗口朝任意方向滑动的示意图。
[0087] 上述实施例中,通过触发滑动窗口按照移动步长在标准标定图像中滑动,可将标准标定图像划分为多个标准局部图像,从而基于划分得到的多个标准局部图像对标准标定图像中的第一标定点进行精准的识别。当在框选得到当前标准局部图像时,通过触发滑动窗口朝任意方向滑动,可得到滑动后的当前标准局部图像,如此,便可基于滑动前的当前标准局部图像的整体灰度值和滑动后的当前标准局部图像的整体灰度值,快速准确地确定当前标准局部图像是否包括角点特征,进而基于该角点特征确定相应的第一标定点。
[0088] 在其中一个实施例中,对畸变标定图像进行标定点检测,得到多个第二标定点,包括:获取滑动窗口,并触发滑动窗口按照预设的移动步长在畸变标定图像上滑动,得到滑动窗口所框选的当前畸变局部图像;确定当前畸变局部图像的第三整体灰度值;触发滑动窗口多次朝任意方向滑动,得到与当前畸变局部图像相对应的多个滑动后畸变局部图像;确定每个滑动后畸变局部图像的第四整体灰度值;在每个第四整体灰度值与第三整体灰度值之间的差异均大于或等于预设差异阈值时,将当前畸变局部图像的中心作为第二标定点。
[0089] 具体地,当需要识别出第二标定点时,计算机设备可生成一个滑动窗口,并触发滑动窗口按照预设的移动步长在畸变标定图像上滑动,比如,计算机设备可触发滑动窗口按照从上到下,从左到右的顺序,在滑动窗口上滑动。针对滑动窗口所框选的每个畸变局部图像,计算机设备均可确定畸变局部图像是否包括标定点的特征,若包括,则确定滑动窗口中具有标定点,并将该标定点作为第二标定点。其中,可参照上述实施例,确定滑动窗口所框选的畸变局部图像是否包括标定点的特征。本实施例在此不再赘述。在其中一个实施例中,针对畸变标定图像的生成的滑动窗口的尺寸可与针对标准标定图像生成的滑动窗口的尺寸一致。针对畸变标定图像的滑动窗口的移动步长,可与针对标准标定图像的滑动窗口的尺寸一致。
[0090] 在其中一个实施例中,计算机设备也可仅识别标准标定图像和畸变标定图像中的部分标定点,而无需识别全部的标定点。比如,可仅识别标准标定图像和畸变标定图像中靠近中心区域处的标定点。
[0091] 上述实施例中,通过触发滑动窗口按照移动步长在畸变标定图像中滑动,可将畸变标定图像划分为多个畸变局部图像,从而基于划分得到的多个畸变局部图像对畸变标定图像中的第二标定点进行精准的识别。
[0092] 在其中一个实施例中,根据多对标定点坐标对,对待拟合畸变关系进行数值拟合,以确定待拟合畸变关系中所述畸变系数的目标值,包括:获取预设的畸变系数值增量模型;畸变系数值增量模型是根据待拟合畸变关系中的畸变系数生成得到的;确定当前轮次的畸变系数的预测值;根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型得到当前轮次的畸变系数预测值增量;当畸变系数预测值增量不满足数值收敛条件时,将当前轮次的畸变系数预测值增量和当前轮次的畸变系数预测值进行叠加,得到畸变系数的更新预测值;将下一轮次作为当前轮次,将更新预测值作为当前轮次的畸变系数的预测值,并返回根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型得到当前轮次的畸变系数预测值增量的步骤继续执行,直至畸变系数预测值增量满足数值收敛条件;将最后一个轮次的畸变系数的预测值,作为待拟合畸变关系中的畸变系数所对应的目标预测值。
[0093] 具体地,计算机设备可获取预设的畸变系数值增量模型,其中,畸变系数值增量模型用以确定两次连续迭代中畸变系数的预测值的变化量。计算机设备确定当前轮轮次的畸变系数的预测值,并将当前轮次的畸变系数的预测值和多对标定点坐标对输入至该畸变系数值增量模型,通过该畸变系数值增量模型,输出当前轮次的畸变系数预测值增量。计算机设备判断当前轮次的畸变系数预测值增量是否满足预设的数值收敛条件,若不满足预设的数值收敛条件,则计算机设备将畸变系数预测值增量与当前轮次的畸变系数的预测值进行叠加,得到畸变系数的更新预测值。并进入下一轮迭代,将得到的畸变系数的更新预测值作为当前轮次的畸变系数的预测值,并继续触发畸变系数值增量模型通过多对标定点坐标对和当前轮次的畸变系数的预测值,输出当前轮次的畸变系数预测值增量。直至输出的当前轮次的畸变系数预测值增量满足数值收敛条件。
[0094] 在当前轮次的畸变系数预测值满足数值收敛条件时,计算机设备即将当前轮次的畸变系数的预测值作为目标值,该畸变系数的目标值即为扩展现实设备产生畸变时采用的畸变系数值。
[0095] 在其中一个实施例中,计算机设备可获取预设的收敛数值,比如,收敛数值可为,并将当前轮次的畸变系数预测值增量与该收敛数值进行对比,在当前轮次的畸变系数预测值增量小于或等于收敛数值,则确定当前轮次的畸变系数预测值增量满足数值收敛条件,反之,则确定不满足数值收敛条件。
[0096] 在其中一个实施例中,可将预设值作为首个轮次的畸变系数的预测值。
[0097] 在其中一个实施例中,畸变系数值增量模型是基于残差模型确定的;残差模型是基于畸变关系确定的;残差模型表征,基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的实际值所确定的畸变前后坐标变化之间的残差。
[0098] 具体地,可先基于待拟合的畸变关系,确定相应的残差模型。其中,残差模型,用于表征基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的预测值实际值所确定的畸变前后坐标变化之间的残差,从而根据基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的预测值实际值所确定的畸变前后坐标变化之间的残差,确定畸变关系中的畸变系数的预测值与实际值之间的差异。其中,畸变系数的预测值,是数值拟合出的拟合值;畸变系数的实际值指的是数值拟合的目标。
[0099] 进一步地,为达到针对残差模型的最小二乘优化问题达到最小值,可对残差模型进行泰勒展开,从而得到畸变系数值增量模型。在其中一个实施例中,为达到针对残差模型的最小二乘优化问题达到最小值,可先确定残差模型在畸变系数方向上的偏导数,得到雅可比矩阵模型,再通过泰勒展示、高斯牛顿的条件以及一阶导数为零,得到畸变系数值增量模型。
[0100] 在其中一个实施例中,可通过下述公式确定畸变系数值增量模型:
[0101]
[0102] 其中, 为数值增量模型; 和 均为畸变系数预测值增量; 和均为残差模型; 是指第i对标定点坐标对中的第一标定点坐标;
是指第i对标定点坐标对中的第二标定点坐标; 是指基于 确
定的非畸变距离; 是指基于 确定的畸变距离; 和 为待确定的畸变系
数。容易理解地,本申请中的模型可为一个计算公式,矩阵可为基于计算公式输出的具体值。比如,上述的残差矩阵可为一个与变量 和 相关的矩阵计算公式,通过该计算公式计算出的结果即可称作残差矩阵。
[0103] 上述实施例中,当畸变系数预测值增量收敛到近于零,就表示即使继续迭代,拟合出的畸变系数的预测值也会近于不变;同时本系统中的每次迭代的坐标残差是由该次迭代的畸变系数产生,所以本系统中是以残差模型为关系式(F和G),对畸变系数( 和 )做的偏导数进行的优化,当畸变系数迭代残差收敛到小范围时,就表示残差模型已达到优化目标极小值,即表示已拟合出畸变关系对应的畸变系数值。
[0104] 在其中一个实施例中,根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型矩阵得到当前轮次的畸变系数预测值增量,包括:根据多对标定点坐标对,并通过畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵;根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵;对当前轮次的海森矩阵和当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量。
[0105] 具体地,畸变系数值增量模型包括海森矩阵模型和迭代矩阵模型。其中,海森矩阵模型用于输出海森矩阵,迭代矩阵模型用于输出迭代矩阵。在当前轮次中,计算机设备可根据多对标定点坐标和海森矩阵,得到当前轮次的海森矩阵,以及根据多对标定点坐标对、当前轮次的畸变系数的预测值和迭代矩阵模型,输出当前轮次的迭代矩阵。计算机设备将当前轮次的迭代矩阵和海森矩阵进行融合,比如,将海森矩阵的负一次方乘以迭代矩阵,得到当前轮次的畸变系数预测值增量。
[0106] 在其中一个实施例中,海森矩阵又称作Hessian矩阵,其描述了函数的局部曲率,当畸变系数值增量模型为上述实施例中的 时,即为海森矩阵模型, 即为迭代矩阵模型。从而,
将多对标定点坐标对输入至 中,即可得到具体的海森矩阵,将多对标定
点坐标对和当前轮次的畸变系数的预测值输入至公式 中,即可得到
具体的迭代矩阵,并将海森矩阵的负一次方乘以迭代矩阵,得到当前轮次的畸变系数预测值增量。
[0107] 上述实施例中,通过确定海森矩阵和迭代矩阵,可基于海森矩阵和迭代矩阵,预测连续两次迭代中畸变系数预测值之间的变化量,从而使得后续可基于连续两次迭代中畸变系数预测值之间的变化量来确定畸变系数的目标值。
[0108] 在其中一个实施例中,根据多对标定点坐标对,并通过畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵,包括:对于多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过海森矩阵模型中的雅可比矩阵模型,得到与当前标定点坐标对相对应的当前雅可比矩阵;将当前雅可比矩阵和当前雅可比矩阵的转置相融合,得到与当前标定点坐标对相对应的融合雅可比矩阵;将多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。
[0109] 具体地,海森矩阵模型可包括雅可比矩阵模型。当需要确定当前轮次的海森矩阵时,计算机设备可分别将每对标定点坐标对输入至海森矩阵模型中的雅可比矩阵模型中,得到每对标定点坐标对各自对应的雅可比矩阵。进一步地,对于多对标定点坐标对中的每对标定点坐标对,计算机设备均确定当前标定点坐标对所对应的当前雅可比矩阵的转置,并将当前雅可比矩阵与当前雅可比矩阵的转置相融合,得到当前标定点坐标对的融合雅可比矩阵。当得到每个标定点坐标对各自对应的融合雅可比矩阵时,计算机设备可将各融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。
[0110] 在其中一个实施例中,计算机设备可设置一个海森矩阵的初始值,并遍历每对标定点坐标对。对于首个遍历至的标定点坐标对,计算机设备可确定首个遍历至的标定点坐标对的雅可比矩阵,并将该雅可比矩阵与该雅可比矩阵的转置相乘,得到首个遍历至的标定点坐标对的融合雅可比矩阵。计算机设备将海森矩阵的初始值与融合雅可比矩阵相叠加,得到首个遍历至的标定点坐标对的叠加海森矩阵。计算机设备继续确定下一个遍历的标定点坐标对的融合雅可比矩阵,并将下一个遍历的标定点坐标对的融合雅可比矩阵与首个遍历至的标定点坐标对的叠加海森矩阵进行叠加,得到下一个遍历的标定点坐标对的叠加海森矩阵。如此迭代,直至遍历至最后一个标定点坐标对,并将最后一个遍历至的标定点坐标对的叠加海森矩阵,作为当前轮次的海森矩阵。
[0111] 在其中一个实施例中,在计算第i对标定点坐标点对相对应的雅可比矩阵的过程中,计算机确定第一标定点坐标 所对应的非畸变距离 ,以及确定第二标定点坐标 所对应畸变距离的 ,并将 、 、 和 输入至
雅可比矩阵模型 中,得到第i对标定点坐标点对
的雅可比矩阵 。
[0112] 上述实施例中,通过确定每对标定点坐标对各自的融合雅可比矩阵,可基于每对标定点坐标对各自的融合雅可比矩阵快速得到当前轮次的海森矩阵。
[0113] 在其中一个实施例中,根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵,包括:对于多对标定点坐标对中的每对标定点坐标对,均确定与当前标定点坐标对相对应的当前雅可比矩阵;根据当前标定点坐标对和当前轮次的畸变系数的预测值,通过迭代矩阵模型中的残差模型,得到当前标定点坐标对所对应的当前残差矩阵;将当前雅可比矩阵的转置与当前残差矩阵进行融合,得到与当前标定点坐标对相对应的融合迭代矩阵;将多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。
[0114] 具体地,迭代矩阵模型可包括雅可比矩阵模型和残差模型。当需要确定当前轮次的迭代矩阵时,计算机设备可分别将每对标定点坐标和对和当前轮次的畸变系数的预测值输入至迭代矩阵模型中的雅可比矩阵模型中,得到每对标定点坐标对各自对应的雅可比矩阵。容易理解地,计算机设备也可复用在计算海森矩阵时生成的当前标定点坐标对所对应的当前雅可比矩阵。
[0115] 进一步地,对于多对标定点坐标对中的每对标定点坐标对,计算机设备将当前标定点坐标对和当前轮次的畸变系数的预测值输入至迭代矩阵模型中的残差模型中,得到当前标定点坐标对所对应的当前残差矩阵。计算机设备确定当前标定点坐标对所对应的当前雅可比矩阵的转置,并将当前雅可比矩阵的转置与当前残差矩阵相乘,得到与当前标定点坐标对相对应的融合迭代矩阵。当得到各标定点坐标对各自对应的融合迭代矩阵时,计算机设备即可将各标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。
[0116] 在其中一个实施例中,计算机设备可设置一个迭代矩阵的初始值,并遍历每对标定点坐标对。对于首个遍历至的标定点坐标对,计算机设备可确定首个遍历至的标定点坐标对的雅可比矩阵和残差矩阵,并将首个遍历至的标定点坐标对的雅可比矩阵和残差矩阵进行融合,得到首个遍历至的标定点坐标对的融合迭代矩阵。计算机设备将融合迭代矩阵的初始值与融合雅可比矩阵相叠加,得到首个遍历至的标定点坐标对的叠加迭代矩阵。计算机设备继续确定下一个遍历的标定点坐标对的融合迭代矩阵,将下一个遍历的标定点坐标对的融合迭代矩阵与首个遍历至的标定点坐标对的叠加迭代矩阵进行叠加,得到下一个遍历的标定点坐标对的叠加迭代矩阵。如此迭代,直至遍历至最后一个标定点坐标对,并将最后一个遍历至的标定点坐标对的叠加迭代矩阵,作为当前轮次的迭代矩阵。
[0117] 在其中一个实施例中,在计算第i对标定点坐标点对相对应的残差矩阵的过程中,计算机设备确定第一标定点坐标 所对应的非畸变距离 ,以及确定第二标定点坐标 所对应畸变距离的 ,并将 、 、 、 和当前
轮次的畸变系数的预测值 输入至残差模型 中,得到第i对标
定点坐标点对 的残差矩阵

[0118] 上述实施例中,通过确定每对标定点坐标对各自的融合迭代矩阵,可基于每对标定点坐标对各自的融合迭代矩阵快速得到当前轮次的迭代矩阵。
[0119] 在其中一个实施例中,海森矩阵模型是根据雅可比矩阵模型生成得到的,雅可比矩阵模型表征残差模型在畸变系数方向上的偏导数;迭代矩阵是根据雅可比矩阵模型和残差模型生成得到的;残差模型表征,基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的实际值所确定的畸变前后坐标变化之间的残差。
[0120] 具体地,在进行数值拟合的过程中,数值拟合的目标是拟合出的畸变系数的预测值与畸变系数的实际值之间的残差尽可能的接近于0。基于此目标,可生成表征,基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的预测值实际值所确定的畸变前后坐标变化之间差异的残差矩阵。在进行数值拟合的过程中,当残差矩阵输出的残差接近零时,则可认为此时拟合得到的畸变系数的预测值近似于畸变系数的实际值,此时达到了拟合目标。因此,本申请的数值拟合的目标就变成了针对该残差的最小二乘优化问题达到最小值。在求解针对该残差的最小二乘优化问题达到最小值的过程中,就需要通过基于残差模型生成的海森矩阵和雅可比矩阵来确定每次迭代中畸变系数的预测值增量,从而通过畸变系数的预测值增量完成最终的畸变系数预测值增量收敛判断,并在确定畸变系数预测值增量收敛时,确定残差矩阵输出的残差接近零,此时迭代得到的畸变系数的预测值即为目标值。
[0121] 在其中一个实施例中,上述方法还包括:综合畸变系数的目标值和畸变关系,得到目标畸变关系;获取待显示图像,并根据目标畸变关系对待显示图像中的各像素点进行反畸变处理,以确定各像素点各自对应的畸变矫正位置;将各像素点分别移动至相应的畸变矫正位置处,得到反畸变图像;通过扩展现实设备显示反畸变图像。
[0122] 具体地,当标定扩展现实模型的畸变系数时,也即,当得到畸变系数值确定的目标畸变关系时,计算机设备即可获取待显示图像,并根据目标畸变关系对待显示图像进行反畸变处理,得到反畸变图像。计算机设备将反畸变图像输入至扩展现实设备中并触发扩展现实设备显示该反畸变图像,从而人眼通过扩展现实设备观看到正常无畸变图像。容易理解地,计算机设备也可触发扩展现实设备根据标定的目标畸变关系对待显示图像进行反畸变处理,得到反畸变图像。
[0123] 在其中一个实施例中,目标畸变关系具体为一个函数。对于待显示图像中的各像素点各自对应的像素坐标,计算机设备均将当前像素的像素坐标代入至目标畸变关系的反函数中,得到反函数输出的当前像素的畸变矫正位置。计算机设备综合各像素各自对应的畸变矫正位置,得到反畸变图像。
[0124] 在其中一个实施例中,参考图7,当扩展现实设备的显示器显示反畸变图像时,显示器显示反畸变图像时发出的光线透过扩展现实设备的光机镜头后,呈现在人眼中的即为一张正常显示的无畸变图像。图7示出了一个实施例中扩展现实设备显示图像的示意图。
[0125] 上述实施例中,通过对畸变系数进行标定,可基于标定的畸变系数确定目标畸变关系,从而基于目标畸变关系输出正常显示的无畸变图像,如此,大大提升了用户体验。
[0126] 在其中一个实施例中,参考图8,S801,计算机设备对畸变前后采集的棋盘格图片进行角点检测,得到多对标定点坐标对。S802,计算机设备获取畸变系数值增量模型,并进入迭代,通过畸变系数值增量模型和多对标定点坐标对得到畸变系数预测值增量。S803,计算机设备判断畸变系数预测值增量是否收敛。若收敛,则结束迭代。S804若未收敛,则继续迭代,直至畸变系数预测值增量收敛,并将收敛时的畸变系数的预测值,作为畸变系数的目标值。图8示出了一个实施例中畸变系数标定的整体流程示意图。
[0127] 在其中一个具体实施例中,参考图9,扩展现实设备的畸变系数标定方法包括:
[0128] S902,计算机设备获取标准标定图像和畸变标定图像;畸变标定图像,是在扩展现实设备的显示器将标准标定图像显示为画面时,透过扩展现实设备的光机镜头采集画面形成的。
[0129] S904,计算机设备获取滑动窗口,并触发滑动窗口按照预设的移动步长在标准标定图像上滑动,得到滑动窗口所框选的当前标准局部图像;确定当前标准局部图像的第一整体灰度值。
[0130] S906,计算机设备触发滑动窗口多次朝任意方向滑动,得到与当前标准局部图像相对应的多个滑动后标准局部图像;确定每个滑动后标准局部图像的第二整体灰度值。
[0131] S908,在每个第二整体灰度值与第一整体灰度值之间的差异均大于或等于预设差异阈值时,计算机设备将当前标准局部图像的中心作为第一标定点。
[0132] S910,计算机设备获取滑动窗口,并触发滑动窗口按照预设的移动步长在畸变标定图像上滑动,得到滑动窗口所框选的当前畸变局部图像;确定当前畸变局部图像的第三整体灰度值。
[0133] S912,计算机设备触发滑动窗口多次朝任意方向滑动,得到与当前畸变局部图像相对应的多个滑动后畸变局部图像;确定每个滑动后畸变局部图像的第四整体灰度值。
[0134] S914,在每个第四整体灰度值与第三整体灰度值之间的差异均大于或等于预设差异阈值时,计算机设备将当前畸变局部图像的中心作为第二标定点。
[0135] S916,计算机设备根据各第一标定点坐标之间的位置关系和各第二标定点坐标之间的位置关系,对多个第一标定点坐标和多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。
[0136] S918,对于多对标定点坐标对中的每对标定点坐标对,计算机设备均根据当前标定点坐标对,并通过海森矩阵模型中的雅可比矩阵模型,得到与当前标定点坐标对相对应的当前雅可比矩阵。
[0137] S920,计算机设备将当前雅可比矩阵和当前雅可比矩阵的转置相融合,得到与当前标定点坐标对相对应的融合雅可比矩阵;将多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。
[0138] S922,对于多对标定点坐标对中的每对标定点坐标对,计算机设备均根据当前标定点坐标对,并通过迭代矩阵模型中的雅可比矩阵模型,得到与当前标定点坐标对相对应的当前雅可比矩阵。
[0139] S924,对于多对标定点坐标对中的每对标定点坐标对,计算机设备均根据当前标定点坐标对和当前轮次的畸变系数的预测值,并通过迭代矩阵模型中的残差模型,得到与当前标定点坐标对相对应的当前残差矩阵。
[0140] S926,计算机设备将当前雅可比矩阵的转置与当前残差矩阵进行融合,得到与当前标定点坐标对相对应的融合迭代矩阵;将多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。
[0141] S928,计算机设备对当前轮次的海森矩阵和当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量;当畸变系数预测值增量不满足数值收敛条件时,计算机设备将当前轮次的畸变系数预测值增量和当前轮次的畸变系数预测值进行叠加,得到畸变系数的更新预测值。
[0142] S930,将下一轮次作为当前轮次,计算机设备将更新预测值作为当前轮次的畸变系数的预测值,返回S922的步骤继续执行,直至畸变系数预测值增量满足数值收敛条件,并将最后一个轮次的畸变系数的预测值,作为待拟合畸变关系中的畸变系数所对应的目标预测值。
[0143] 应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0144] 本申请还提供一种应用场景,该应用场景应用上述的扩展现实设备的畸变系数标定方法。具体地,该扩展现实设备的畸变系数标定方法在该应用场景的应用如下:
[0145] 当需要对XR设备进行畸变系数的标定时,首先需要获取待拟合的畸变关系。以经典Brown模型为例,该模型是根据非畸变距离 的系数 来表示畸变距离 ,具体如下:
[0146]
[0147] 可以看到以上存在着两个未知的系数 和 ,而本系统中的标定目的就是要拟合出这两个系数的具体值。具体地说,在标定中,本系统首先输入标准化的棋盘格图片,然后将图片直接输入到光机显示中,通过高清相机获得畸变后的棋盘格图片(背景为白色);最后通过角点检测(包括但不限于opencv角点检测)得到畸变前后的棋盘格角点坐标位置(也称作多对标定点坐标对)。至此,标定过程所需的准备工作均已完成,然后通过将畸变前后的棋盘格对应角点坐标(也称作多对标定点坐标对)作为数值拟合的输入,拟合出畸变关系中的系数,得到完备的正向畸变关系。数值拟合过程具体如下:
[0148] 在标定中,数值拟合的目标是,拟合的畸变系数 与实际的畸变系数所引起的坐标变化的残差尽量接近于零(此处以Brown模型为例),所以引起的残差关系如下:
[0149]
[0150]
[0151] 为达到针对于该残差的最小二乘优化问题达到最小值(即近于0),就需要求出和 方向的偏导数形成雅可比矩阵,具体如下:
[0152]
[0153] 然后通过泰勒展开、高斯牛顿的条件以及一阶导数为零,来得到如下每次迭代中两个坐标维度的变化量:
[0154]
[0155] 其中的 关系如下:
[0156]
[0157] 至此,可以得到每一次迭代的 和 维度的增量 和 就可以得到了,然后通过不断迭代计算 和 ,判断其数值收敛到一个很小的范围(本系统中设置为 ),若收敛,则可以得到相对于所有畸变前后棋盘格角点的系数,即完成标定功能。其所得畸变系数就可以在后续的畸变校正处理中直接使用,待畸变图像准确的校正后才可以使相关后续处理(包括但不限于,图像显示、画质增强等)变得顺利。其中,上述公式中的各参数的具体含义可参照上述实施例。
[0158] 本申请还提供另一种应用场景,该应用场景应用上述的扩展现实设备的畸变系数标定方法。具体地,该扩展现实设备的畸变系数标定方法在该应用场景的应用如下:
[0159] 用户可通过扩展现实设备进入虚拟现实世界,比如,用户可通过扩展现实设备(XR设备)来进行游戏娱乐,以进入可交互式虚拟现实游戏场景。在用户通过XR设备进行游戏娱乐之前,可预先通过本申请提出的畸变系数标定方法来进行畸变系数的标定,从而XR设备可根据标定的畸变系数对待展示的虚拟现实游戏场景进行调整后展示,如此,用户观看到的虚拟现实游戏场景即为非畸变的场景。通过展示非畸变的虚拟现实游戏场景,可使得用户感受到身临其境的游戏体验。
[0160] 上述应用场景仅为示意性的说明,可以理解,本申请各实施例所提供的扩展现实设备的畸变系数标定方法的应用不局限于上述场景。比如,在用户通过扩展现实设备进行娱乐、导航之前,也可预先通过上述的畸变系数标定方法进行畸变系数的标定。示例性地,在用户通过扩展现实设备观看VR电影(又称,虚拟现实电影)之前,可预先进行畸变系数的标定,从而扩展现实设备可基于标定的畸变系数向用户展示非畸变的电影画面。或者,在用户通过扩展现实设备进行导航之前,也可预先进行畸变系数的标定,从而扩展现实设备可基于标定的畸变系数向用户展示非畸变的叠加有虚拟场景和现实场景的路面画面。
[0161] 基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的扩展现实设备的畸变系数标定方法的扩展现实设备的畸变系数标定装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个扩展现实设备的畸变系数标定装置实施例中的具体限定可以参见上文中对于扩展现实设备的畸变系数标定方法的限定,在此不再赘述。
[0162] 如图10所示,提供了一种扩展现实设备的畸变系数标定装置,包括:图像获取模块1002、坐标对确定模块1004和数值拟合模块1006,其中:
[0163] 图像获取模块1002,用于获取标准标定图像和畸变标定图像;畸变标定图像,是在扩展现实设备的显示器将标准标定图像显示为画面时,透过扩展现实设备的光机镜头采集画面形成的.
[0164] 坐标对确定模块1004,用于基于标准标定图像和畸变标定图像进行标定点检测,得到多对标定点坐标对;每个标定点坐标对,包括属于标准标定图像的第一标定点坐标和属于畸变标定图像的第二标定点坐标,第二标定点坐标是第一标定点坐标畸变后对应的标定点坐标。
[0165] 数值拟合模块1006,用于获取待拟合畸变关系;待拟合畸变关系包括待确定的畸变系数,用于表征标准标定图像与畸变标定图像之间标定点坐标的映射关系;根据多对标定点坐标对,对待拟合畸变关系进行数值拟合,以确定待拟合畸变关系中畸变系数的目标值。
[0166] 在其中一个实施例中,畸变标定图像是图像采集设备采集得到的;在图像采集设备采集畸变标定图像的过程中,扩展现实设备的光机镜头位于图像采集设备和扩展现实设备的显示器之间,且光机镜头的光心与显示器的中心对齐。
[0167] 在其中一个实施例中,参考图11,坐标对确定模块1004还用于对标准标定图像进行标定点检测,得到多个第一标定点,并确定每个第一标定点在标准标定图像中的坐标,得到多个第一标定点坐标;对畸变标定图像进行标定点检测,得到多个第二标定点,并确定每个第二标定点在畸变标定图像中的坐标,得到多个第二标定点坐标;根据各第一标定点坐标之间的位置关系和各第二标定点坐标之间的位置关系,对多个第一标定点坐标和多个第二标定点坐标进行匹配处理,得到多对标定点坐标对。
[0168] 在其中一个实施例中,坐标对确定模块1004还包括第一标定点确定模块1041,用于获取滑动窗口,并触发滑动窗口按照预设的移动步长在标准标定图像上滑动,得到滑动窗口所框选的当前标准局部图像;确定当前标准局部图像的第一整体灰度值;触发滑动窗口多次朝任意方向滑动,得到与当前标准局部图像相对应的多个滑动后标准局部图像;确定每个滑动后标准局部图像的第二整体灰度值;在每个第二整体灰度值与第一整体灰度值之间的差异均大于或等于预设差异阈值时,将当前标准局部图像的中心作为第一标定点。
[0169] 在其中一个实施例中,坐标对确定模块1004还包括第二标定点确定模块1042,用于获取滑动窗口,并触发滑动窗口按照预设的移动步长在畸变标定图像上滑动,得到滑动窗口所框选的当前畸变局部图像;确定当前畸变局部图像的第三整体灰度值;触发滑动窗口多次朝任意方向滑动,得到与当前畸变局部图像相对应的多个滑动后畸变局部图像;确定每个滑动后畸变局部图像的第四整体灰度值;在每个第四整体灰度值与第三整体灰度值之间的差异均大于或等于预设差异阈值时,将当前畸变局部图像的中心作为第二标定点。
[0170] 在其中一个实施例中,数值拟合模块1006还用于获取预设的畸变系数值增量模型;畸变系数值增量模型是根据待拟合畸变关系中的畸变系数生成得到的;确定当前轮次的畸变系数的预测值;根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型得到当前轮次的畸变系数预测值增量;当畸变系数预测值增量不满足数值收敛条件时,将当前轮次的畸变系数预测值增量和当前轮次的畸变系数预测值进行叠加,得到畸变系数的更新预测值;将下一轮次作为当前轮次,将更新预测值作为当前轮次的畸变系数的预测值,并返回根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型得到当前轮次的畸变系数预测值增量的步骤继续执行,直至畸变系数预测值增量满足数值收敛条件;将最后一个轮次的畸变系数的预测值,作为待拟合畸变关系中的畸变系数所对应的目标预测值。
[0171] 在其中一个实施例中,畸变系数值增量模型是基于残差模型确定的;残差模型是基于畸变关系确定的;残差模型表征,基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的实际值所确定的畸变前后坐标变化之间的残差。
[0172] 在其中一个实施例中,数值拟合模块1006还用于根据多对标定点坐标对,并通过畸变系数值增量模型中的海森矩阵模型得到当前轮次的海森矩阵;根据多对标定点坐标对和当前轮次的畸变系数的预测值,并通过畸变系数值增量模型中的迭代矩阵模型得到当前轮次的迭代矩阵;对当前轮次的海森矩阵和当前轮次的迭代矩阵进行融合,得到当前轮次的畸变系数预测值增量。
[0173] 在其中一个实施例中,数值拟合模块1006还包括海森矩阵确定模块1061,用于对于多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过海森矩阵模型中的雅可比矩阵模型,得到与当前标定点坐标对相对应的当前雅可比矩阵;将当前雅可比矩阵和当前雅可比矩阵的转置相融合,得到与当前标定点坐标对相对应的融合雅可比矩阵;将多对标定点坐标对各自对应的融合雅可比矩阵进行叠加,得到当前轮次的海森矩阵。
[0174] 在其中一个实施例中,数值拟合模块1006还包括迭代矩阵确定模块1062,用于对于多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对,并通过迭代矩阵模型中的雅可比矩阵模型,得到与当前标定点坐标对相对应的当前雅可比矩阵;对于多对标定点坐标对中的每对标定点坐标对,均根据当前标定点坐标对和当前轮次的畸变系数的预测值,通过迭代矩阵模型中的残差模型,得到与当前标定点坐标对相对应的当前残差矩阵;将当前雅可比矩阵的转置与当前残差矩阵进行融合,得到与当前标定点坐标对相对应的融合迭代矩阵;将多对标定点坐标对各自对应的融合迭代矩阵进行叠加,得到当前轮次的迭代矩阵。
[0175] 在其中一个实施例中,海森矩阵模型是根据雅可比矩阵模型生成得到的,雅可比矩阵模型表征残差模型在畸变系数方向上的偏导数;迭代矩阵是根据雅可比矩阵模型和残差模型生成得到的;残差模型表征,基于畸变系数的预测值所确定的畸变前后坐标变化与基于畸变系数的实际值所确定的畸变前后坐标变化之间的残差。
[0176] 在其中一个实施例中,扩展现实设备的畸变系数标定装置1000还包括反畸变模块,用于综合畸变系数的目标值和畸变关系,得到目标畸变关系;获取待显示图像,并根据目标畸变关系对待显示图像中的各像素点进行反畸变处理,以确定各像素点各自对应的畸变矫正位置;将各像素点分别移动至相应的畸变矫正位置处,得到反畸变图像;通过扩展现实设备显示反畸变图像。
[0177] 上述扩展现实设备的畸变系数标定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0178] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储扩展现实设备的畸变系数标定数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种扩展现实设备的畸变系数标定方法。
[0179] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图13所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种扩展现实设备的畸变系数标定方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或扩展现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0180] 本领域技术人员可以理解,图12至图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0181] 在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0182] 在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0183] 在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
[0184] 需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0185] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0186] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0187] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。