图像的三维显示方法、装置、显示模组及可读存储介质与流程

未命名 07-22 阅读:94 评论:0


1.本技术涉及三维技术领域,更具体而言,涉及一种图像的三维显示方法、装置、显示模组及可读存储介质。


背景技术:

2.在相关技术中,裸眼3d(glasses-free 3d)要求用户在固定位置保持眼部位置不变,以确保用户能持续地观看三维影像。若用户移动头部导致眼部位置变化,则导致用户需恢复至先前位置以继续观看三维影像,导致用户的观影体验较差。


技术实现要素:

3.本技术提供了一种图像的三维显示方法、装置、显示模组及可读存储介质。
4.本技术提供一种图像的三维显示方法,包括:
5.获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取所述用户在上一时刻的眼部位置作为第二眼部位置;
6.基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量;
7.基于所述位置偏差量对所述第一眼部位置进行校正,得到当前观测位置;
8.基于所述当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在所述当前观测位置能够观测到三维的图像。
9.本技术提供的图像的三维显示方法中,显示模组在接收/获取到当前时刻下用户的眼部位置后,将当前时刻的眼部位置作为第一眼部位置,并将用户在上一时刻的眼部位置作为第二眼部位置;随后,确定第一眼部位置和第二眼部位置的偏差量,即位置偏差量;之后,通过位置偏差量对第一眼部位置进行校正,以使校正后的当前观测位置能正确反映出用户眼部在当前时刻的位置;最后,利用当前观测位置同时对显示区域的左右两半区域的目标图像进行相应的更新,以使用户能在当前观测位置够观测到三维的图像。
10.如此,本技术通过当前观测位置的确定,使得用户眼部位置在发生改变后,显示模组能对应地调整显示区域中的图像,以确保用户能继续通过肉眼观测到3d图像,由此保障了用户的观测体验;以及,本技术还通过对第一眼部位置的修正以得到当前观测位置,避免了直接采用第一眼部位置而引入的误差,也因此,降低了硬件成本和硬件限制所造成的负面影响。
11.本技术还提供一种图像的三维显示装置,所述装置包括:
12.获取模块,用于获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取所述用户在上一时刻的眼部位置作为第二眼部位置;
13.确定模块,用于基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量;
14.校正模块,用于基于所述位置偏差量对所述第一眼部位置进行校正,得到当前观测位置;
15.更新模块,用于基于所述当前观测位置,同时对显示区域的左半区域中的目标图
像和右半区域中的目标图像进行对应的更新,以使得在所述当前观测位置能够观测到三维的图像。
16.本技术提供一种显示模组,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述的图像的三维显示方法。
17.本技术的计算机可读存储介质,存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,实现上述的图像的三维显示方法。
18.本技术提供的图像的三维显示装置、显示模组及计算机可读存储介质中,通过当前观测位置的确定,使得用户眼部位置在发生改变后,显示模组能对应地调整显示区域中的图像,以确保用户能继续通过肉眼观测到3d图像,由此保障了用户的观测体验;以及,本技术还通过对第一眼部位置的修正以得到当前观测位置,避免了直接采用第一眼部位置而引入的误差,也因此,降低了硬件成本和硬件限制所造成的负面影响。
19.本技术的实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实施方式的实践了解到。
附图说明
20.本技术的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
21.图1为本技术某些实施方式的图像的三维显示方法的流程示意图;
22.图2为本技术某些实施方式的应用场景示意图;
23.图3为本技术某些实施方式的应用场景示意图;
24.图4为本技术某些实施方式的应用场景示意图;
25.图5为本技术某些实施方式的应用场景示意图;
26.图6为本技术某些实施方式的应用场景示意图;
27.图7为本技术某些实施方式的应用场景示意图;
28.图8为本技术某些实施方式的应用场景示意图;
29.图9为本技术某些实施方式的应用场景示意图;
30.图10为本技术某些实施方式的应用场景示意图;
31.图11为本技术某些实施方式的应用场景示意图;
32.图12为本技术某些实施方式的应用场景示意图;
33.图13为本技术某些实施方式的应用场景示意图;
34.图14为本技术某些实施方式的应用场景示意图;
35.图15为本技术某些实施方式的应用场景示意图;
36.图16为本技术某些实施方式的图像的三维显示装置的示意图。
具体实施方式
37.下面详细描述本技术的实施方式,实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本技术的实施方式,而不能理解为对本技术的实施方式的限制。
38.请参阅图1,本技术提供一种图像的三维显示方法,包括:
39.0110,获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取用户在上一时刻的眼部位置作为第二眼部位置。
40.可以理解的是,本技术中获取眼部位置的方式为可根据实际情况设置的内容。在某些实施方式中,本技术中用于显示画面/图像的显示模组内集成有摄像模组和目标检测模组,故显示器通过摄像模组拍摄到图片后,再通过目标检测模组识别图片中的用户的眼部,进而得到眼部位置。
41.还可以理解的是,本技术中第一眼部位置和第二眼部位置的时间差,也即,本技术中采集眼部位置的频率为根据实际情况设置的内容,如在某些实施方式中,眼部位置的采集频率为60hz。
42.不难想到的是,本技术可在每完成一次眼部位置后,将获取到的眼部位置存储至预设的存储空间(如缓存),进而,当需获取第二眼部位置时,可通过读取存储空间中最后存储的数据来实现。
43.0120,基于第一眼部位置和第二眼部位置,确定位置偏差量。
44.可以理解的是,因采集/获取眼部位置时可能因采集设备(如上述摄像模组和目标检测模组)的硬件限制,无法以较为准确地确定出用户眼部位置的变化情况,如当用户转动头部时,因摄像模组的拍摄频率较低,导致拍摄模组拍摄到存在眼部残影的图片,进而,目标检测模组将识别图片中的眼部残影的位置,由此导致获取到的眼部位置不准确/真实。
45.正因此,本技术为修正因硬件限制而导致的眼部位置偏差,故在获取/采集到任意一个眼部位置后,将利用上一次获取到的眼部位置对本次获取到的眼部位置,计算上一次与本次的眼部位置的偏差量(即位置偏差量),进而在后续过程中通过位置偏差量来修正本次的眼部位置。
46.还可以理解的是,因本技术需利用上一次获取到的眼部位置来修正本次获取到的眼部位置,故为提高眼部位置的准确性,在本技术某些实施方式中,计算位置偏差量过程中的第二眼部位置可为已经过修正的量,也即,利用第二眼部位置的上一个时刻获取到的眼部位置对第二眼部位置进行修正后,利用修正后的量来计算第一眼部位置对应的位置偏差量。
47.此外,需理解的是,若位置偏差量为0,或是位置偏差量小于预设阈值,则本技术的显示模组将认定用户的眼部位置未发生改变,进而将不再执行后续0130、0140及其他步骤。
48.另外,还需理解的是,确定/计算位置偏差量的具体方式为可根据实际情况设置的内容,如在某些实施方式中,上述0120具体包括:
49.基于第一眼部位置和第二眼部位置的差值,得到位置偏差量。
50.也即,设第一眼部位置为δnew、第二眼部位置为δlast及位置偏差量为δvector,则有:
51.δvector=δbew-δlast
52.0130,基于位置偏差量对第一眼部位置进行校正,得到当前观测位置。
53.也即,本技术将基于前后两个时刻(两次)获取到的第一眼部位置和第二眼部位置的偏差量,来对当前时刻(本次)获取到的第一眼部位置进行修正,从而消除因硬件限制而造成的误差/偏差。
54.可以理解的是,通过位置偏差量对第一眼部位置进行校正/修正的具体过程为可根据实际情况设置的内容,如在某些实施方式中,上述0130具体包括:
55.基于位置偏差量和预设的偏差修正量的差值,得到目标修正量;
56.基于第一眼部位置和目标修正量的和值,得到当前观测位置。
57.为更清楚地说明本技术提供的实施方式,设位置偏差量为δvector、偏差修正量为δvalue、目标修正量为δvectorfinal、当前观测位置/当前视点为p’及第一眼部位置表达为p(x,y,z),则有:
58.δvectorfinal=δvector-δvalue
59.p’=p(x,y,z)+δvectorfinal
60.需说明的是,本技术实施方式中的偏差修正量δvalue可为预先通过多个样本拟合而来的数据,也即,首先,通过摄像模组获取到包括眼部的多个图片样本后;然后,对每个图片样本中的眼部的位置进行标定以获取真实眼部位置;随后,识别每个图片样本中的眼部位置以确定眼部检测位置;最后,通过每个图片样本的真实眼部位置和眼部检测位置进行拟合,从而得到上述偏差修正量δvalue。
61.如此,本技术实施方式通过位置偏差量确定出当前时刻下的第一眼部位置与上一时刻下的第二眼部位置的偏差量(即位置偏差量)后,即可通过偏差修正量对位置偏差量进行修正,从而得出第一眼部位置与真实眼部位置(即当前观测位置)的偏差(即目标修正量),进而利用目标修正量对第一眼部位置进行修正后,即可得到相对准确的眼部位置,即当前观测位置,由此,降低了硬件成本和硬件限制所带来的负面影响。
62.此外,还需理解的是,上述实施方式中的位置偏差量δvector和偏差修正量δvalue均可理解为第一眼部位置和第二眼部位置在方向上的偏移情况,也因此,若用户仅是以较小的动作幅度改变眼部位置(如偏头),则通过上述实施方式确定出的目标修正量δvectorfinal较为准确。但是,若用户是以较大的动作幅度来改变眼部位置(如骤然下蹲或奔跑),将因前述硬件限制和摄像模组的比例尺设置情况,导致上述位置偏差量δvector和偏差修正量δvalue难以准确地描述出第一眼部位置和真实眼部位置的在距离上的真实偏差,换言之,上述目标修正量δvectorfinal的准确度/可信度下降,正因此,在本技术某些实施方式中,上述基于位置偏差量和预设的偏差修正量的差值,得到目标修正量,包括:
63.基于位置偏差量和偏差修正量的差值,得到候选修正量;
64.基于候选修正量和偏差修正量的乘积,得到目标修正量。
65.为更清楚地说明本技术提供的实施方式,请参考下式,即:
66.δvectorfinal=(δvector-δvalue)*δvalue
67.不难理解的是,式中的(δvector-δvalue)即为上述候选修正量。
68.可以理解的是,比例尺指代摄像模组拍摄到的图片中的单位距离在真实/现实空间中对应的实际距离,如摄像模组拍摄到的图片中的1像素单位对应真实空间下的多少米。
69.还可以理解的是,候选修正量与偏差修正量的乘积理解为用户眼部在δvalue方向上移动了(δvector-δvalue)的距离,换言之,将(δvector-δvalue)扩大δvalue倍后即得到目标修正量δvectorfinal,进而目标修正量δvectorfinal能描述出用户在大幅度动作下的眼部位置变化情况。
70.如此,本技术实施方式使得用户的眼部位置在大幅度改变后,显示模组亦能确定
出第一眼部位置和真实眼部位置相对准确的偏差(即目标修正量),从而进一步降低了硬件成本和硬件限制所带来的负面影响。
71.0140,基于当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在当前观测位置能够观测到三维的图像。
72.也即,本技术在用户眼部位置发生变化后,将利用变化后的位置(即当前观测位置)来重新调整显示模组的显示区域的左右两半区域所显示/呈现的图像,进而确保用户在当前时刻下,通过肉眼接收到显示区域的左半区域中的目标图像和右半区域中的目标图像后,能观测到三维的图像。
73.不难理解的是,左半区域和右半区域分别显示的目标图像为同一个物体,也即,本技术将一个物体以不同的观测角度而生成的两张图像分别显示在左半区域和右半区域中。
74.如此,本技术通过当前观测位置的确定,使得用户眼部位置在发生改变后,显示模组能对应地调整显示区域中的图像,以确保用户能继续通过肉眼观测到3d图像,由此保障了用户的观测体验;以及,本技术还通过对第一眼部位置的修正以得到当前观测位置,避免了直接采用第一眼部位置而引入的误差,也因此,降低了硬件成本和硬件限制所造成的负面影响。
75.此外,可以理解的是,本技术的显示区域中的左右两半区域以何种方式来显示目标图像为可根据实际情况设置的内容,如在某些实施方式中,目标图像的分辨率大小与左半区域的分辨率大小相同,左半区域的分辨率高度和右半区域的分辨率高度均与显示区域的分辨率高度相同,左半区域的分辨率宽度和右半区域的分辨率宽度均为显示区域的分辨率宽度的一半。
76.示范性的,设本技术显示模组的显示区域的分辨率为8k(7680
×
4320),则左半区域和右半区域的分辨率高度均为4320,左半区域和右半区域的分辨率宽度均为7680的一半,即3840,也因此,目标图像的分辨率将被设置为3840
×
4320。
77.不难理解的是,在本技术提供的实施方式中,显示区域将均匀地划分为两半区域,且两半区域均将显示完整的目标图像。
78.如此,本技术使得目标图像能以较为简单地显示在目标区域的两半区域中,保障了目标图像的显示效率。
79.此外,可以理解的是,本技术中的显示区域可以理解为用于显示目标图像的虚拟窗口,也可理解为显示器/显示面板。
80.进一步的,在显示区域为上述虚拟窗口的某些实施方式中,显示区域的分辨率大小总是与显示器的分辨率一致。示范性的,设本技术显示模组的显示器的分辨率为8k(7680
×
4320),则显示区域的分辨率亦为8k,而左半区域、右半区域及目标图像的分辨率可均为3840
×
4320。
81.需说明的是,显示区域的分辨率大小若不与显示器的分辨率一致,则可能出现目标图像的显示效果较差进而无法使用户观测到3d图像的情况。举例而言,请参考图2、3及4,图2、3及4均为本技术某些实施方式的应用场景示意图。
82.其中,图2示出了显示区域的分辨率小于显示器的分辨率的情况,也即,因显示区域的分辨率小于显示器的分辨率,导致显示区域的部分区域不显示任何内容,故出现黑边,也因此,导致用户难以观测到三维的图像。
83.图3示出了显示区域的分辨率等于显示器的分辨率的情况,也即,因显示区域的分辨率等于显示器的分辨率,故显示区域的左右两半部分均能将目标图像完整地显示,因而用户能观测到三维的图像。
84.图4示出了显示区域的分辨率大于显示器的分辨率的情况,也即,因显示区域的分辨率大于显示器的分辨率,导致右半区域无法完整地显示目标图像,因而用户无法通过右眼观测到右半区域的图像,因而无法观测到三维的图像。
85.可选的,为使显示区域显示的图像更自然/流畅,在某些实施方式中,本技术提供的图像的三维显示方法还包括:
86.获取预设时间内以预设频率拍摄的包含眼部位置的图像样本,其中,不同的图像样本中的眼部位置不同;
87.基于所有图像样本,拟合预设时间内眼部位置的位置变化关系。
88.进而,上述0110在某些实施方式中具体包括:
89.获取用户在当前时刻的眼部位置以得到第一位置,并获取用户的在上一时刻的眼部位置作为第二位置;
90.基于位置变化关系,确定上一时刻到当前时刻间的多个中间位置;
91.将第二位置、多个中间位置及第一位置按照时间顺序合并以得到位置集合;
92.按照时间顺序抽取将位置集合中相邻的两个元素,并将两个元素中的前一个作为第二眼部位置,后一个作为第一眼部位置;
93.执行上述0120,并将第二眼部位置从位置集合中删除。
94.进而,上述0140之后,还包括:
95.回到上述按照时间顺序抽取将位置集合中相邻的两个元素,并将两个元素中的前一个作为第二眼部位置,后一个作为第一眼部位置的步骤,直至位置集合未包含有两个元素。
96.也即,本技术实施方式还将利用摄像模组在预设时间内收集到的图像样本,拟合出用户眼部在预设时间内的连续变化关系,即上述位置变化关系。进而,显示模组在得到第一位置和第二位置后,即可将第二位置视作眼部起始位置,将第一位置视作眼部终点位置;再之后,利用位置变化关系确定出从第二位置到第一位置(即上一时刻到当前时刻)间的多个中间位置;随后,按照时间先后顺序,将第二位置、多个中间位置及第一位置拍摄排序并合并,从而得到位置集合;接着,按照时间先后顺序,抽取位置集合中的第1个元素和第2个元素,并将第1个元素作为第二眼部位置,及将第2个元素作为第一眼部位置;再接着,利用前一步骤确定出的第一眼部位置和第二眼部位置确定上述位置偏差量后,将第一眼部位置从位置集合中删除,以保障下一次从位置集合中抽取元素时不会抽取到已使用过/抽取过的元素;利用当前观测位置更新显示区域中的图像后,再次进行上述元素抽取的步骤,直至位置集合中仅包含有一个元素时,即,仅包含有前述第一位置(眼部终点位置)时,不再进行下一轮的抽取操作。
97.不难理解的是,相比于直接将当前时刻的眼部位置和上一时刻的眼部位置分别作为第一眼部位置和第二眼部位置的情况而言,显示模组在根据上述实施方式确定出的第一眼部位置和第二眼部位置来控制显示区域显示的图像时,显示模组将以更高的频率更新显示显示区域显示的图像。
98.也因此,即使显示模组中的摄像模组因硬件限制而未捕捉到上一时刻至当前时刻内用户的眼部位置变化,本技术实施方式中的显示模组亦能通过先验知识(即连续变化关系)模拟出上一时刻至当前时刻之内的眼部位置变化情况,进而,显示区域中的目标图像能随着眼部位置的不断变化而更新。
99.如此,本技术实施方式的显示模组能以更平滑/自然地形式完成显示区域中目标图像的调整,避免了直接采用当前时刻和上一时刻的眼部进行目标图像更新时可能出现更新过于剧烈的情况,从而进一步保障了用户的观测体验。
100.此外,需说明的是,本技术实施方式中的预设时间为可根据实际情况设置的内容,如在某些实施方式中,预设时间为上述“上一时刻”到上述“当前时刻”的时间;而在另一些实施方式中,预设时间为拍摄模组在正常工作时的任意1秒。
101.还需说明的是,本技术实施方式中的预设频率亦为可根据实际情况设置的内容,在某些实施方式中,预设频率为60hz。
102.以及,在某些实施方式中,图像样本中仅包含一个用户的眼部位置;而在另一些实施方式中,图像样本包含多个用户的眼部位置,每个眼部位置均与其所属的用户相对应/关联/绑定。
103.另外,本技术实施方式中的位置变化关系的获取/确定/计算方式亦为可根据实际情况设置的内容,如在某些实施方式中,上述基于所有图像样本,拟合预设时间内眼部位置的位置变化关系,包括:
104.基于每个图像样本中的眼部位置的横轴坐标,计算出第一斜率和第一截距,并基于第一斜率和第一截距确定出横轴位置变化关系;
105.基于每个图像样本中的眼部位置的纵轴坐标,计算出第二斜率和第二截距,并基于第二斜率和第二截距确定出纵轴位置变化关系;
106.基于纵轴变化关系和横轴变化关系得到位置变化关系。
107.也即,本技术实施方式将利用样本中包含各个图像样本中的横纵坐标,拟合出眼部位置的直线方程以描述眼部位置的变化情况/变化关系。
108.为更清楚地说明本技术提供的实施方式中,设图像样本的数量为60,60个图像样本分别为(x1,y1,z2),(x2,y2,z2)

(x60,y60,z60),横轴的第一斜率和第二截距分别为kx和bx,纵轴的第二斜率和第二截距分别为ky和by,则有:
[0109][0110]
如此,本技术使得眼部位置的位置变化关系能以较简单的方式确定,从而降低了显示模组的负载。
[0111]
在某个实例中,采集到的各个图像样本包含的眼部坐标的x轴坐标、y轴坐标及z轴坐标如表1所示。
[0112]
表1
[0113]
xyz02.882.560.22.25763.4450.71.92584.6230.92.08625.2530.922.1095.6630.992.19796.47861.22.54094.25961.42.96277.44581.483.1557.99851.53.20528.2568
[0114]
也因此,通过表1拟合得到的kx为1.0628,bx为0.082,ky为1.2026,by为0.852。
[0115]
可选的,为适配不同场景和用户,上述0140在本技术某些实施方式中具体包括:
[0116]
基于当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将目标三维模型映射至二维空间以得到更新后的目标图像;
[0117]
同时将更新后的目标图像对应的显示于左半区域和右半区域,以使得在当前观测位置能够观测到三维的图像。
[0118]
也即,本技术实施方式提供了参数自定义接口,以使得用户能根据自身所处场景(即近远截面信息)或自身生理特征(即视场角和瞳距)来调整显示模组,以使显示模组能基于用户自定义的参数来控制目标图像的显示。具体而言,在显示模组接收到用户自定义的视场角(field of view,fov)信息、瞳距(pupil distance,od)信息、近截面位置信息及远截面位置信息后,将根据上述4类信息来控制目标图像显示。
[0119]
不难理解的是,视场角信息表示人眼的视野范围。在通过特定设备(如可转动摄像头的机器人)模拟人眼时,视场角则表示特定设备的视野范围。
[0120]
还不难理解都是,瞳距表示人左右双眼的间距。
[0121]
又不难理解的是,近截面和远截面则分别表示以人眼/特定设备为中心,观测物体距离人眼/特定设备最近和最远的截面。为更清楚地说明本技术实施方式中近截面位置信息和远截面位置信息的含义,请参考图5,图5为本技术某些实施方式的应用场景示意。图5中,eye表示当前观测位置;np表示近截面,n表示近截面np至当前观测位置eye的距离;fp表示远截面,f表示远截面fp至当前观测位置eye的距离;p为待观测物体,p’为待观测物体p(透视)投影至近截面np的位置。
[0122]
不难理解的是,图3所示的场景下,用户在当前观测位置eye下将观测近截面np上的物体p’。
[0123]
还不难理解的是,图5所示场景下,待观测物体p(x,y,z)投影至近截面np的p’后,其坐标将由(x,y,z)变化为(-n*x/z,-n*y/z,-n)。
[0124]
可以想到的是,利用上述4类类型来进行生成能被观测为3d图像的2d图像的过程为可根据实际情况设置的内容,如在本技术某些实施方式中,上述基于当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将目标三维模型映射至
二维空间以得到更新后的目标图像,包括:
[0125]
将目标三维模型对应的第一像素矩阵进行模型变换,以将第一像素矩阵映射至世界坐标系,得到第二像素矩阵;
[0126]
对第二像素矩阵进行等值化处理,得到第三像素矩阵;
[0127]
基于当前观测位置及视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将第三像素矩阵映射至二维空间以得到更新后的目标图像。
[0128]
需说明的是,本技术实施方式中的目标图像为一个三维模型(即目标三维模型)映射至二维空间后而得到的图像。也因此,本技术实施方式将对目标三维模型进行模型变换(model transform)、观测变换(view transform)及投影变换(projection transform),以将局部三维空间下目标三维模型对应的第一像素矩阵映射为世界空间下的第二像素矩阵,再将第二像素矩阵世界空间依次映射至观测空间和裁剪空间。
[0129]
还需说明的是,本技术实施方式将第二像素矩阵映射为目标图像前,还将对第二像素矩阵进行等值化处理,以避免第二像素矩阵中的元素在投影至二维空间时可能出现的视场角畸变问题,从而保障目标三维模型投影后的形状正确。
[0130]
在某些实施方式中,本技术通过对第二像素矩阵进行正交投影以实现等值化处理。
[0131]
如此,本技术通过等值化处理,使得目标三维模型映射为目标图像后,其模型形状保持不变,从而保障了目标图像的真实性。
[0132]
可选的,在本技术某些实施方式中,上述基于当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将第三像素矩阵映射至二维空间以得到更新后的目标图像,包括:
[0133]
基于当前观测位置、视场角信息、近截面位置信息及远截面位置信息,将第三像素矩阵映射至裁剪空间,得到第四像素矩阵;
[0134]
基于瞳距信息,确定单眼视角偏差值;
[0135]
基于视场角信息和单眼视角偏差,确定第四像素矩阵对应于左半区域和右半区域的投影矩阵;
[0136]
基于第四像素矩阵与左半区域的投影矩阵的乘积以得到更新后的第一目标图像,并基于第四像素矩阵与右半区域的投影矩阵的乘积以得到更新后的第二目标图像。
[0137]
进而,上述同时将更新后的目标图像对应的显示于左半区域和右半区域,以使得在当前观测位置能够观测到三维的图像,包括:
[0138]
将更新后的第一目标图像显示于左半区域,并同时将更新后的第二目标图像显示于右半区域,以使得在当前观测位置能够观测到三维的图像。
[0139]
也即,将目标三维模型映射至裁剪空间以得到对应的第四像素矩阵后,为将第四像素矩阵合理地显示在显示区域的左半区域和右半区域内,本技术实施方式还通过瞳距和和视场角,确定用户单左右眼分别观测左半区域和右半区域的差异,即单眼视角偏差值。
[0140]
在某些实施方式中,单眼视角偏差值为瞳距的一半。示范性的,设瞳距为60mm,左右眼中间位置为原点,则左眼视角偏差值δloffset为-30mm,右眼视角偏差值δroffset为+30mm。
[0141]
在确定单眼视角偏差值后,本技术实施方式将利用单眼视角偏差值和人眼可见范
围(视场角),确定出第四像素矩阵在左半区域和右半区域的展示形式,以确保第四像素矩阵显示于/投影于左半区域和右半区域时,能完整且合理地显示。
[0142]
在某些实施方式中,投影矩阵tranmatri为:
[0143][0144]
式中,x、y及nearz分别表示单眼的视场角的三轴可见范围,nearz还表示图5中近截面np至当前观测位置eye的距离n;δoffset表示单眼视角偏差值。不难理解的是,矩阵的f指代数据类型为单精度浮点型float。
[0145]
由此,若需第四像素矩阵显示于显示区域,则将δloffset和δroffset分别赋值给δoffset以得到左半区域对应的投影矩阵tranmatri1和左半区域对应的投影矩阵tranmatri2后,将第四像素矩阵与tranmatri1的乘积结果(即更新后的第一目标图像)显示于左半区域,并将第四像素矩阵与tranmatri2的乘积结果(即更新后的第二目标图像)显示于右半区域,即完成目标图像的显示。
[0146]
如此,本技术使得单眼视角偏差值和投影矩阵的引入,使得用户的左右眼能正确地观测左半区域和右半区域中的目标图像,从而进一步保障了用户能在当前观测位置观测到三维的目标图像。
[0147]
此外,可以理解的是,若第四像素矩阵与tranmatri1(或tranmatri2)的乘积结果的矩阵大小小于左半区域(或右半区域)的分辨率,则可通过插值法对上述乘积结果进行插值处理,以保证目标图像能完整地显示于左半区域(或右半区域)。
[0148]
另外,还需说明的是,上述投影矩阵tranmatri中x和y的确定方式为可根据实际情况设置的内容,如在某些实施方式中,x和y的计算公式如下:
[0149][0150]
式中,fov表示视场角;clamp()表示对括号内的参数进行夹值处理以将参数限定在预设范围内;width和height分别表示显示区域的分辨率宽度和高度。
[0151]
在某些实施方式中,为确保不同显示模组均能使用本技术提供的实施方式,故上述clamp()对应的夹值范围为100至10000,从而使得1至8k分辨率的显示模组均能通过如上公式计算出x和y。
[0152]
可选的,若将本技术提供的实施方式应用于包含人眼模拟设备(如摄像头)的机器人模拟试验中,则在计算出当前观测位置后,可通过下述公式计算人眼模拟设备的偏转角度sigma,以使人眼模拟设备能将观测物体保持在视野中央。
[0153]
sigma=acos(dot(pf,(p(x,y,z)+δvectorfinal))/(norm(pf)*norm(p(x,y,z)
[0154]
+δvectorfinal)))
[0155]
式中,pf可理解为由第一眼部位置指向远截面的向量,p可理解为第一眼部位置。
[0156]
可选的,在某些实施方式中,若未接收到视场角信息、瞳距信息、近截面位置信息
及远截面位置信息中的一个或多个,则本技术将利用默认值来完成目标图像的显示。
[0157]
在某些实施方式中,经发明人的试验验证,确定出人眼的可见范围为60至90度,而视场角fov取60至90度时造成的拍摄角度偏差如表2所示,即:
[0158]
表2
[0159]
fov拍摄角度偏差901.852851.961802.083752.225702.381652.564602.778453.704
[0160]
由此,因视场角大小与拍摄角度偏差成负相关,故在某些实施方式中,当显示模组未接收到视场角信息时,视场角将被赋值为90度。而在另一些实施方式中,当显示模组未接收到视场角信息时,视场角将被赋值为60至90度中的任意一个角度值。
[0161]
在某些实施方式中,经发明人的试验,瞳距取60mm左右时,显示区域所显示的图像如图6、7、8、9及10所示。其中,图6、7、8、9及10分别示出了瞳距取(60-5.25000005)mm、(60-2.25000005)mm、60mm、(60+2.25000005)mm及(60+5.25000005)mm时,显示区域的显示情况。
[0162]
也即,经实验验证,确定瞳距取60mm时能确保显示区域的目标图像有明显的三维效果,故在某些实施方式中,当显示模组未接收到瞳距信息时,瞳距可以被赋值为60mm。而在其他实施方式中,当显示模组未接收到瞳距信息时,瞳距被赋值为(60-5.25000005)mm、(60-2.25000005)mm、60mm、(60+2.25000005)mm及(60+5.25000005)mm中的任意一个。
[0163]
在某些实施方式中,经发明人实验,近截面与观测点的距离n取-0.03(即图3中z轴负方向0.03个单位距离)左右时,显示区域的显示效果如图11、12、13、14及15所示。其中,图11、12、13、14及15分别表示近截面与观测点的距离n取-1.0、-0.05、-0.03、-0.01及0.01时的显示区域的显示情况。
[0164]
也即,经实验验证,确定近截面与观测点的距离n取-0.03时,用户不易产生3d晕眩感且能较清楚地观测到三维的目标图像,故在某些实施方式中,当显示模组未接收到近截面信息时,近截面与观测点的距离n将被赋值为-0.03。而在另一些实施方式中,近截面与观测点的距离n将被赋值为-1.0、-0.05、-0.03、-0.01及0.01中的任意一个。
[0165]
参考图16,本技术还提供一种图像的三维显示装置200,包括:
[0166]
获取模块210,用于获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取用户在上一时刻的眼部位置作为第二眼部位置;
[0167]
确定模块220,用于基于第一眼部位置和第二眼部位置,确定位置偏差量;
[0168]
校正模块230,用于基于位置偏差量对第一眼部位置进行校正,得到当前观测位置;
[0169]
更新模块240,用于基于当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在当前观测位置能够观测到三维的图
像。
[0170]
在某些实施方式中,目标图像的分辨率大小与左半区域的分辨率大小相同,左半区域的分辨率高度和右半区域的分辨率高度均与显示区域的分辨率高度相同,左半区域的分辨率宽度和右半区域的分辨率宽度均为显示区域的分辨率宽度的一半。
[0171]
在某些实施方式中,确定模块220还用于基于第一眼部位置和第二眼部位置的差值,得到位置偏差量。
[0172]
在某些实施方式中,校正模块230,包括:
[0173]
第一计算子模块,用于基于位置偏差量和预设的偏差修正量的差值,得到目标修正量;
[0174]
第二计算子模块,用于基于第一眼部位置和目标修正量的和值,得到当前观测位置。
[0175]
在某些实施方式中,第一计算子模块,包括:
[0176]
差值计算单元,用于基于位置偏差量和偏差修正量的差值,得到候选修正量;
[0177]
乘积计算单元,用于基于候选修正量和偏差修正量的乘积,得到目标修正量。
[0178]
在某些实施方式中,本技术的图像的三维显示装置200还包括:
[0179]
样本获取模块,用于获取预设时间内以预设频率拍摄的包含眼部位置的图像样本,其中,不同的图像样本中的眼部位置不同;
[0180]
拟合模块,用于基于所有图像样本,拟合预设时间内眼部位置的位置变化关系。
[0181]
进而,获取模块210,包括:
[0182]
位置获取子模块,用于获取用户在当前时刻的眼部位置以得到第一位置,并获取用户的在上一时刻的眼部位置作为第二位置;
[0183]
中间位置得到子模块,用于基于位置变化关系,确定上一时刻到当前时刻间的多个中间位置;
[0184]
合并子模块,用于将第二位置、多个中间位置及第一位置按照时间顺序合并以得到位置集合;
[0185]
抽取子模块,用于按照时间顺序抽取将位置集合中相邻的两个元素,并将两个元素中的前一个作为第二眼部位置,后一个作为第一眼部位置;
[0186]
删除子模块,用于执行基于第一眼部位置和第二眼部位置,确定位置偏差量的步骤,并将第二眼部位置从位置集合中删除。
[0187]
进而,更新模块240,还包括:
[0188]
返回子模块,用于回到按照时间顺序抽取将位置集合中相邻的两个元素,并将两个元素中的前一个作为第二眼部位置,后一个作为第一眼部位置的步骤,直至位置集合未包含有两个元素。
[0189]
在某些实施方式中,拟合子模块,包括:
[0190]
第一关系计算单元,用于基于每个图像样本中的眼部位置的横轴坐标,计算出第一斜率和第一截距,并基于第一斜率和第一截距确定出横轴位置变化关系;
[0191]
第二关系计算单元,用于基于每个图像样本中的眼部位置的纵轴坐标,计算出第二斜率和第二截距,并基于第二斜率和第二截距确定出纵轴位置变化关系;
[0192]
变化关系得到单元,用于基于纵轴变化关系和横轴变化关系得到位置变化关系。
[0193]
在某些实施方式中,更新模块240,包括:
[0194]
映射子模块,用于基于当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将目标三维模型映射至二维空间以得到更新后的目标图像;
[0195]
显示子模块,用于同时将更新后的目标图像对应的显示于左半区域和右半区域,以使得在当前观测位置能够观测到三维的图像。
[0196]
在某些实施方式中,所映射子模块,包括:
[0197]
模型变换单元,用于将目标三维模型对应的第一像素矩阵进行模型变换,以将第一像素矩阵映射至世界坐标系,得到第二像素矩阵;
[0198]
等值化处理单元,用于对第二像素矩阵进行等值化处理,得到第三像素矩阵;
[0199]
转换单元,用于基于当前观测位置及视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将第三像素矩阵映射至二维空间以得到更新后的目标图像。
[0200]
在某些实施方式中,转换单元,包括:
[0201]
空间映射子单元,用于基于当前观测位置、视场角信息、近截面位置信息及远截面位置信息,将第三像素矩阵映射至裁剪空间,得到第四像素矩阵;
[0202]
偏差值确定子单元,用于基于瞳距信息,确定单眼视角偏差值;
[0203]
矩阵确定子单元,用于基于视场角信息和单眼视角偏差,确定第四像素矩阵对应于左半区域和右半区域的投影矩阵;
[0204]
图像得到子单元,用于基于第四像素矩阵与左半区域的投影矩阵的乘积以得到更新后的第一目标图像,并基于第四像素矩阵与右半区域的投影矩阵的乘积以得到更新后的第二目标图像。
[0205]
进而,显示子模块还用于将更新后的第一目标图像显示于左半区域,并同时将更新后的第二目标图像显示于右半区域,以使得在当前观测位置能够观测到三维的图像。
[0206]
本技术实施方式提供的图像的三维显示装置200能够实现上述图像的三维显示方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0207]
本技术还提供一种显示模组,显示模组包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,实现本技术的图像的三维显示方法。
[0208]
本技术还提供一种包含计算机程序的计算机可读存储介质。当计算机程序被一个或多个处理器执行时,使得一个或多个处理器执行本技术的图像的三维显示方法。
[0209]
在本说明书的描述中,参考术语“某些实施方式”、“一个例子中”、“示例地”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0210]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0211]
尽管上面已经示出和描述了本技术的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施方式进行变化、修改、替换和变型。

技术特征:
1.一种图像的三维显示方法,其特征在于,所述方法包括:获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取所述用户在上一时刻的眼部位置作为第二眼部位置;基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量;基于所述位置偏差量对所述第一眼部位置进行校正,得到当前观测位置;基于所述当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在所述当前观测位置能够观测到三维的图像。2.根据权利要求1所述的图像的三维显示方法,其特征在于,所述目标图像的分辨率大小与所述左半区域的分辨率大小相同,所述左半区域的分辨率高度和所述右半区域的分辨率高度均与所述显示区域的分辨率高度相同,所述左半区域的分辨率宽度和所述右半区域的分辨率宽度均为所述显示区域的分辨率宽度的一半。3.根据权利要求1所述的图像的三维显示方法,其特征在于,所述基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量,包括:基于所述第一眼部位置和所述第二眼部位置的差值,得到所述位置偏差量。4.根据权利要求1所述的图像的三维显示方法,其特征在于,所述基于所述位置偏差量对所述第一眼部位置进行校正,得到当前观测位置,包括:基于所述位置偏差量和预设的偏差修正量的差值,得到目标修正量;基于所述第一眼部位置和所述目标修正量的和值,得到所述当前观测位置。5.根据权利要求4所述的图像的三维显示方法,其特征在于,所述基于所述位置偏差量和预设的偏差修正量的差值,得到目标修正量,包括:基于所述位置偏差量和所述偏差修正量的差值,得到候选修正量;基于所述候选修正量和所述偏差修正量的乘积,得到所述目标修正量。6.根据权利要求1所述的图像的三维显示方法,其特征在于,所述方法还包括:获取预设时间内以预设频率拍摄的包含眼部位置的图像样本,其中,不同的所述图像样本中的所述眼部位置不同;基于所有所述图像样本,拟合所述预设时间内所述眼部位置的位置变化关系;所述获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取所述用户在上一时刻的眼部位置作为第二眼部位置,包括:获取所述用户在所述当前时刻的眼部位置以得到第一位置,并获取所述用户的在所述上一时刻的眼部位置作为第二位置;基于所述位置变化关系,确定所述上一时刻到所述当前时刻间的多个中间位置;将所述第二位置、所述多个中间位置及所述第一位置按照时间顺序合并以得到位置集合;按照所述时间顺序抽取将所述位置集合中相邻的两个元素,并将所述两个元素中的前一个作为所述第二眼部位置,后一个作为所述第一眼部位置;执行所述基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量的步骤,并将所述第二眼部位置从所述位置集合中删除;所述基于所述当前观测位置,对显示区域的左半区域中的目标图像和右半区域中的所述目标图像均进行更新,以使得在所述当前观测位置能够观测到三维的所述目标图像之
后,还包括:回到所述按照所述时间顺序抽取将所述位置集合中相邻的两个元素,并将所述两个元素中的前一个作为所述第二眼部位置,后一个作为所述第一眼部位置的步骤,直至所述位置集合未包含有两个元素。7.根据权利要求6所述的图像的三维显示方法,其特征在于,所述基于所有所述图像样本,拟合所述预设时间内所述眼部位置的位置变化关系,包括:基于每个所述图像样本中的所述眼部位置的横轴坐标,计算出第一斜率和第一截距,并基于所述第一斜率和所述第一截距确定出横轴位置变化关系;基于每个所述图像样本中的所述眼部位置的纵轴坐标,计算出第二斜率和第二截距,并基于所述第二斜率和所述第二截距确定出纵轴位置变化关系;基于所述纵轴变化关系和所述横轴变化关系得到所述位置变化关系。8.根据权利要求1所述的图像的三维显示方法,其特征在于,所述基于所述当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在所述当前观测位置能够观测到三维的图像,包括:基于所述当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将目标三维模型映射至二维空间以得到更新后的所述目标图像;同时将所述更新后的所述目标图像对应的显示于所述左半区域和所述右半区域,以使得在所述当前观测位置能够观测到三维的图像。9.根据权利要求8所述的图像的三维显示方法,其特征在于,所述基于所述当前观测位置及接收到的视场角信息、瞳距信息、近截面位置信息及远截面位置信息,将目标三维模型映射至二维空间以得到更新后的所述目标图像,包括:将所述目标三维模型对应的第一像素矩阵进行模型变换,以将所述第一像素矩阵映射至世界坐标系,得到第二像素矩阵;对所述第二像素矩阵进行等值化处理,得到第三像素矩阵;基于所述当前观测位置及所述视场角信息、所述瞳距信息、所述近截面位置信息及所述远截面位置信息,将所述第三像素矩阵映射至所述二维空间以得到所述更新后的所述目标图像。10.根据权利要求9所述的图像的三维显示方法,其特征在于,所述基于所述当前观测位置及所述视场角信息、所述瞳距信息、所述近截面位置信息及所述远截面位置信息,将所述第三像素矩阵映射至所述二维空间以得到所述更新后的所述目标图像,包括:基于所述当前观测位置、所述视场角信息、所述近截面位置信息及所述远截面位置信息,将所述第三像素矩阵映射至裁剪空间,得到第四像素矩阵;基于所述瞳距信息,确定单眼视角偏差值;基于所述视场角信息和所述单眼视角偏差,确定所述第四像素矩阵对应于所述左半区域和所述右半区域的投影矩阵;基于所述第四像素矩阵与所述左半区域的所述投影矩阵的乘积以得到更新后的第一目标图像,并基于所述第四像素矩阵与所述右半区域的所述投影矩阵的乘积以得到更新后的第二目标图像;所述同时将所述更新后的所述目标图像对应的显示于所述左半区域和所述右半区域,
以使得在所述当前观测位置能够观测到三维的图像,包括:将所述更新后的第一目标图像显示于所述左半区域,并同时将所述更新后的第二目标图像显示于所述右半区域,以使得在所述当前观测位置能够观测到三维的图像。11.一种图像的三维显示装置,其特征在于,所述装置包括:获取模块,用于获取用户在当前时刻的眼部位置以作为第一眼部位置,并获取所述用户在上一时刻的眼部位置作为第二眼部位置;确定模块,用于基于所述第一眼部位置和所述第二眼部位置,确定位置偏差量;校正模块,用于基于所述位置偏差量对所述第一眼部位置进行校正,得到当前观测位置;更新模块,用于基于所述当前观测位置,同时对显示区域的左半区域中的目标图像和右半区域中的目标图像进行对应的更新,以使得在所述当前观测位置能够观测到三维的图像。12.一种显示模组,其特征在于,所述显示模组包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1-10任一项所述的方法。13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,实现权利要求1-10任意一项所述的方法。

技术总结
本申请提供一种图像的三维显示方法、装置、显示模组及可读存储介质,方法包括:获取到当前时刻下用户的眼部位置以作为第一眼部位置,并获取用户在上一时刻的眼部位置作为第二眼部位置;确定第一眼部位置和第二眼部位置的位置偏差量;通过位置偏差量对第一眼部位置进行校正以得到当前观测位置;利用当前观测位置同时对显示区域的左半区域显示的目标图像和右半区域显示的目标图像均进行对应更新,以使用户能在当前观测位置根据左半区域和右半区域显示的内容来观测到三维的目标图像。如此,本申请使得用户眼部位置改变后,显示模组能根据变化后的当前观测位置对应地调整显示区域中的图像,确保用户能继续通过肉眼观测到三维图像。图像。图像。


技术研发人员:朱丹枫 张哲 陈乃川 姜苏珈 陈明武
受保护的技术使用者:京东方科技集团股份有限公司
技术研发日:2023.04.28
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐