CN103744518A - 立体交互方法及其显示装置和系统 - Google Patents
立体交互方法及其显示装置和系统 Download PDFInfo
- Publication number
- CN103744518A CN103744518A CN201410042145.8A CN201410042145A CN103744518A CN 103744518 A CN103744518 A CN 103744518A CN 201410042145 A CN201410042145 A CN 201410042145A CN 103744518 A CN103744518 A CN 103744518A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- operation rod
- interactive operation
- screen
- dimensional interactive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 128
- 230000003993 interaction Effects 0.000 title claims abstract description 27
- 230000033001 locomotion Effects 0.000 claims abstract description 94
- 230000008569 process Effects 0.000 claims abstract description 84
- 230000008859 change Effects 0.000 claims abstract description 28
- 230000002452 interceptive effect Effects 0.000 claims description 386
- 239000007787 solid Substances 0.000 claims description 90
- 238000007373 indentation Methods 0.000 claims description 66
- 238000006243 chemical reaction Methods 0.000 claims description 48
- 230000000875 corresponding effect Effects 0.000 description 41
- 230000009466 transformation Effects 0.000 description 38
- 238000004422 calculation algorithm Methods 0.000 description 28
- 239000011159 matrix material Substances 0.000 description 26
- 238000010586 diagram Methods 0.000 description 21
- 230000000694 effects Effects 0.000 description 14
- 230000004927 fusion Effects 0.000 description 12
- 210000003128 head Anatomy 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 11
- 238000002156 mixing Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000000007 visual effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000002604 ultrasonography Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 210000001525 retina Anatomy 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000005684 electric field Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 101100129500 Caenorhabditis elegans max-2 gene Proteins 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 210000004204 blood vessel Anatomy 0.000 description 2
- 238000013016 damping Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 210000005036 nerve Anatomy 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 238000002161 passivation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000010612 desalination reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003331 infrared imaging Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003447 ipsilateral effect Effects 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- IBDVBNUJEGRVQN-RHNLGMIQSA-N persin Chemical compound CCCCC\C=C/C\C=C/CCCCCCCC(=O)C[C@@H](O)COC(C)=O IBDVBNUJEGRVQN-RHNLGMIQSA-N 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 210000000518 sarcolemma Anatomy 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000010008 shearing Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种立体交互方法,包括:通过立体交互操作棒与立体显示设备的屏幕上立体显示的被操作对象进行立体交互;获取观看者的位置信息,并根据所述位置信息的变化情况,对所述立体交互的过程执行基于运动视差的立体调整显示。本发明还提出了一种立体交互显示装置和一种立体交互系统。通过本发明的技术方案,可以在基于立体交互操作棒的立体交互过程中,实现对交互场景的基于运动视差的立体调整显示,从而使用户获得更加真实、丰富的交互操作体验。
Description
技术领域
本发明涉及立体显示技术领域,具体而言,涉及到一种立体交互方法、一种立体交互显示装置和一种立体交互系统。
背景技术
在传统的人机交互系统的各种解决方案中,大都是基于阴影、近大远小等透视效果来近似模拟一种立体的感觉,但其本质上却仍然是平面的2D显示。
随着3D显示技术的发展,相关技术中提供了一种更为直观的3D(下称立体)交互方式。如图1所示,用户在通过立体交互操作棒102进行操作时,在3D显示屏幕200中显示出对应于立体交互操作棒102的虚拟立体操作棒104,使得用户可以通过虚拟立体操作棒104与3D显示屏幕200显示出来的立体对象202进行立体交互。比如图1中显示出的立体对象202是“凹进”3D显示屏幕200的,则用户仿佛将立体交互操作棒102“伸入”3D显示屏幕200中(实际上是通过虚拟立体操作棒104),对立体对象202进行操作,比如将其从初始位置302推动至目标位置304。
如图2所示,在上述立体交互过程中,由于用户需要对立体交互操作棒102进行控制,使得用户观看虚拟立体操作棒104和立体对象202之间的立体交互状态时的视线,可能被用户自己的手106遮挡住,使得用户需要将手106和立体交互操作棒102移开以避免对视线的遮挡,但这却可能使得虚拟立体操作棒104从3D显示屏幕200中消失,用户将无法查看到虚拟立体操作棒104和立体对象202之间的立体交互状态。当然,这种立体交互操作时的问题也出现在立体对象202“凸出”3D显示屏幕200显示的时候。
因此,如何使得用户在执行对立体对象的立体交互操作过程中,既能够避免视线被遮挡,又能够使立体交互操作持续进行,成为目前亟待解决的技术问题。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一个目的在于提出了一种立体交互方法。
本发明的另一个目的在于提出了一种立体交互显示装置。
本发明的又一个目的在于提出了一种立体交互系统。
为实现上述目的,根据本发明的第一方面的实施例,提出了一种立体交互方法,包括:通过立体交互操作棒与立体显示设备的屏幕上立体显示的被操作对象进行立体交互;获取观看者的位置信息,并根据所述位置信息的变化情况,对所述立体交互的过程执行基于运动视差的立体调整显示。
在该技术方案中,在通过立体交互操作棒与被操作对象进行立体交互的过程中,通过结合运动视差的显示技术,使得在发生如用户视线被立体交互操作棒或手部等遮挡的情况时,仅需要改变观看位置,即可基于视差变化来调整屏幕的显示效果,使得用户能够从其他角度观看到先前被遮挡的图像部分,方便用户在不中断操作的情况下,完成对被操作对象的立体交互操作。
在一种实施方式下,优选地,可以在所述立体交互操作棒未接触所述立体显示设备的屏幕时,由所述立体交互操作棒直接与立体显示于所述立体显示设备的屏幕前方的所述被操作对象实现立体交互。
其中,当被操作对象被立体显示于“屏幕前方”时,其视觉效果即“凸出”屏幕,因而能够通过立体交互操作棒来实现直接的立体交互,并进而通过基于运动视差的立体调整显示,使得用户能够通过立体交互操作棒实现持续、准确的立体交互。
在另一种实施方式下,优选地,在所述立体交互操作棒接触所述立体显示设备的屏幕时,所述屏幕上显示出对应于所述立体交互操作棒的虚拟立体操作棒,根据所述立体交互操作棒接收到的控制指令,控制所述虚拟立体操作棒与所述被操作对象实现立体交互。
其中,被操作对象立体显示于屏幕内部,即“凹进”屏幕,则通过在屏幕中显示出虚拟立体操作棒,使得用户可以通过向立体交互操作棒发出指令,以实现对虚拟立体操作棒的控制;而通过虚拟立体操作棒与被操作对象进行立体交互时,令用户产生通过立体交互操作棒直接与被操作对象进行立体交互的错觉,有助于提升用户的操作体验。
另外,根据本发明上述实施例的立体交互方法,还可以具有如下附加的技术特征:
根据本发明的一个实施例,优选地,还包括:根据所述被操作对象所处的立体显示场景,选用对应的立体模型以作为所述虚拟立体操作棒。
在该技术方案中,通过选用与立体显示场景相对应的虚拟立体操作棒,使得用户可以基于该虚拟立体操作棒,实现与立体显示场景中的被操作对象之间更为真实的立体交互过程。
具体地,比如当显示场景为“手术室”时,则可以将“手术刀”的立体模型作为虚拟立体操作棒,以实现虚拟的手术过程;当显示场景为“足球场”时,则可以将“左腿”和“右腿”的立体模型作为虚拟立体操作棒,以实现虚拟的足球运动等。作为一种较为优选的实施例,当所述立体交互操作棒接触所述屏幕且发生缩进时,所述虚拟立体操作棒对应于所述立体交互操作棒的缩进部分。
在该技术方案中,立体交互操作棒可以设置为可缩进的形式,则当用户使用立体交互操作棒接触屏幕且使得立体交互操作棒发生缩进时,通过在屏幕上显示出对应于该缩进部分的虚拟立体操作棒,使得用户会产生将立体交互操作棒“伸入”屏幕中的错觉,并认为是用户自己通过立体交互操作棒与被操作对象之间进行交互,从而有助于增强操作体验。
其中,虚拟立体操作棒与立体交互操作棒的缩进部分之间的对应关系可以体现在:虚拟立体操作棒的长度可以与缩进部分的长度实时相等,让用户觉得它们还是一个整体,与没有缩进时的立体交互操作棒一样;用户在改变立体交互操作棒的方位角、与屏幕的接触位置等参数时,虚拟立体操作棒的姿态能够与立体交互操作棒的上述参数相配合等。
根据本发明的另一个实施例,优选地,还包括:分别建立基于所述立体交互操作棒的载体坐标系,和基于所述屏幕的屏幕坐标系;确定所述载体坐标系和所述屏幕坐标系之间的转换关系,以用于生成所述立体交互操作棒和/或虚拟立体操作棒在所述屏幕坐标系中的三维空间位置坐标信息;根据所述三维空间位置坐标信息,执行所述立体交互操作棒和/或所述虚拟立体操作棒与所述被操作对象的立体交互。
基于上述的姿态融合与统一,能够将立体交互操作棒的姿态变化转换至屏幕中,从而使得立体交互操作棒的三维空间位置坐标信息与被操作对象的三维空间位置坐标信息是基于同一标准的,即都是基于屏幕坐标系下的数据,因而能够根据该三维空间位置坐标信息,实现立体交互操作棒和/或虚拟立体操作棒与被操作对象之间的准确立体交互。
其中,被操作对象可以位于屏幕内部或外部,即“凹进”屏幕或“凸出”屏幕。对于被操作对象位于屏幕内部的情况,则可以通过虚拟立体操作棒与其进行立体交互;而对于被操作对象位于屏幕外部的情况,则可以通过立体交互操作棒直接与其进行立体交互;而针对同时存在位于屏幕内部和外部的被操作对象的情况,则可以同时通过虚拟立体操作棒和立体交互操作棒与其进行立体交互。
优选地,确定所述载体坐标系和所述屏幕坐标系之间的转换关系的过程包括:计算所述屏幕坐标系相对于任一坐标系的第一转换系数,以及所述载体坐标系相对于所述任一坐标系的第二转换系数;根据所述第一转换系数和所述第二转换系数,确定所述转换关系。
在该技术方案中,以“任一坐标系”为转换中介,实现对载体坐标系和屏幕坐标系之间的转换,从而能够得到立体交互操作棒与屏幕上被操作对象之间的转换关系,确保实现准确的姿态融合与统一。
具体地,在对“任一坐标系”进行选取时,可以选取更容易实现与载体坐标系和屏幕坐标系进行转换的坐标系。作为一种较为优选的实施方式,比如可以选用基于地面的地理坐标系。
优选地,生成所述三维空间位置坐标信息的过程包括:在所述立体交互操作棒和/或所述虚拟立体操作棒上选择至少一个特征点;利用所述转换关系,生成所述至少一个特征点在所述屏幕坐标系中的位置信息;以及根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
在该技术方案中,通过选取特征点,使得在将立体交互操作棒或虚拟立体操作棒的三维空间位置坐标信息融合至屏幕坐标系的过程中,仅对少量的特征点进行坐标转换即可,而其他非特征点的坐标均可以基于特征点的坐标信息进行相对位置转换,从而简化了对立体交互操作棒或虚拟立体操作棒进行姿态融合与统一的过程,降低了坐标转换过程中的计算量,尤其是在立体交互操作棒或虚拟立体操作棒与被操作对象进行立体交互的过程中,有助于避免画面卡顿、延迟,使得立体交互过程更流畅。
优选地,在所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及在所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
在该技术方案中,由于在立体交互操作棒未接触屏幕时,立体交互操作棒的任一端的顶部与屏幕之间的距离往往是最远或最近的,因而以该顶部为特征点,有助于进一步降低非特征点在坐标变换过程中的复杂度。
而在立体交互操作棒已接触屏幕时,特别是虚拟立体操作棒与立体交互操作棒的缩进部分相配合的情况下,通过将接触点设置为特征点,有助于简化对虚拟立体操作棒的姿态坐标的计算过程,从而提升交互过程的流畅度。
根据本发明第二方面的实施例,提出了一种立体交互显示装置,包括:立体显示单元,用于在立体显示设备的屏幕上立体显示出被操作对象;位置获取单元,用于获取观察者的位置信息;显示调整单元,用于根据所述位置信息的变化情况,对所述立体交互操作棒与所述被操作对象的立体交互的过程执行基于运动视差的立体调整显示。
在该技术方案中,在通过立体交互操作棒与被操作对象进行立体交互的过程中,通过结合运动视差的显示技术,使得在发生如用户视线被立体交互操作棒或手部等遮挡的情况时,仅需要改变观看位置,即可基于视差变化来调整屏幕的显示效果,使得用户能够从其他角度观看到先前被遮挡的图像部分,方便用户在不中断操作的情况下,完成对被操作对象的立体交互操作。
优选地,所述立体显示单元用于:在所述立体显示设备的屏幕前方显示所述被操作对象,以由所述立体交互操作棒直接与所述被操作对象实现立体交互,和/或在所述立体交互操作棒接触所述屏幕且发生缩进时,显示出对应于所述立体交互操作棒的缩进部分的所述虚拟立体操作棒及所述虚拟立体操作棒与所述被操作对象的立体交互过程。
其中,当被操作对象被立体显示于“屏幕前方”时,其视觉效果即“凸出”屏幕,因而能够通过立体交互操作棒来实现直接的立体交互,并进而通过基于运动视差的立体调整显示,使得用户能够通过立体交互操作棒实现持续、准确的立体交互。
而当被操作对象立体显示于屏幕内部时,即“凹进”屏幕,则通过在屏幕中显示出虚拟立体操作棒,使得用户可以通过向立体交互操作棒发出指令,以实现对虚拟立体操作棒的控制;而通过虚拟立体操作棒对被操作对象进行立体交互时,令用户产生通过立体交互操作棒直接与被操作对象进行立体交互的错觉,有助于提升用户的操作体验。
另外,根据本发明上述实施例的立体交互显示装置,还可以具有如下附加的技术特征:
根据本发明的一个实施例,优选地,还包括:模型选择单元,用于根据所述被操作对象所处的立体显示场景,选用对应的立体模型以作为所述虚拟立体操作棒。
在该技术方案中,通过选用与立体显示场景相对应的虚拟立体操作棒,使得用户可以基于该虚拟立体操作棒,实现与立体显示场景中的被操作对象之间更为真实的立体交互过程。
具体地,比如当显示场景为“手术室”时,则可以将“手术刀”的立体模型作为虚拟立体操作棒,以实现虚拟的手术过程;当显示场景为“足球场”时,则可以将“左腿”和“右腿”的立体模型作为虚拟立体操作棒,以实现虚拟的足球运动等。
作为一种较为优选的实施例,所述立体显示单元用于:在所述立体交互操作棒接触所述屏幕且发生缩进的情况下,显示对应于所述立体交互操作棒的缩进部分的所述虚拟立体操作棒。
在该技术方案中,立体交互操作棒可以设置为可缩进的形式,则当用户使用立体交互操作棒接触屏幕且使得立体交互操作棒发生缩进时,通过在屏幕上显示出对应于该缩进部分的虚拟立体操作棒,使得用户会产生将立体交互操作棒“伸入”屏幕中的错觉,并认为是用户自己通过立体交互操作棒与被操作对象之间进行交互,从而有助于增强操作体验。
其中,虚拟立体操作棒与立体交互操作棒的缩进部分之间的对应关系可以体现在:虚拟立体操作棒的长度可以与缩进部分的长度实时相等,让用户觉得它们还是一个整体,与没有缩进时的立体交互操作棒一样;用户在改变立体交互操作棒的方位角、与屏幕的接触位置等参数时,虚拟立体操作棒的姿态能够与立体交互操作棒的上述参数相配合等。
根据本发明的另一个实施例,优选地,还包括:位置确定单元,用于建立基于所述屏幕的屏幕坐标系,并根据所述屏幕坐标系与基于所述立体交互操作棒的载体坐标系之间的转换关系,生成所述立体交互操作棒和/或虚拟立体操作棒在所述屏幕坐标系中的三维空间位置坐标信息;交互执行单元,用于根据所述三维空间位置坐标信息,执行所述立体交互操作棒和/或所述虚拟立体操作棒与所述被操作对象的立体交互。
基于上述的姿态融合与统一,能够将立体交互操作棒的姿态变化转换至屏幕中,从而使得立体交互操作棒的三维空间位置坐标信息与被操作对象的三维空间位置坐标信息是基于同一标准的,即都是基于屏幕坐标系下的数据,因而能够根据该三维空间位置坐标信息,实现立体交互操作棒或虚拟立体操作棒与被操作对象之间的准确立体交互。
其中,被操作对象可以位于屏幕内部或外部,即“凹进”屏幕或“凸出”屏幕。对于被操作对象位于屏幕内部的情况,则可以通过虚拟立体操作棒与其进行立体交互;而对于被操作对象位于屏幕外部的情况,则可以通过立体交互操作棒与其进行立体交互;而针对同时存在位于屏幕内部和外部的被操作对象的情况,则可以同时通过虚拟立体操作棒和立体交互操作棒与其进行立体交互。
优选地,所述位置确定单元用于:计算所述屏幕坐标系相对于任一坐标系的第一转换系数,并根据所述第一转换系数和所述载体坐标系相对于所述任一坐标系的第二转换系数,确定所述转换关系。
在该技术方案中,以“任一坐标系”为转换中介,实现对载体坐标系和屏幕坐标系之间的转换,从而能够得到立体交互操作棒与屏幕上被操作对象之间的转换关系,确保实现准确的姿态融合与统一。
具体地,在对“任一坐标系”进行选取时,可以选取更容易实现与载体坐标系和屏幕坐标系进行转换的坐标系。作为一种较为优选的实施方式,比如可以选用基于地面的地理坐标系。
优选地,所述位置确定单元用于:利用所述转换关系,生成所述立体交互操作棒和/或所述虚拟立体操作棒上的至少一个特征点在所述屏幕坐标系中的位置信息,并根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
在该技术方案中,通过选取特征点,使得在将立体交互操作棒或虚拟立体操作棒的三维空间位置坐标信息融合至屏幕坐标系的过程中,仅对少量的特征点进行坐标转换即可,而其他非特征点的坐标均可以基于特征点的坐标信息进行相对位置转换,从而简化了对立体交互操作棒或虚拟立体操作棒进行姿态融合与统一的过程,降低了坐标转换过程中的计算量,尤其是在立体交互操作棒或虚拟立体操作棒与被操作对象进行立体交互的过程中,有助于避免画面卡顿、延迟,使得立体交互过程更流畅。
优选地,在所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及在所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
在该技术方案中,由于在立体交互操作棒未接触屏幕时,立体交互操作棒的任一端的顶部与屏幕之间的距离往往是最远或最近的,因而以该顶部为特征点,有助于进一步降低非特征点在坐标变换过程中的复杂度。
而在立体交互操作棒已接触屏幕时,特别是虚拟立体操作棒与立体交互操作棒的缩进部分相配合的情况下,通过将接触点设置为特征点,有助于简化对虚拟立体操作棒的姿态坐标的计算过程,从而提升交互过程的流畅度。
根据本发明的第三方面的实施例,还提出了一种立体交互系统,包括:立体交互操作棒;以及如上述技术方案中任一项所述的立体交互显示装置。
通过以上技术方案,可以在基于立体交互操作棒的立体交互过程中,实现对交互场景的运动视差显示,从而使用户获得更加真实、丰富的交互操作体验。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1和图2示出了相关技术中通过操作棒与立体显示对象进行交互的示意图;
图3示出了根据本发明的一个实施例的立体交互方法的示意流程图;
图4示出了根据本发明的一个实施例的对基于操作棒的立体交互过程进行运动视差显示的示意图;
图5A示出了根据本发明的一个实施例的立体交互操作棒的结构示意图;
图5B示出了根据本发明的一个实施例的立体交互操作棒中各单元的连接示意图;
图6示出了根据本发明的一个实施例的用于实现立体交互方法的功能模块的结构示意图;
图7A示出了根据本发明的一个实施例的实现姿态坐标融合处理的示意图;
图7B示出了根据本发明的另一个实施例的实现姿态坐标融合处理的示意图;
图8示出了根据本发明的一个实施例的对立体交互操作棒进行姿态坐标融合处理的流程示意图;
图9示出了根据本发明的一个实施例的针对交互场景来确定虚拟立体操作棒的显示模型的示意图;
图10示出了根据本发明的另一个实施例的针对交互场景来确定虚拟立体操作棒的显示模型的示意图;
图11A和图11B示出了根据本发明的另一个实施例的对基于立体交互操作棒的立体交互过程进行运动视差显示的示意图;
图12A和图12B示出了根据本发明的一个实施例的对立体交互操作棒进行运动视差显示的示意图;
图13示出了根据本发明的一个实施例的实现具体运动视差的透视投影变换的流程示意图;
图14示出了根据本发明的一个实施例的立体交互显示装置的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不限于下面公开的具体实施例的限制。
图3示出了根据本发明的一个实施例的立体交互方法的示意流程图。
如图3所示,根据本发明的一个实施例的立体交互方法,包括:
步骤S102,通过立体交互操作棒与立体显示设备的屏幕上立体显示的被操作对象进行立体交互;
步骤S104,获取观看者的位置信息,并根据所述位置信息的变化情况,对所述立体交互的过程执行基于运动视差的立体调整显示。
在该技术方案中,在通过立体交互操作棒与被操作对象进行立体交互的过程中,通过结合运动视差的显示技术,使得在发生如用户视线被立体交互操作棒或手部等遮挡的情况时,仅需要改变观看位置,即可基于视差变化来调整屏幕的显示效果,使得用户能够从其他角度观看到先前被遮挡的图像部分,方便用户在不中断操作的情况下,完成对被操作对象的立体交互操作。
在一种实施方式下,优选地,可以由所述立体交互操作棒直接与立体显示于所述立体显示设备的屏幕前方的所述被操作对象实现立体交互。
其中,当被操作对象被立体显示于“屏幕前方”时,其视觉效果即“凸出”屏幕,因而能够通过立体交互操作棒来实现直接的立体交互,并进而通过基于运动视差的立体调整显示,使得用户能够通过立体交互操作棒实现持续、准确的立体交互。
在另一种实施方式下,优选地,在所述立体交互操作棒与所述立体显示设备的屏幕发生接触的情况下,在所述屏幕上显示出对应于所述立体交互操作棒的虚拟立体操作棒,并根据所述立体交互操作棒接收到的控制指令,控制所述虚拟立体操作棒与所述被操作对象实现立体交互。
其中,被操作对象立体显示于屏幕内部,即“凹进”屏幕,则通过在屏幕中显示出对应于立体交互操作棒的虚拟立体操作棒,使得用户可以通过向立体交互操作棒发出指令,以实现对虚拟立体操作棒的控制;而通过虚拟立体操作棒对立体显示的被操作对象进行立体交互时,令用户产生通过立体交互操作棒直接与立体显示的被操作对象进行立体交互的错觉,有助于提升用户的操作体验。
针对图2所示的应用场景,比如出现如手106对虚拟立体操作棒104、立体对象202(即被操作对象)造成遮挡等情况,则观看者(即用户)可以通过移动自身的观看位置,从而通过如图3所示步骤中的基于运动视差的立体调整显示,以解决上述问题。具体地,比如图4示出了根据本发明的一个实施例的对立体交互操作棒的立体交互过程进行基于运动视差的立体显示的示意图。
结合图2和图4可知,在图2中为用户从正面观看时的情形,导致手106造成了对虚拟立体操作棒104和立体对象202的遮挡;而在图4中,用户向自身的左侧发生移动,则3D显示屏幕200通过基于运动视差的立体调整显示,使得显示出的立体内容随着用户的观看视角的变化而发生改变,则用户能够观看到虚拟立体操作棒104和立体对象202的侧面视图。
因此,通过基于运动视差的立体调整显示,用户仅需移动自身的观看位置,而无需中断基于立体交互操作棒102的立体交互过程,即可避免手106等的遮挡问题,从另一视角观看到虚拟立体操作棒104与立体对象202之间的立体交互过程。
一、整体架构
为了实现对立体交互操作棒的立体交互过程进行基于运动视差的立体调整显示,需要得到硬件和软件两方面的支持,下面将分别进行详细描述。
(一)硬件支持
硬件设备主要包括:立体显示设备、人眼跟踪设备、处理器和立体交互操作棒。
1、立体显示设备
立体显示设备可以为手机、平板电脑、笔记本或其它类型的个人计算机、以及电视等。
(1)作为一种较为优选的实施例,立体显示设备上可以安装检测立体交互操作棒接触立体显示设备的屏幕时的接触点的装置,如使用电容式或电阻式触摸屏来对接触点进行定位。立体显示设备上也可以安装超声波等传感装置来对立体交互操作棒悬空、未接触立体显示设备屏幕时的三维空间位置坐标信息进行定位。当立体显示设备上使用不同的接触点或三维空间位置坐标信息的检测方式时,立体交互操作棒上需安装有相应的组件。
(2)如果是移动设备如手机、平板,则其上还需搭载姿态检测模块,姿态检测模块可以是加速度计、陀螺仪和/或电子罗盘等,从而通过处理器对姿态检测模块中各传感器的实时检测信号进行姿态解算,以实时获取姿态信息。如果是笔记本、台式电脑、一体机、电视等非移动设备,则需在开始显示时进行一次自检和校对,以获取自身的姿态信息。
(3)针对三维立体显示的需求,立体显示设备还必须具有相应的立体显示组件,如裸眼3D显示技术中能进行分光的立体显示光栅或透镜,以及眼镜式3D显示技术中能产生不同偏振态的起偏器,等等。后文中重点以裸眼3D显示技术为例进行说明,但本发明中的基于运动视差的立体交互及其调整显示技术也可应用于眼镜式3D显示中,本发明对此不作限定。
2、人眼跟踪设备
人眼跟踪设备可以为使用光学成像原理或使用红外成像原理、使用结构光等的摄像头、以及一切可能实现人眼跟踪功能的设备,如平板、笔记本等自带的摄像头,Xbox的外设Kinect等;
3、处理器
处理器可以是CPU,也可以是能运行人眼跟踪算法及运动视差算法等的各类芯片。
4、立体交互操作棒
立体交互操作棒是具有伸缩和测距结构、姿态检测模块与通信模块的设备。伸缩和测距结构包括可伸缩头部和测距模块,在该可伸缩头部接触显示屏幕并发生缩进时,测距模块能够用于检测缩进长度;姿态检测模块可以实时检测立体交互操作棒的姿态;以及,通信模块可以将姿态信息、缩进距离等上传到处理器。立体交互操作棒的外形可以是棒、笔、或其他满足特定功能需求的形状,如模拟手术所使用的手术刀。
立体交互操作棒中的伸缩和测距结构可以是弹簧式、气压式、电磁式、齿轮传动式的,等等。在触及显示屏幕发生缩进时,能够检测缩进的长度,离开屏幕时将棒头复位。如果对使用体验有更进一步的要求,可以将伸缩结构做成阻尼可控式的。
立体交互操作棒中的姿态检测模块可以是加速度计、陀螺仪及(或)电子罗盘,通过多传感器融合经由处理器的姿态解算来实时获取姿态信息。
立体交互操作棒中的通信模块可以是有线或无线的,需至少具备数据上传功能,以将姿态信息、缩进长度数据上传至处理器。
在实际使用中,还可以根据实际情况,为立体交互操作棒添加控制按钮、力反馈等功能模块。
针对该立体交互操作棒,图5A示出了根据本发明的一个实施例的立体交互操作棒的结构示意图;图5B示出了根据本发明的一个实施例的立体交互操作棒中各单元的连接示意图。
如图5A和图5B所示,该立体交互操作棒包括外壳102A、可伸缩头部102B、通信单元102C、定位单元102D、力反馈单元102E和伸缩感应单元102F,其中:
外壳102A可以是便于握持的任何形状,如笔状等。
可伸缩头部102B以可伸缩的方式与外壳102A连接,可以采用现有的各种结构。如果将可伸缩头部102B用于碰触被操作对象的部位称之为接触部,则作为一种优选实施方式,可以将可伸缩头部102B远离外壳102A的一端设计为一尖端,并将该尖端作为立体交互操作棒的接触部,并由该尖端与显示设备的屏幕等发生接触。
通信单元102C与定位单元102D、力反馈单元102E和伸缩感应单元102F电连接,用于实现立体交互操作棒与立体显示设备之间的立体交互。其中,可以采用无线通信方式如蓝牙、无线USB等,也可以采用有线通信方式,如I2C、USB等。
具体地,定位单元102D(对应于上述的姿态检测模块)用于实时检测立体交互操作棒在三维空间中的位置和姿态,并将检测到的三维空间的位置和姿态信息传送给通信单元102C发送。该定位单元102D可以包括作运动轨迹检测的传感器和作姿态检测的传感器。例如,现有的一些移动设备如智能手机上,采用陀螺仪传感器及加速度传感器得到运动轨迹数据(可作为立体交互操作棒在三维空间中的位置信息),同时采用加速度传感器和/或地磁传感器来得到欧拉角数据(可作为立体交互操作棒的姿态信息)。该运动轨迹的初始位置可以设置为立体交互操作棒初始状态下时,定位单元1202D(或其他部位)在参照系中的相对位置。
力反馈单元102E,用于根据通信单元102C接收的力反馈指令,执行模拟力反馈的动作。例如,可以采用电子机械装置作为力反馈单元102E,在收到力反馈指令后,模拟一个真实按钮被按压的震动,使得操作者能够身历其境的感受到3D界面的操作,以产生沉浸感。该电子机械模块可以是电动震动马达,人造肌肉膜或者是其他的模拟震动装置。
伸缩感应单元102F,用于实时检测可伸缩头部102B的缩进长度,并将检测到的缩进长度的信息传送给通信单元103发送。本实施例的伸缩感应单元102F采用压力传感的方式实现,相应地,可伸缩头部102B包括操作棒头部和抵顶于该伸缩感应单元102F与操作棒头部之间的弹性部件如弹簧,当可伸缩头部102B的缩进长度变化时,该弹性部件对伸缩感应单元102F的压力产生变化,伸缩感应单元102F可以将压力转化为相应的电信号并传送给通信单元102C发送。这样,根据该电信号的大小即可以确定可伸缩头部102B的缩进长度。
需要说明的是,伸缩感应单元102F的结构并不局限于此,可以有很多种的实现方式,如光电检测等。
上述立体交互操作棒还可以包括如电池、充电装置等辅助装置,这里不再一一介绍。
(二)三维显示资源
具体地,三维显示资源可以包括:具有三维信息的场景、视频、图形图像等。
作为几种较为具体的实施例,比如3D游戏的场景、对象,本身即具有三维信息;而使用三维方法拍摄的视频,视频中每一帧也具有三维信息;同时,虽然一般的照片等图像本身不具备深度信息,但可以通过多角度拍摄同一场景的多张照片来获取场景的深度信息,或者由用户向其中添加深度信息。
(三)软件支持
软件上的算法支持主要可以包括:人眼跟踪算法、姿态融合算法、运动视差透视投影变换、排图算法等。
为了能够详细说明上述的软件支持方面的内容,图6示出了根据本发明的一个实施例的用于实现立体交互方法的功能模块的结构示意图。
如图6所示,根据本发明的一个实施例的用于实现立体交互中各个算法的功能模块可以包括:人眼跟踪子模块602、姿态融合子模块604、运动视差透视投影子模块606、排图子模块608和立体显示光栅控制子模块610。下面将针对上述各个功能模块,一一进行详细说明。
1、人眼跟踪子模块602(对应于人眼跟踪算法)
人眼跟踪子模块602通过人眼跟踪设备实时捕捉包含了人眼当前位置信息的图像、信号,经由处理器的人眼跟踪算法,实时解算得到人相对于显示设备的观看位置。作为一种情况,该位置信息将参与运动视差透视投影变换(由运动视差透视投影子模块606实现)与排图算法(由排图子模块608实现);或者,作为另一种情况,可以由立体显示光栅控制子模块610执行立体显示光栅电极运动计算;当然,也可以将上述两种情况相结合,以共同用于实现基于运动视差的图像显示。
具体的信号流转和处理过程包括:
1)模块输入:包含了人眼当前位置信息的图像、信号;
2)模块操作:人眼跟踪算法;
3)模块输出:人相对于显示设备的观看位置;
4)输出量的去向(作用):运动视差透视投影变换与排图算法(和/或立体显示光栅电极运动计算)。
2、姿态融合子模块604(对应于姿态融合算法)
(1)当立体交互操作棒102触及屏幕发生缩进后,从立体交互操作棒102获取其当前姿态信息(在地理坐标系下)、缩进长度,从立体显示设备获取当前屏幕的姿态信息(在地理坐标系下)、接触点坐标,经由处理器的姿态融合算法,将立体交互操作棒102的姿态信息(在地理坐标系下)转换到立体显示设备坐标系下(或屏幕坐标系下),并结合缩进长度和接触点坐标建立虚拟立体操作棒模型(这个虚拟立体操作棒处于屏幕内),虚拟立体操作棒模型的三维空间位置坐标信息将参与运动视差透视投影变换、立体交互操作中。比如图7A示出了根据本发明的一个实施例的实现姿态坐标融合处理的示意图,其中,在图7A(a)、图7A(b)、图7A(c)和图7A(d)中,分别示出了立体交互操作棒102位于3D显示屏幕200的不同位置、形成不同姿态角和缩进长度时,能够通过姿态融合算法使得虚拟立体操作棒104与立体交互操作棒102相匹配。
具体的信号流转和处理过程包括:
1)模块输入:操作棒的姿态信息、缩进长度,屏幕的姿态信息、接触点坐标;
2)模块操作:姿态融合算法;
3)模块输出:虚拟的操作棒模型(屏幕坐标系下);
4)输出量的去向(作用):立体交互操作、运动视差透视投影变换。
(2)当立体交互操作棒102悬空、未触及屏幕时,可以借助其他方式(如结构光、电容屏空间电场、超声波到达时间等)获取当前立体交互操作棒102上的特征点的三维空间位置坐标,从立体交互操作棒102获取当前操作棒的姿态信息(在地理坐标系下),从显示设备获取当前屏幕的姿态信息(在地理坐标系下),经由处理器的姿态融合算法,将立体交互操作棒102的姿态信息(在地理坐标系下)转换到显示设备坐标系下(或屏幕坐标系下),并结合特征点的三维空间位置坐标信息建立整个立体交互操作棒102在显示设备坐标系下(或屏幕坐标系下)的三维空间位置坐标信息,该三维空间位置坐标信息将参与到交互式操作中。
比如图7B示出了根据本发明的另一个实施例的实现姿态坐标融合处理的示意图,其中,以图7B(a)为俯视图、图7B(b)和图7B(c)为主视图。
此时,被操作对象为显示在3D显示屏幕200上方的立体对象202,并表现为一个突出屏幕外的按钮,这个按钮可以是一个压力控制按钮,通过侦测用户施加给它的压力(按压缩进的距离),来控制阀门、撞击力量等的大小。
用户使用立体交互操作棒102按压按钮时,将看到按钮被压缩,且通过立体交互操作棒102的力反馈装置,如力反馈单元102E,可以使用户感受到相应大小的阻力。随着按钮进一步的压缩,感受到的阻力越大。这可以使用户获得视觉和触觉上的真实感(如果使用手指去按压浮在空中的按钮,则无法获得这种阻尼感受)。
如果需要精确控制按钮被压缩的程度,光靠阻力来判断是不太可靠的,因为人的触觉感知会随着受刺激的时间慢慢“钝化”。如果使用运动视差技术,用户将可以通过移动头部、从侧面清楚观察到按钮被压缩的距离,从而避免因为触觉感知“钝化”而引起的操作、控制不精确。
具体的信号流转和处理过程包括:
1)模块输入:立体交互操作棒的姿态信息、其上特征点的三维空间位置,显示设备屏幕的姿态信息;
2)模块操作:姿态融合算法;
3)模块输出:整个立体交互操作棒模型(屏幕坐标系下);
4)输出量的去向(作用):立体交互式操作。
3、运动视差透视投影子模块606(对应于运动视差透视投影变换算法)
当立体交互操作棒悬空未接触立体显示设备屏幕时,运动视差透视投影子模块606从人眼跟踪子模块602获取当前人眼位置坐标(在显示设备坐标系\屏幕坐标系下),经由处理器的运动视差投影算法,将三维显示资源投影到具有运动视差的左右眼视图,用于后续的屏幕显示及立体交互操作。
当立体交互操作棒接触显示设备屏幕时,除了获取当前人眼位置坐标(在显示设备坐标系/屏幕坐标系下)外,还需要从姿态融合子模块604获取虚拟立体操作棒模型坐标,经由处理器的运动视差投影算法,将虚拟立体操作棒模型与三维显示资源一同投影到具有运动视差的左右眼视图,用于后续的屏幕显示及立体交互操作。
具体的信号流转和处理过程包括:
1)模块输入:人眼位置坐标(从人眼跟踪子模块602获取)、虚拟立体操作棒模型坐标(从姿态融合子模块604获取)、三维显示资源;
2)模块操作:运动视差透视投影变换;
3)模块输出:具有运动视差的左眼视图和右眼视图(与显示设备无关);
4)输出量的去向(作用):排图计算。
4、排图子模块608(对应于排图算法)
排图子模块608根据屏幕分辨率、像素大小、立体显示光栅参数和(或)人眼位置坐标,经由处理器的排图算法,将左右两眼视图合成为一幅图像,用于最终输出在显示设备上。
具体的信号流转和处理过程包括:
1)模块输入:屏幕分辨率、像素大小、立体显示光栅参数,人眼位置坐标(从人眼跟踪子模块602获取);
2)模块操作:排图算法;
3)模块输出:融合了左右两眼视图的一幅图像(设备相关);
4)输出量的去向(作用):屏幕显示。
5、立体显示光栅控制子模块610
当使用分光光栅来改变视区时,立体显示光栅控制子模块610根据人眼位置坐标,对光栅电极做出调整。
其中,基于上述功能模块实现基于运动视差的立体显示时,针对图像显示的处理过程可以采用两种具体方式:
方式一:观看者移动后,通过立体显示光栅控制子模块610调整立体显示分光光栅(具体是通过移动光栅的电极),使其重新分光,将左右眼视图正确地映入观看者的左右眼,而不改变排图子模块608的排图算法的参数。
方式二:观看者移动后,根据新的人眼位置坐标,改变排图子模块608的排图算法的参数,使得在新生成的合成视图中,左、右眼视图在其中间隔的距离、周期等发生改变,从而使得新的左右眼视图正确地映入观看者的左右眼,而不改变进行分光的立体显示光栅或透镜。
二、姿态融合算法
下面将结合附图,对上述的由诸如姿态融合子模块604(如图6所示)实现的姿态融合算法进行详细说明。
图8示出了根据本发明的一个实施例的对操作棒进行姿态融合处理的流程示意图。
如图8所示,根据本发明的一个实施例的对操作棒进行姿态融合处理的过程包括:
步骤802,通过对立体交互操作棒的操作,并基于虚拟立体操作棒与立体交互操作棒之间的配合,使得用户通过操作棒或虚拟立体操作棒与立体显示对象进行交互。
正如上文所述,依立体交互操作棒所处位置的不同,有以下两种情况:
(1)当立体交互操作棒触及屏幕发生缩进时(具体可参见图7A),为了提高立体交互的真实感,淡化“屏幕”的存在,使用户感觉所持的立体交互操作棒是真实“伸入”到屏幕以内的(好像屏幕并不存在,被操作的对象具有真实存在感),这就需要在屏幕上相应地显示虚拟操作棒棒头伸入屏幕内的图像,并且所显示的虚拟立体操作棒棒头和用户所持的立体交互操作棒是无缝衔接的,也即立体显示的虚拟立体操作棒与缩进后的立体交互操作棒在观察者看来还是一个整体。
虚拟立体操作棒可以随着用户观看位置的不同,而相应地显示出不同的侧面,这就是虚拟立体操作棒所具有的运动视差。为此,需要先对虚拟立体操作棒进行建模,确定其在立体显示设备坐标系(屏幕坐标系)中的三维空间位置坐标信息位置与姿态,且该模型数据将参与后续的立体交互操作和运动视差透视投影变换。
(2)当立体交互操作棒悬空、未触及屏幕时(具体可参见图7B),可以对立体显示中处于屏幕外的对象进行操作,此时需要确定该立体交互操作棒在显示设备坐标系(屏幕坐标系)中的三维空间位置坐标信息。此时无需在屏幕上显示虚拟立体操作棒,故立体交互操作棒的三维空间位置坐标信息仅参与立体交互操作,不参与运动视差透视投影变换。
步骤804A,获取立体交互操作棒的姿态信息。
具体针对上述的两种情况:
(1)当立体交互操作棒触及屏幕发生缩进时,可以从显示设备上获取立体交互操作棒的接触点的位置信息,从此接触点开始对虚拟立体操作棒进行建模,结合立体交互操作棒的缩进长度,可以确定虚拟立体操作棒的长度。
(2)当立体交互操作棒悬空、未触及屏幕时,可以借助其他方式(如使用结构光、电容屏空间电场、超声波到达时间等)获取立体交互操作棒上特征点的三维空间位置坐标信息(在显示设备、立体交互操作棒上需要装置相应的硬件设备)。
步骤804B,获取显示设备姿态信息。
步骤806,基于立体交互操作棒的姿态信息和显示设备姿态信息,确定立体交互操作棒和/或虚拟立体操作棒在显示设备的屏幕坐标系中的姿态坐标。
具体地,可以包括:分别建立基于立体交互操作棒的载体坐标系,和基于屏幕的屏幕坐标系;确定载体坐标系和屏幕坐标系之间的转换关系,以用于生成立体交互操作棒和/或虚拟立体操作棒在屏幕坐标系中的三维空间位置坐标信息;根据三维空间位置坐标信息,执行立体交互操作棒和/或虚拟立体操作棒与被操作对象的立体交互。
在该技术方案中,基于上述的姿态融合与统一,能够将立体交互操作棒的姿态变化转换至立体显示设备的屏幕中,从而使得立体交互操作棒的三维空间位置坐标信息与被操作对象的三维空间位置坐标信息是基于同一标准的,即都是基于屏幕坐标系下的数据,因而能够根据该三维空间位置坐标信息,实现立体交互操作棒或虚拟立体操作棒与被操作对象之间的准确交互。
其中,被操作对象可以位于屏幕内部或外部,即“凹进”屏幕或“凸出”屏幕。对于被操作对象位于屏幕内部的情况,则可以通过虚拟立体操作棒与其进行交互;而对于被操作对象位于屏幕外部的情况,则可以通过立体交互操作棒与其进行交互;而针对同时存在位于屏幕内部和外部的被操作对象的情况,则可以同时通过虚拟立体操作棒和立体交互操作棒与其进行交互。
其中,由于步骤804B中获取的是立体显示设备的姿态信息,而立体显示设备与屏幕的姿态信息实际上是有可能不同的。因此,为了计算方便,可以将立体显示设备的姿态传感器的X、Y、Z轴分别和屏幕坐标系的X、Y、Z轴对齐安装,如此立体显示设备的载体坐标系和屏幕坐标系是重合的,可以省略从显示设备载体坐标系到屏幕坐标系的坐标变换过程,本文的讨论均以此为准。
对于立体交互操作棒的载体坐标系与屏幕坐标系之间的转换关系的确定,具体可以包括:计算屏幕坐标系相对于任一坐标系的第一转换系数,以及载体坐标系相对于任一坐标系的第二转换系数;根据第一转换系数和第二转换系数,确定转换关系。
在该技术方案中,以“任一坐标系”为转换中介,实现对载体坐标系和屏幕坐标系之间的转换,从而能够得到立体交互操作棒与屏幕上被操作对象之间的转换关系,确保实现准确的姿态融合与统一。
具体地,在对“任一坐标系”进行选取时,可以选取更容易实现与载体坐标系和屏幕坐标系进行转换的坐标系。作为一种较为优选的实施方式,比如可以选用基于地面的地理坐标系。
当然,姿态的表达方式是多样的,常见的姿态表达方式有方向余弦矩阵、欧拉角、四元数。下面以方向余弦矩阵为例,对具体的姿态变换过程进行说明。
以3*3的方向余弦矩阵表达立体交互操作棒相对地面的姿态,此矩阵用于将某点在操作棒载体坐标系下的坐标表达转换为地理坐标系下的坐标表达;以3*3的方向余弦矩阵表达显示设备相对地面的姿态,此矩阵用于将某点在显示设备载体坐标系(屏幕坐标系)下的坐标表达转换为地理坐标系下的坐标表达。
立体交互操作棒上的某一点Ppen,在立体交互操作棒的载体坐标系下的坐标表达若为 则点Ppen在地理坐标系中的坐标表达为 屏幕上的某一点Pscr,在屏幕坐标系(与显示设备坐标系重合)下的坐标表达若为 则点Pscr在地理坐标系中的坐标表达为
因此,针对立体交互操作棒上的任一点,可以将其在操作棒载体系下的坐标左乘即可求得该点在屏幕坐标系下的坐标表达。例如,立体交互操作棒上的某一点Ppen,在立体交互操作棒的载体坐标系下的坐标表达若为 则点Ppen在屏幕坐标系中的坐标表达为
在上述步骤中,描述了对于立体交互操作棒上的任一点转换至屏幕坐标系下的具体过程,则利用上述转换方式,即可实现对于整个立体交互操作棒或虚拟立体操作棒的姿态坐标转换。
步骤808,判断立体交互操作棒是否接触屏幕且发生缩进,若是,则进入步骤810,否则进入步骤816。
步骤810,获取立体交互操作棒的缩进长度和接触点坐标。
步骤812,在屏幕坐标系下,建立虚拟立体操作棒模型,并确定该模型的坐标信息。
具体地,假定将立体交互操作棒的载体坐标系的原点选择为棒头(即接触部,用于与显示设备的屏幕发生接触),载体坐标系的XYZ轴与姿态传感器的XYZ轴重合。此处假设棒身方向为Z轴方向,即Z轴指向为从棒头指向棒尾,使得棒身的z值均为正值。后文的计算均以此为准。
在屏幕上建立屏幕坐标系,可以假设Z轴垂直屏幕指向外侧(即用户所在的一侧;当然也可以指定为其他方向)。为了计算的方便,建议将屏幕所在平面选取为z=0,后文的计算均以此为准。
在立体交互操作棒上选择若干个特征点(一般为顶点、角点),并假定这些特征点在操作棒载体坐标系下的坐标表达 例如棒头的坐标为
假设立体交互操作棒与屏幕的接触点在屏幕坐标系下的坐标为 立体交互操作棒的缩进长度为L,则虚拟立体操作棒的特征点在屏幕坐标系下的坐标表达为:
因为虚拟立体操作棒仅仅只是真实的立体交互操作棒“伸入”屏幕内的部分,因此需要对上式计算得到的模型进行裁剪,以z=0为裁剪平面,保留虚拟立体操作棒z<0的部分,舍弃z>0的部分。
裁剪完毕后,得到的虚拟立体操作棒的模型数据将参与后续的交互式操作和运动视差透视投影计算。这个虚拟操作棒的模型和真实的立体交互操作棒在操作者看来,仿佛是连成一体的,好像屏幕并不存在,立体交互操作棒直接穿透了屏幕所在的平面探入了场景内部。
在不同的应用场景下,虚拟的“伸入”屏幕内的立体交互操作棒棒头可以具有特殊的外形。比如在图9中,描述了“手术”的场景,则在生成对应于立体交互操作棒102的虚拟立体操作棒104时,虚拟立体操作棒104的显示模型为对应于“手术”场景的手术刀,并用于与立体对象202(此时表现为“患者”)进行交互;或者,在图10中,描述了“打台球”的场景,则在生成对应于立体交互操作棒102的虚拟立体操作棒104时,虚拟立体操作棒104的显示模型为对应于“打台球”场景的台球杆,并用于与立体对象202(此时表现为“台球”)进行立体交互。
步骤814,由于步骤812中建立了虚拟立体操作棒的模型,因而可以用于参与运动视差的计算和显示。
步骤816,获取立体交互操作棒上的特征点的三维空间位置坐标。
当立体交互操作棒未接触屏幕或未发生缩进时,将不生成对应的虚拟立体操作棒,但仍然可以通过对立体交互操作棒自身的姿态信息获取,从而与立体显示对象进行立体交互。
具体地,可以借助其他方式(如使用结构光、电容屏空间电场、超声波到达时间等)获取当前操作棒上的特征点的三维空间位置坐标信息(在显示设备、立体交互操作棒上需要装置相应的硬件设备)。例如在立体交互操作棒棒头的端点、显示屏幕四周分别安装超声波发送、接收装置,通过测量超声波的到达时间对棒头的端点的空间位置进行定位(此位置是相对显示屏幕的)。
步骤818,生成在屏幕坐标系下的立体交互操作棒的三维空间位置坐标信息。
具体地,假设棒头在屏幕坐标系下的坐标为 则立体交互操作棒的特征点在屏幕坐标系下的坐标表达为
步骤820,无论是否存在虚拟立体操作棒,均可以实现与立体显示的被操作对象的交互式操作中。
当然,对于步骤818所示情形,由于此时无需在屏幕上显示虚拟立体操作棒,故此时虚拟立体操作棒的模型数据仅参与交互式操作,不参与运动视差透视投影变换。
在步骤812和步骤818等步骤中,提出了一种优选的生成所述三维空间位置坐标信息的过程,包括:在所述立体交互操作棒和/或所述虚拟立体操作棒上选择至少一个特征点;利用所述转换关系,生成所述至少一个特征点在所述屏幕坐标系中的位置信息;以及根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
在该技术方案中,通过选取特征点,使得在将立体交互操作棒或虚拟立体操作棒的三维空间位置坐标信息融合至屏幕坐标系的过程中,仅对少量的特征点进行坐标转换即可,而其他非特征点的坐标均可以基于特征点的坐标信息进行相对位置转换,从而简化了对立体交互操作棒或虚拟立体操作棒进行姿态融合与统一的过程,降低了坐标转换过程中的计算量,尤其是在立体交互操作棒或虚拟立体操作棒与被操作对象进行立体交互的过程中,有助于避免画面卡顿、延迟,使得立体交互过程更流畅。
优选地,当所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及当所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
在该技术方案中,由于在立体交互操作棒未接触屏幕时,立体交互操作棒的任一端的顶部与屏幕之间的距离往往是最远或最近的,因而以该顶部为特征点,有助于进一步降低非特征点在坐标变换过程中的复杂度。
而在立体交互操作棒已接触屏幕时,特别是虚拟立体操作棒与立体交互操作棒的缩进部分相配合的情况下,通过将接触点设置为特征点,有助于简化对虚拟立体操作棒的姿态坐标的计算过程,从而提升立体交互过程的流畅度。
在本发明的技术方案中,立体交互操作棒可以具备一般鼠标可具备的一切功能,例如:选中一个对象,拖动一个对象,打开文件、按下图形用户界面中的一个按钮等等。这些操作可以通过将立体交互操作棒指向立体显示的对象,或者同时辅以按下立体交互操作棒上的控制按钮或者做出某种鼠标手势(如在对象上向内伸进、划圈或滑动出特定的符号)来实现。
而在具有运动视差的立体交互中,立体交互操作棒还可实现一般鼠标难以模拟或难以给用户带来的真实感的效果。
1、模拟手术场景
图9示出了“手术”场景下的示意图。当立体交互操作棒102触及屏幕200发生缩进后,通过实时从立体交互操作棒102上的姿态检测模块(比如图5所示的定位单元102D)获取立体交互操作棒102的当前姿态信息,结合立体交互操作棒102与屏幕200的接触点数据和缩进长度,通过姿态融合算法,解算出虚拟的“伸入”屏幕内的手术刀(或镊子、针等其他手术器械)模型坐标,这个虚拟的手术刀模型和真实的立体交互操作棒在操作者看来,仿佛是连成一体的。
通过人眼跟踪设备捕捉人眼当前的坐标位置,并结合运动视差透视投影算法,从而实时更新虚拟手术刀和手术对象的左眼视图和右眼视图,进行具有运动视差的立体调整显示。
如果没有运动视差,则立体显示设备仅能提供人眼正视屏幕时的视图。当人眼正视屏幕时,往往可能发生虚拟手术刀挡住了被操作对象的情况,除非拿开立体交互操作棒102(拿开立体交互操作棒后,视图里的虚拟手术刀也被相应地移开),否则操作者无法观察到手术刀下的血管、神经等对象。
使用了运动视差技术后,操作者就可以在不中断虚拟手术刀、镊子、针等的手术操作的同时,从侧面观看到之前被挡住的血管、神经等对象,同时可以清楚地了解虚拟手术刀和被操作对象之间的位置关系,可以大大方便虚拟手术的进行,提高操作真实感。
在此例中,各类可能存在的处理事件以及相关操作流程如下:
(1)姿态融合显示:立体交互操作棒接触屏幕并发生缩进→实时计算、更新虚拟手术刀模型(可以由如图6所示的姿态融合子模块604完成)→实时更新虚拟手术刀及人体被手术部分解剖的左眼视图和右眼视图(可以由如图6所示的运动视差透视投影子模块606完成)→融合左右视图生成屏幕显示图像(可以由如图6所示的排图子模块608完成)→屏幕显示。
(2)运动视差显示:人眼观察位置移动→实时捕捉人眼新的观看位置(可以由如图6所示的人眼跟踪子模块602完成)→根据新的观看位置计算基于运动视差的左眼视图和右眼视图(可以由如图6所示的运动视差透视投影子模块606完成)→根据新的观看位置融合左眼视图和右眼视图,以生成屏幕显示图像(可以由如图6所示的排图子模块608完成),调整左右视区使之能重新正确地被观看→屏幕显示。
其中,作为另一种实施方式,可以对倒数第二步的排图子模块608完成的步骤更改为:由如图6所示的立体显示光栅控制子模块610根据新的观看位置调整立体分光光栅的排布,使之重新正确分光至人眼观看位置。
(3)基于立体交互操作棒和虚拟立体操作棒的交互过程:立体交互操作棒的拾取、剪切等操作→分析用户输入的信号类别,判断是否使用手术刀切开对象、使用镊子夹取对象等操作→虚拟手术刀、人体被手术部分发生相应动作、变动,生成用于立体显示的左眼视图和右眼立体视图进行屏幕显示。
2、模拟台球游戏
图10示出了“打台球”场景下的示意图。当立体交互操作棒102触及屏幕200发生缩进后,屏幕200上将显示的“伸入”屏幕的虚拟球杆(即虚拟立体操作棒104),这根虚拟球杆和真实的立体交互操作棒102在游戏者看来,仿佛是连成一体的。
在台球游戏中,常常需要从多个角度观察球的位置,如果没有运动视差,则不得不常常旋转整个场景的视角,来达到观察球的目的,随后又需要再将场景旋转回来以便击球,在旋转场景的过程中,虚拟球杆在场景中的位置往往也发生了变化,影响游戏的趣味性。
如果使用运动视差技术,操作者可以不旋转场景,仅仅只是改变观看的位置和角度,就可以了解球的分布,同时可判断当前虚拟球杆和台球的距离、位置,方便掌握击球力度和角度,大大方便了台球游戏的操作,提升了用户体验。
在此例中,各类可能存在的处理事件以及相关操作流程如下:
(1)姿态融合显示:立体交互操作棒接触屏幕并发生缩进→实时计算、更新虚拟球杆模型(可以由如图6所示的姿态融合子模块604完成)→实时更新虚拟球杆及台球游戏场景的左眼视图和右眼视图(可以由如图6所示的运动视差透视投影子模块606完成)→融合左眼视图和右眼视图,以生成屏幕显示图像(可以由如图6所示的排图子模块608完成)→屏幕显示。
(2)运动视差显示:人眼观察位置移动→实时捕捉人眼新的观看位置(可以由如图6所示的人眼跟踪子模块602完成)→根据新的观看位置计算基于运动视差的左眼视图和右眼视图(可以由如图6所示的运动视差透视投影子模块606完成)→根据新的观看位置融合左眼视图和右眼视图,以生成屏幕显示图像,并调整左右视区使之能重新正确地被观看(可以由如图6所示的排图子模块608完成)→屏幕显示。
其中,作为另一种实施方式,可以对倒数第二步的排图子模块608完成的步骤更改为:由如图6所示的立体显示光栅控制子模块610根据新的观看位置调整立体分光光栅的排布,使之重新正确分光至人眼观看位置。
(3)基于立体交互操作棒和虚拟立体操作棒的交互过程:立体交互操作棒的击打等动作→根据当前立体交互操作棒的姿态和位置,确定虚拟球杆的击打位置和方向→根据用户击打力度(操作棒的缩进长度),确定虚拟球杆的击打力量→根据台球游戏的物理模型,计算虚拟球杆的力反馈、台球的运动→生成对应视图进行屏幕显示。
3、立体交互操作棒与屏幕外的立体显示对象交互
上述的两种交互场景中,均有虚拟立体操作棒与屏幕内显示的立体对象进行交互;当然,上文结合图7B,已经针对由立体交互操作棒直接与显示在屏幕外部的立体对象进行交互的场景进行详细说明,而在该场景下,各类可能存在的处理事件以及相关操作流程如下:
(1)姿态融合显示:立体交互操作棒接触浮空的按钮并向内推进→实时计算、更新按钮模型(可以由如图6所示的姿态融合子模块604完成)→①和②。
①:根据当前操作棒“推挤”按钮的方向、行进距离,计算、更新被按压的按钮模型(可以由如图6所示的运动视差透视投影子模块606完成)→实时更新按钮及场景的左眼视图和右眼视图(可以由如图6所示的排图子模块608完成)→融合左眼视图和右眼视图生成屏幕显示图像→屏幕显示;
②:根据当前立体交互操作棒“推挤”按钮的方向、行进距离,计算、更新力反馈的阻尼大小→向立体交互操作棒发送力反馈指令,立体交互操作棒的力反馈模块提供给用户相应的阻力感受。
(2)运动视差显示:人眼观察位置移动→实时捕捉人眼新的观看位置(可以由如图6所示的人眼跟踪子模块602完成)→根据新的观看位置计算基于运动视差的左眼视图和右眼视图(可以由如图6所示的运动视差透视投影子模块606完成)→根据新的观看位置融合左眼视图和右眼视图生成屏幕显示图像,调整左右视区使之能重新正确地被观看(可以由如图6所示的排图子模块608完成)→屏幕显示。
其中,作为另一种实施方式,可以对倒数第二步的排图子模块608完成的步骤更改为:由如图6所示的立体显示光栅控制子模块610根据新的观看位置调整立体分光光栅的排布,使之重新正确分光至人眼观看位置。
三、运动视差显示
为了使用户在不同的位置上观看立体显示设备时能相应地观察到场景及其中对象的不同侧面内容,需要进行具有运动视差的透视投影变换。
此步骤需要由如图6所示的人眼跟踪子模块602获取当前人眼位置坐标,从如图6所示的姿态融合子模块604获取虚拟立体操作棒模型坐标,经由处理器的运动视差透视投影算法,将三维显示资源和虚拟立体操作棒投影到左眼视图和右眼视图,用于后续的屏幕显示。
在实际应用中,可以为三维显示资源(如游戏场景、视频等)和虚拟立体操作棒分别设置不同的投影变换参数,以达到最好的显示效果。
图11A和图11B示出了根据本发明的另一个实施例的对基于立体交互操作棒的立体交互过程进行运动视差显示的示意图。
如图11A所示,观察者位于屏幕正面正中,人眼和屏幕中心点的连线垂直于屏幕。
观察者通过立体交互操作棒102进行操控。其中,立体交互操作棒102包括外套102A和可伸缩部分102B,当立体交互操作棒102接触屏幕200并发生缩进时,对应于可伸缩部分102B的缩进部分,在屏幕200上显示出虚拟立体操作棒104。
同时,在屏幕200中显示的场景包括两个正方体对象,分别为对象202A和对象202B,其中对象二202B位于对象一202A的后方,在当前人眼观察位置下,对象二202B因为被对象一202A遮蔽而不可见。
如图11B所示,观察者位置发生变动,人眼向右上方移动,此过程中立体交互操作棒102的位置、姿态不发生任何变化。
一方面,通过对立体显示的对象一202A和对象二202B进行运动视差显示,使得观察者可以从屏幕侧面观察到位于对象一202A后方的对象二202B。
另一方面,虽然立体交互操作棒102的位置、姿态相对于地面未发生任何变化,但是在观察者看来,真实的立体交互操作棒102在观察者视网膜中的投影图像会随着人眼的位移而变化,因而屏幕中所显示的虚拟立体操作棒104在观察者视网膜中的投影图像也需要相应地实现运动视差的显示变化,使得所显示的虚拟立体操作棒104和用户所持的真实的立体交互操作棒102始终在视觉上具有“无缝衔接”的效果。
同时,三维显示资源的世界坐标系通常是固连在显示设备上的,当移动、旋转显示设备时(假定观看者在此过程中与显示设备的相对位置始终保持不变,亦即人眼相对屏幕的观看位置始终不变),屏幕上所显示的三维显示资源并不发生改变;但在移动、旋转显示设备的过程中,立体交互操作棒102与屏幕的相对位置发生了改变,因此,通常屏幕上所显示的虚拟立体操作棒的投影视图也会相应地发生改变。
具体地,图12A和图12B示出了根据本发明的一个实施例的对立体交互操作棒进行运动视差显示的示意图。
如图12A所示,其中的图12A(a)为主视图、图12A(b)为左视图、图12A(c)为俯视图,且图12A(a)中略去了观察者和立体交互操作棒102的示意元素。
在图12A所示的场景中,观察者位于屏幕200的正面正中间,人眼和屏幕200的中心点的连线垂直于屏幕200。
假定操作棒垂直接触屏幕200的中心点并发生了缩进,从而在屏幕200上相应地显示出虚拟立体操作棒104;然而,由于观察者的视线垂直于屏幕200,使得此时仅能显示出虚拟立体操作棒104的底面,并且很可能使得观察者的视线被立体交互操作棒102遮挡而无法完整地观察到虚拟立体操作棒104。
如图12B所示,其中的图12B(a)为主视图、图12B(b)为左视图、图12B(c)为俯视图,且图12B(a)中略去了观察者和立体交互操作棒102的示意元素。
在图12B所示的场景中,观察者位置发生变动,人眼向右方移动,此过程中立体交互操作棒102的位置、姿态不发生任何变化;此时可以看到虚拟立体操作棒104的右侧面。
尽管立体交互操作棒102的位置、姿态相对于地面未发生任何变化,但是在观察者看来,真实的立体交互操作棒102在观察者视网膜中的投影图像会随着人眼的位移而变化,因此,屏幕中所显示的虚拟立体操作棒104在观察者视网膜中的投影图像相应地发生变化,使得所显示的虚拟立体操作棒104和用户所持的真实的立体交互操作棒102始终在视觉上具有“无缝衔接”的效果。
图13示出了根据本发明的一个实施例的实现具体运动视差的透视投影变换的流程示意图。
如图13所示,根据本发明的一个实施例的实现具体运动视差的透视投影变换的过程包括:
步骤1302,将场景中的立体显示对象显示在世界坐标系中。
步骤1304,通过观察变换将场景(或视频帧、图形图像)由世界坐标系转换到观察坐标系,观察坐标系以观察点(投影参考点)为原点,显示屏幕即为观察平面(投影平面),观察坐标系的xview、yview轴沿屏幕的x、y方向,zview轴垂直于屏幕并指向观察者。假设当前人眼(即观察点)与显示屏幕(即观察平面)的垂直距离为D,则观察平面的z坐标为-D。
在此处,将观察坐标系的原点选为观察点的目的在于减少计算量,简化投影变换、规范化变换的矩阵表达。
实际应用中,根据具体使用的图形软件包的不同,观察坐标系可能有其他的构建形式,例如:此处我们构建的观察坐标系是一个右手系,zview轴垂直屏幕指向观察者,而在某些图形软件包中,观察坐标系是一个左手系,zview轴垂直屏幕背离观察者。
在此处,点的坐标使用形如 的齐次列向量表达,变换矩阵为4*4的方阵,在做坐标系变换时,Pnew=M*Pnow,M为变换矩阵。
实际应用时,在某些图形软件包中,点的坐标使用形如(x y z h)的行向量表达,此时对应的变换应为Pnew=Pnow*M,变换矩阵M虽仍为4*4的方阵,但与列向量坐标变换中的变换矩阵是不同的矩阵。
步骤1306,通过变换投影,将观察坐标系转换至投影坐标系,即完成场景向观察平面的投影。
下面以一种较为具体的算法来描述如何执行上述运动视差透视投影的计算过程;当然,本领域技术人员应该理解的是,在实际应用的具体工程、软件环境中,显然可以通过其他算法来实现上述目的,即此处并不用于限定具体的算法。
1、错切变换矩阵:
在观察坐标系中,通过在观察平面(显示屏幕)上指定一个矩形裁剪窗口可以得到一个观察体,它是一个顶点在观察点(投影参考点)的棱锥,称之为视锥体。
添加垂直于zview的近平面、远平面(近、远平面和观察平面平行)后,切掉了视锥体中距离观察点过近和过远的一部分,形成了一个透视投影棱台。显示的场景视图仅仅包括那些位于透视投影棱台内的对象。假设近平面的z坐标为znear,远平面的z坐标为zfar,在右手坐标系中,znear与zfar均为负值。
从投影参考点到透视投影棱台的近、远平面中心并穿过棱台的线段是透视投影棱台的中心线。在运动视差下,透视投影棱台往往不是一个对称的棱台,观察平面也常常不与棱台中心线垂直,这是运动视差和常见的三维投影变换不同的一个地方。
为此,需要先对斜透视投影棱台作z轴错切变换将其转换成为对称棱台,该变换将垂直于zview轴的所有平面按正比于其到投影参考点的距离值而平移,最终使得棱台的中心线与观察平面垂直。在计算上表现为点的齐次坐标列向量左乘错切矩阵Mz-shear,即Pnew=Mz-shear*Pnow。
当观察点(投影参考点)为观察坐标系的原点时,错切变换矩阵的形式可大大简化:
如果透视投影棱台已经是对称的,亦即观察点正处于剪裁窗口的正前方,则错切变换矩阵Mz-shear中的shzx=shzy=0。
如果将棱台的近平面选择在观察平面上,则近平面与裁剪窗口重合,z坐标为–D,x边界坐标为[xmin,xmax],y边界坐标为[ymin,ymax],错切变换矩阵Mz-shear中的shzx和shzy如下:
2、透视投影变换矩阵
错切变换将透视投影棱台转换为关于中心线对称的棱台。包含在透视投影棱台内的对象的顶点通过左乘透视变换矩阵Mpers,完成向观察平面投影的过程。
当观察点(投影参考点)为观察坐标系的原点,且棱台近平面选择在观察平面上时,透视投影矩阵Mpers可简化为
矩阵中的参数sz、tz由下面的规范化要求而确定。
步骤1308,通过规范化变换和裁剪,从投影坐标系转换至规范化坐标系。
上一步的透视投影变换将透视投影棱台中的点转换到矩形观察体中。透视变换的最后一步为将矩形观察体转换到规范化坐标系中,包含在矩形观察体中的点通过左乘规范化矩阵Mnorm,变换成为规范化坐标系中的一个立方体,完成规范化变换。规范化矩阵Mnorm形如
根据规范化观察体的边界坐标可以确定透视投影变换矩阵Mpers中的sz、tz的值,以及规范化矩阵Mnorm中的sx、sy的值。在有的图形软件包中,规范化观察体为[-1,1]×[-1,1]×[-1,1]的立方体,此时各参数确定如下:
综合起来,场景中的顶点从观察坐标系转换到规范化坐标系的全过程为:
其中,对 做透视除法即可得到投影坐标
投影图像在规范化坐标系中进行裁剪,再进过可见性判定、表面绘制等操作后,得到与立体显示设备无关的输出。
步骤1310,从规范化坐标系转换至设备坐标系。
图14示出了根据本发明的一个实施例的立体交互显示装置的示意框图。
如图14所示,根据本发明的一个实施例的立体交互显示装置1400,包括:立体显示单元1402,用于在立体显示设备的屏幕上立体显示出被操作对象;位置获取单元1404,用于获取观察者的位置信息;显示调整单元1406,用于根据所述位置信息的变化情况,对所述立体交互操作棒与所述被操作对象的立体交互的过程执行基于运动视差的立体调整显示。
在该技术方案中,在通过立体交互操作棒与被操作对象进行立体交互的过程中,通过结合运动视差的显示技术,使得在发生如用户视线被立体交互操作棒或手部等遮挡的情况时,仅需要改变观看位置,即可基于视差变化来调整屏幕的显示效果,使得用户能够从其他角度观看到先前被遮挡的图像部分,方便用户在不中断操作的情况下,完成对被操作对象的立体交互操作。
优选地,所述立体显示单元用于:在所述立体显示设备的屏幕前方显示所述被操作对象,以由所述立体交互操作棒直接与所述被操作对象实现立体交互,和/或在所述立体交互操作棒接触所述屏幕且发生缩进时,显示出对应于所述立体交互操作棒的缩进部分的所述虚拟立体操作棒及所述虚拟立体操作棒与所述被操作对象的立体交互过程。
其中,当被操作对象被立体显示于“屏幕前方”时,其视觉效果即“凸出”屏幕,因而能够通过立体交互操作棒来实现直接的立体交互,并进而通过基于运动视差的立体调整显示,使得用户能够通过立体交互操作棒实现持续、准确的立体交互。
而当被操作对象立体显示于屏幕内部时,即“凹进”屏幕,则通过在屏幕中显示出虚拟立体操作棒,使得用户可以通过向立体交互操作棒发出指令,以实现对虚拟立体操作棒的控制;而通过虚拟立体操作棒对被操作对象进行立体交互时,令用户产生通过立体交互操作棒直接与被操作对象进行立体交互的错觉,有助于提升用户的操作体验。
另外,根据本发明上述实施例的立体交互显示装置,还可以具有如下附加的技术特征:
根据本发明的一个实施例,优选地,还包括:模型选择单元1408,用于根据所述被操作对象所处的立体显示场景,选用对应的立体模型以作为所述虚拟立体操作棒。
在该技术方案中,通过选用与立体显示场景相对应的虚拟立体操作棒,使得用户可以基于该虚拟立体操作棒,实现与立体显示场景中的被操作对象之间更为真实的立体交互过程。
具体地,比如当显示场景为“手术室”时,则可以将“手术刀”的立体模型作为虚拟立体操作棒,以实现虚拟的手术过程;当显示场景为“足球场”时,则可以将“左腿”和“右腿”的立体模型作为虚拟立体操作棒,以实现虚拟的足球运动等。
作为一种较为优选的实施例,所述立体显示单元1402用于:在所述立体交互操作棒接触所述屏幕且发生缩进的情况下,显示对应于所述立体交互操作棒的缩进部分的所述虚拟立体操作棒。
在该技术方案中,立体交互操作棒可以设置为可缩进的形式,则当用户使用立体交互操作棒接触屏幕且使得立体交互操作棒发生缩进时,通过在屏幕上显示出对应于该缩进部分的虚拟立体操作棒,使得用户会产生将立体交互操作棒“伸入”屏幕中的错觉,并认为是用户自己通过立体交互操作棒与被操作对象之间进行交互,从而有助于增强操作体验。
其中,虚拟立体操作棒与立体交互操作棒的缩进部分之间的对应关系可以体现在:虚拟立体操作棒的长度可以与缩进部分的长度实时相等,让用户觉得它们还是一个整体,与没有缩进时的立体交互操作棒一样;用户在改变立体交互操作棒的方位角、与屏幕的接触位置等参数时,虚拟立体操作棒的姿态能够与立体交互操作棒的上述参数相配合等。
根据本发明的另一个实施例,优选地,还包括:位置确定单元1410,用于建立基于所述屏幕的屏幕坐标系,并根据所述屏幕坐标系与基于所述立体交互操作棒的载体坐标系之间的转换关系,生成所述立体交互操作棒和/或虚拟立体操作棒在所述屏幕坐标系中的三维空间位置坐标信息;交互执行单元1412,用于根据所述三维空间位置坐标信息,执行所述立体交互操作棒和/或所述虚拟立体操作棒与所述被操作对象的立体交互。
基于上述的姿态融合与统一,能够将立体交互操作棒的姿态变化转换至屏幕中,从而使得立体交互操作棒的三维空间位置坐标信息与被操作对象的三维空间位置坐标信息是基于同一标准的,即都是基于屏幕坐标系下的数据,因而能够根据该三维空间位置坐标信息,实现立体交互操作棒和/或虚拟立体操作棒与被操作对象之间的准确立体交互。
其中,被操作对象可以位于屏幕内部或外部,即“凹进”屏幕或“凸出”屏幕。对于被操作对象位于屏幕内部的情况,则可以通过虚拟立体操作棒与其进行立体交互;而对于被操作对象位于屏幕外部的情况,则可以通过立体交互操作棒与其进行立体交互;而针对同时存在位于屏幕内部和外部的被操作对象的情况,则可以同时通过虚拟立体操作棒和立体交互操作棒与其进行立体交互。
优选地,所述位置确定单元1410用于:计算所述屏幕坐标系相对于任一坐标系的第一转换系数,并根据所述第一转换系数和所述载体坐标系相对于所述任一坐标系的第二转换系数,确定所述转换关系。
在该技术方案中,以“任一坐标系”为转换中介,实现对载体坐标系和屏幕坐标系之间的转换,从而能够得到立体交互操作棒与屏幕上被操作对象之间的转换关系,确保实现准确的姿态融合与统一。
具体地,在对“任一坐标系”进行选取时,可以选取更容易实现与载体坐标系和屏幕坐标系进行转换的坐标系。作为一种较为优选的实施方式,比如可以选用基于地面的地理坐标系。
优选地,所述位置确定单元1410用于:利用所述转换关系,生成所述立体交互操作棒和/或所述虚拟立体操作棒上的至少一个特征点在所述屏幕坐标系中的位置信息,并根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
在该技术方案中,通过选取特征点,使得在将立体交互操作棒或虚拟立体操作棒的三维空间位置坐标信息融合至屏幕坐标系的过程中,仅对少量的特征点进行坐标转换即可,而其他非特征点的坐标均可以基于特征点的坐标信息进行相对位置转换,从而简化了对立体交互操作棒或虚拟立体操作棒进行姿态融合与统一的过程,降低了坐标转换过程中的计算量,尤其是在立体交互操作棒或虚拟立体操作棒与被操作对象进行立体交互的过程中,有助于避免画面卡顿、延迟,使得立体交互过程更流畅。
优选地,在所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及在所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
在该技术方案中,由于在立体交互操作棒未接触屏幕时,立体交互操作棒的任一端的顶部与屏幕之间的距离往往是最远或最近的,因而以该顶部为特征点,有助于进一步降低非特征点在坐标变换过程中的复杂度。
而在立体交互操作棒已接触屏幕时,特别是虚拟立体操作棒与立体交互操作棒的缩进部分相配合的情况下,通过将接触点设置为特征点,有助于简化对虚拟立体操作棒的姿态坐标的计算过程,从而提升交互过程的流畅度。
此外,本发明还提出了一种立体交互系统(图中未示出),包括:立体交互操作棒;以及如上述技术方案中任一项所述的立体交互显示装置1400。当用户通过该立体交互操作棒对立体交互显示装置1400的显示出的立体对象进行立体交互时,可以对立体交互场景进行基于运动视差的立体调整显示。
以上结合附图详细说明了本发明的技术方案,本发明提出了一种立体交互方法、一种立体交互显示装置和一种立体交互系统,可以在基于立体交互操作棒的立体交互过程中,实现对交互场景的基于运动视差的立体调整显示,从而使用户获得更加真实、丰富的交互操作体验。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种立体交互方法,其特征在于,包括:
通过立体交互操作棒与立体显示设备的屏幕上立体显示的被操作对象进行立体交互;
获取观看者的位置信息,并根据所述位置信息的变化情况,对所述立体交互的过程执行基于运动视差的立体调整显示。
2.根据权利要求1所述的立体交互方法,其特征在于,所述立体交互包括:
在所述立体交互操作棒未接触所述立体显示设备的屏幕时,由所述立体交互操作棒直接与立体显示于所述立体显示设备的屏幕前方的所述被操作对象实现立体交互;
和/或在所述立体交互操作棒接触所述立体显示设备的屏幕时,所述屏幕上显示出对应于所述立体交互操作棒的虚拟立体操作棒,根据所述立体交互操作棒接收到的控制指令,控制所述虚拟立体操作棒与所述被操作对象实现立体交互。
3.根据权利要求2所述的立体交互方法,其特征在于,还包括:
根据所述被操作对象所处的立体显示场景,选用对应的立体模型以作为所述虚拟立体操作棒。
4.根据权利要求2所述的立体交互方法,其特征在于,当所述立体交互操作棒接触所述屏幕且发生缩进时,所述虚拟立体操作棒对应于所述立体交互操作棒的缩进部分。
5.根据权利要求2至4中任一项所述的立体交互方法,其特征在于,还包括:
分别建立基于所述立体交互操作棒的载体坐标系,和基于所述屏幕的屏幕坐标系;
确定所述载体坐标系和所述屏幕坐标系之间的转换关系,以用于生成所述立体交互操作棒和/或虚拟立体操作棒在所述屏幕坐标系中的三维空间位置坐标信息;
根据所述三维空间位置坐标信息,执行所述立体交互操作棒和/或所述虚拟立体操作棒与所述被操作对象的立体交互。
6.根据权利要求5所述的立体交互方法,其特征在于,确定所述载体坐标系和所述屏幕坐标系之间的转换关系的过程包括:
计算所述屏幕坐标系相对于任一坐标系的第一转换系数,以及所述载体坐标系相对于所述任一坐标系的第二转换系数;
根据所述第一转换系数和所述第二转换系数,确定所述转换关系。
7.根据权利要求5所述的立体交互方法,其特征在于,生成所述三维空间位置坐标信息的过程包括:
在所述立体交互操作棒和/或所述虚拟立体操作棒上选择至少一个特征点;
利用所述转换关系,生成所述至少一个特征点在所述屏幕坐标系中的位置信息;以及
根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
8.根据权利要求7所述的立体交互方法,其特征在于,
在所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及
在所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
9.一种立体交互显示装置,其特征在于,包括:
立体显示单元,用于在立体显示设备的屏幕上立体显示出被操作对象;
位置获取单元,用于获取观察者的位置信息;
显示调整单元,用于根据所述位置信息的变化情况,对所述立体交互操作棒与所述被操作对象的立体交互的过程执行基于运动视差的立体调整显示。
10.根据权利要求9所述的立体交互显示装置,其特征在于,所述立体显示单元用于:
在所述立体显示设备的屏幕前方显示所述被操作对象,以由所述立体交互操作棒直接与所述被操作对象实现立体交互;
和/或在所述立体交互操作棒接触所述屏幕且发生缩进时,显示出对应于所述立体交互操作棒的缩进部分的所述虚拟立体操作棒及所述虚拟立体操作棒与所述被操作对象的立体交互过程。
11.根据权利要求10所述的立体交互显示装置,其特征在于,还包括:
模型选择单元,用于根据所述被操作对象所处的立体显示场景,选用对应的立体模型以作为所述虚拟立体操作棒。
12.根据权利要求10或11所述的立体交互显示装置,其特征在于,还包括:
位置确定单元,用于建立基于所述屏幕的屏幕坐标系,并根据所述屏幕坐标系与基于所述立体交互操作棒的载体坐标系之间的转换关系,生成所述立体交互操作棒和/或虚拟立体操作棒在所述屏幕坐标系中的三维空间位置坐标信息;
交互执行单元,用于根据所述三维空间位置坐标信息,执行所述立体交互操作棒和/或所述虚拟立体操作棒与所述被操作对象的立体交互。
13.根据权利要求12所述的立体交互显示装置,其特征在于,所述位置确定单元用于:
计算所述屏幕坐标系相对于任一坐标系的第一转换系数,并根据所述第一转换系数和所述载体坐标系相对于所述任一坐标系的第二转换系数,确定所述转换关系。
14.根据权利要求12所述的立体交互显示装置,其特征在于,所述位置确定单元用于:
利用所述转换关系,生成所述立体交互操作棒和/或所述虚拟立体操作棒上的至少一个特征点在所述屏幕坐标系中的位置信息,并根据所述位置信息,以及所述立体交互操作棒和/或所述虚拟立体操作棒上的任一非特征点与所述至少一个特征点之间的相对位置关系,生成所述三维空间位置坐标信息。
15.根据权利要求14所述的立体交互显示装置,其特征在于,
在所述立体交互操作棒未接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒的任一端的顶部;以及
在所述立体交互操作棒接触所述屏幕时,所述至少一个特征点包括所述立体交互操作棒与所述屏幕的接触点。
16.一种立体交互系统,其特征在于,包括:
立体交互操作棒;以及
如权利要求9至15中任一项所述的立体交互显示装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410042145.8A CN103744518B (zh) | 2014-01-28 | 2014-01-28 | 立体交互方法及其显示装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410042145.8A CN103744518B (zh) | 2014-01-28 | 2014-01-28 | 立体交互方法及其显示装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103744518A true CN103744518A (zh) | 2014-04-23 |
CN103744518B CN103744518B (zh) | 2016-09-28 |
Family
ID=50501543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410042145.8A Active CN103744518B (zh) | 2014-01-28 | 2014-01-28 | 立体交互方法及其显示装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103744518B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104134235A (zh) * | 2014-07-25 | 2014-11-05 | 深圳超多维光电子有限公司 | 真实空间和虚拟空间的融合方法和融合系统 |
CN104915010A (zh) * | 2015-06-28 | 2015-09-16 | 合肥金诺数码科技股份有限公司 | 一种基于手势识别的虚拟翻书系统 |
CN105094294A (zh) * | 2014-05-12 | 2015-11-25 | 联想(北京)有限公司 | 操作裸眼三维图形显示设备的方法及装置 |
CN105224084A (zh) * | 2015-09-30 | 2016-01-06 | 深圳多新哆技术有限责任公司 | 确定虚拟物件在虚拟空间中位置的方法及装置 |
CN105321415A (zh) * | 2014-08-01 | 2016-02-10 | 卓思生命科技有限公司 | 一种手术模拟系统及方法 |
CN105320452A (zh) * | 2014-07-18 | 2016-02-10 | 马克西姆综合产品公司 | 利用人体作为输入机构的可佩带装置 |
CN106371736A (zh) * | 2016-01-08 | 2017-02-01 | 北京智谷睿拓技术服务有限公司 | 交互方法、交互设备及操作棒 |
CN106919294A (zh) * | 2017-03-10 | 2017-07-04 | 京东方科技集团股份有限公司 | 一种3d触控交互装置、其触控交互方法及显示装置 |
CN106951087A (zh) * | 2017-03-27 | 2017-07-14 | 联想(北京)有限公司 | 一种基于虚拟交互平面的交互方法及装置 |
CN107533416A (zh) * | 2015-03-20 | 2018-01-02 | 株式会社理光 | 显示装置、显示控制方法、显示控制程序和显示系统 |
CN108205932A (zh) * | 2018-02-11 | 2018-06-26 | 合肥市科技馆 | 一种互动式细胞科普设备 |
US10496353B2 (en) | 2016-09-29 | 2019-12-03 | Jiang Chang | Three-dimensional image formation and color correction system and method |
CN111337870A (zh) * | 2020-04-17 | 2020-06-26 | 中国人民解放军海军装备部驻沈阳地区军事代表局驻大连地区第一军事代表室 | 一种基于欧拉公式的三轴电场修正方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100050A (ja) * | 2003-09-24 | 2005-04-14 | Fuji Xerox Co Ltd | 情報表示システム及び情報表示方法 |
CN101984670A (zh) * | 2010-11-16 | 2011-03-09 | 深圳超多维光电子有限公司 | 一种立体显示方法、跟踪式立体显示器及图像处理装置 |
CN102426486A (zh) * | 2011-11-03 | 2012-04-25 | 深圳超多维光电子有限公司 | 一种立体交互方法及被操作设备 |
CN103077633A (zh) * | 2013-01-11 | 2013-05-01 | 深圳超多维光电子有限公司 | 一种立体虚拟培训系统和方法 |
-
2014
- 2014-01-28 CN CN201410042145.8A patent/CN103744518B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100050A (ja) * | 2003-09-24 | 2005-04-14 | Fuji Xerox Co Ltd | 情報表示システム及び情報表示方法 |
CN101984670A (zh) * | 2010-11-16 | 2011-03-09 | 深圳超多维光电子有限公司 | 一种立体显示方法、跟踪式立体显示器及图像处理装置 |
CN102426486A (zh) * | 2011-11-03 | 2012-04-25 | 深圳超多维光电子有限公司 | 一种立体交互方法及被操作设备 |
CN103077633A (zh) * | 2013-01-11 | 2013-05-01 | 深圳超多维光电子有限公司 | 一种立体虚拟培训系统和方法 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094294A (zh) * | 2014-05-12 | 2015-11-25 | 联想(北京)有限公司 | 操作裸眼三维图形显示设备的方法及装置 |
CN105094294B (zh) * | 2014-05-12 | 2018-07-06 | 联想(北京)有限公司 | 操作裸眼三维图形显示设备的方法及装置 |
CN105320452A (zh) * | 2014-07-18 | 2016-02-10 | 马克西姆综合产品公司 | 利用人体作为输入机构的可佩带装置 |
CN105320452B (zh) * | 2014-07-18 | 2020-07-10 | 马克西姆综合产品公司 | 利用人体作为输入机构的可佩带装置 |
CN104134235B (zh) * | 2014-07-25 | 2017-10-10 | 深圳超多维光电子有限公司 | 真实空间和虚拟空间的融合方法和融合系统 |
CN104134235A (zh) * | 2014-07-25 | 2014-11-05 | 深圳超多维光电子有限公司 | 真实空间和虚拟空间的融合方法和融合系统 |
CN105321415A (zh) * | 2014-08-01 | 2016-02-10 | 卓思生命科技有限公司 | 一种手术模拟系统及方法 |
CN107533416A (zh) * | 2015-03-20 | 2018-01-02 | 株式会社理光 | 显示装置、显示控制方法、显示控制程序和显示系统 |
CN104915010A (zh) * | 2015-06-28 | 2015-09-16 | 合肥金诺数码科技股份有限公司 | 一种基于手势识别的虚拟翻书系统 |
CN105224084B (zh) * | 2015-09-30 | 2018-04-24 | 深圳多新哆技术有限责任公司 | 确定虚拟物件在虚拟空间中位置的方法及装置 |
CN105224084A (zh) * | 2015-09-30 | 2016-01-06 | 深圳多新哆技术有限责任公司 | 确定虚拟物件在虚拟空间中位置的方法及装置 |
US10957065B2 (en) | 2015-09-30 | 2021-03-23 | Shenzhen Dlodlo Technologies Co., Ltd. | Method and device for determining position of virtual object in virtual space |
CN106371736A (zh) * | 2016-01-08 | 2017-02-01 | 北京智谷睿拓技术服务有限公司 | 交互方法、交互设备及操作棒 |
US10275051B2 (en) | 2016-01-08 | 2019-04-30 | Beijing Zhigu Rui Tuo Tech Co., Ltd. | Interaction method, interaction device, and operation stick |
CN106371736B (zh) * | 2016-01-08 | 2019-11-08 | 北京智谷睿拓技术服务有限公司 | 交互方法、交互设备及操作棒 |
US11301199B2 (en) | 2016-09-29 | 2022-04-12 | Jiang Chang | Multi-viewpoint switched shooting system and method |
US11379173B2 (en) | 2016-09-29 | 2022-07-05 | Jiang Chang, Xingchen Liu, Dahooo USA | Method of maintaining accuracy in a 3D image formation system |
US10990342B2 (en) | 2016-09-29 | 2021-04-27 | Jiang Chang | Multi-viewpoint switched shooting system and method |
US10496353B2 (en) | 2016-09-29 | 2019-12-03 | Jiang Chang | Three-dimensional image formation and color correction system and method |
US10976980B2 (en) | 2016-09-29 | 2021-04-13 | Jiang Chang, Xingchen Liu and Dahooo USA | Method of maintaining accuracy in a 3D image formation system |
WO2018161542A1 (zh) * | 2017-03-10 | 2018-09-13 | 京东方科技集团股份有限公司 | 一种3d触控交互装置、其触控交互方法及显示装置 |
CN106919294B (zh) * | 2017-03-10 | 2020-07-21 | 京东方科技集团股份有限公司 | 一种3d触控交互装置、其触控交互方法及显示装置 |
CN106919294A (zh) * | 2017-03-10 | 2017-07-04 | 京东方科技集团股份有限公司 | 一种3d触控交互装置、其触控交互方法及显示装置 |
CN106951087B (zh) * | 2017-03-27 | 2020-02-21 | 联想(北京)有限公司 | 一种基于虚拟交互平面的交互方法及装置 |
CN106951087A (zh) * | 2017-03-27 | 2017-07-14 | 联想(北京)有限公司 | 一种基于虚拟交互平面的交互方法及装置 |
CN108205932A (zh) * | 2018-02-11 | 2018-06-26 | 合肥市科技馆 | 一种互动式细胞科普设备 |
CN108205932B (zh) * | 2018-02-11 | 2023-10-03 | 合肥市科技馆 | 一种互动式细胞科普设备 |
CN111337870A (zh) * | 2020-04-17 | 2020-06-26 | 中国人民解放军海军装备部驻沈阳地区军事代表局驻大连地区第一军事代表室 | 一种基于欧拉公式的三轴电场修正方法 |
CN111337870B (zh) * | 2020-04-17 | 2021-07-06 | 中国人民解放军海军装备部驻沈阳地区军事代表局驻大连地区第一军事代表室 | 一种基于欧拉公式的三轴电场修正方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103744518B (zh) | 2016-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103744518A (zh) | 立体交互方法及其显示装置和系统 | |
US11745097B2 (en) | Spatially-correlated human-machine interface | |
US11173392B2 (en) | Spatially-correlated human-machine interface | |
EP2725457B1 (en) | Virtual reality display system | |
EP3106963B1 (en) | Mediated reality | |
CN102426486B (zh) | 一种立体交互方法及被操作设备 | |
KR101518727B1 (ko) | 입체 인터랙션 시스템 및 입체 인터랙션 방법 | |
CN114127669A (zh) | 无源指示笔的可跟踪性增强 | |
EP2485119A2 (en) | Spatially-correlated multi-display human-machine interface | |
JP6021296B2 (ja) | 表示制御プログラム、表示制御装置、表示制御システム、および、表示制御方法 | |
EP3109833B1 (en) | Information processing device and information processing method | |
EP3118722A1 (en) | Mediated reality | |
CN102508562B (zh) | 一种立体交互系统 | |
CN102508561B (zh) | 一种操作棒 | |
CN102508563B (zh) | 一种立体交互方法以及被操作设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180724 Address after: 518052 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Patentee after: Shenzhen super Technology Co., Ltd. Address before: 518053 East Guangdong H-1 East 101, overseas Chinese town, Nanshan District, Shenzhen. Patentee before: Shenzhen SuperD Photoelectronic Co., Ltd. |
|
TR01 | Transfer of patent right |