【具体实施方式】
如图1所示,在一个实施例中,一种虚拟屏的标定方法,包括如下步骤:
步骤S10,检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值。
本实施例中,虚拟屏为虚拟的立体屏幕中与用户相对的平面,例如,立体屏幕可以是一定大小的长方体三维空间或者正方体三维空间,其位于以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中。用户可通过触摸虚拟屏产生触摸事件,进而实现与被控装置的交互。触摸事件包括用户在虚拟屏上的各种手势,该手势可以是滑动手势等。具体地,触摸事件可以是图标选定事件、点击事件以及图标移动事件等。在对虚拟屏进行触控操作时,用户将附带标记,通过标记在虚拟屏中实现触控操作的输入,标记可以是反光材料或者用户的某一身体部位。用户通过标记在虚拟屏中进行触控操作时,图像采集装置将会采集到具有标记区域的图像,标记区域是采集得到的图像中标记所对应的图像区域。例如,图像采集装置可以是立体视觉系统(由两台空间位置已知的摄像机及相关数据处理设备组成)、结构光系统(右一台摄像机、一台光源以及相关数据处理设备组成)或TOF(timeofflight,飞行时间)深度相机等。用户所附带的标记可以为指定颜色和/或形状的物体。进一步的,在一个实施例中,标记可以为指定颜色和/或形状的反光材料。优选的,标记为圆形的反光源。在其他实施例中,标记还可以是人体的某个部位,例如可以是人的手指等。
虚拟屏中的检测结果包括了标记的触点位置以及赋予的位置值。具体的,通过采集到的包含标记区域的图像检测虚拟屏中的标记,以得到标记所对应的触点位置,该触点位置可以表现为三维坐标形式。若虚拟屏中没有发生用户的触控操作,将不能检测到虚拟屏中的标记,则为当前所进行的检测赋予预设的位置值,以标识当前的检测结果为空。一实施例中,预设的位置值可以是三维坐标中Z轴坐标的数值为零,也可以是三维坐标的数值均为零。在没有检测到虚拟屏中的标记时,将对应的检测结果进行清零处理,可以检测结果中的Z轴坐标设定为零,从而标识Z轴坐标为零的位置值即为虚拟屏中未出现标记时对应的检测结果;也可以将三维坐标均设定为零。
如图2所示,在一个实施例中,上述步骤S10的具体过程包括:
步骤S110,检测标记。
本实施例中,对采集到的包含标记区域的图像进行检测,以得到虚拟屏中标记的触点位置。但是,在用户附带的标记被遮挡时将无法从采集到的图像中识别出标记区域以及该标记所对应的触点位置。例如,若虚拟屏与显示屏幕之间的距离为140CM,由于识别距离为59CM,因此能够识别到标记与显示屏幕之间的距离为75CM,此时,所得到的触点位置中Z轴坐标为75CM。而在标记被某一物体遮挡的场景下是无法识别到图像中的标记区域的,此时的检测结果为空。
具体地,在触点的检测过程中,根据预先设定的检测频率持续进行检测,并且根据用户交互过程中对实时性的要求进行调整,进而调整感知用户操作的精确性。一实施例中,检测频率可设定为30,即每秒进行30次标记的检测,进而通过每秒30次的检测可以获知用户所附带的标记运动情况。对于每一次检测所得到的检测结果,均需要进入步骤S130中判断该次检测中虚拟屏是否存在标记,以准确地感知用户行为。
步骤S130,判断标记是否存在,若否,则进入步骤S150,若是,则进入步骤S170。
本实施例中,判断是否检测得到标记,若是,则得到用户通过标记进行触控操作产生的触点位置,并按照检测的时间顺序存储,若没有检测得到标记,说明用户可能变换了位置,当前虚拟屏所处位置已经不适用于用户操作,进而标识检测结果,以便于感知用户操作过程中发生的变化,进而保证用户操作过程中的便利性和舒适性。
步骤S150,赋予预设的位置值,并存储。
本实施例中,为标识不存在于虚拟屏的检测结果,将未识别出标记的检测赋予预设的位置值,以方便后续的数据处理,该预设的位置值可以是Z轴坐标为零的三维坐标,也可以是三维坐标中的数值均为零,可根据实际的应用需要进行灵活的调整。
步骤S170,存储标记的触点位置。
在另一个实施例中,存储的位置数据包括位置值和触点位置,上述步骤S10还包括:判断存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据。
本实施例中,在存储的位置数据中,若存储的位置数据长度达到了预设长度,则需要将存储的部分位置数据进行清除,所清除的位置数据为存储的所有位置数据中最早检测得到的。一实施例中,位置数据可以是以队列的形式进行存储,检测时间较早的位置数据存储于队列的前端,而检测时间较晚的位置数据存储于队列的未端,仅清除位于前端的位置数据在保证了后续处理过程的前提下释放存储空间。例如,预设长度可以为100,即当判断到存储的位置数据长度达到了100个,将清除最前端的位置数据,以使得后续存储于未端的位置数据所形成的队列长度未超出预设长度。
步骤S30,提取连续的位置值。
本实施例中,在存储的多个位置数据中提取与赋予的预设位置值相匹配的位置数据,所提取到的位置数据是与一段连续的标记检测对应的。
在一个实施例中,上述步骤S30的具体过程包括:
判断存储的位置数据中是否存在连续的位置值,若是,则提取连续的位置值,若否,则返回步骤S10。
本实施例中,判断存储的位置数据中是否存在连续的位置值的具体过程包括:逐一检测存储的位置数据,并判断是否连续检测得到与赋予的预设位置值相匹配的位置数据,若是,则提取处于连续状态,并且与赋予的预设位置值相匹配的一段位置数据。在优选的实施例中,为了进一步方便位置数据的提取,将以当前检测得到的位置数据为起始,在存储的位置数据中进行逆序检测,进而提高检测的效率。
步骤S50,根据提取的位置值调整虚拟屏的位置。
本实施例中,提取到的位置值所对应的标记区域均不存在,即在对应的虚拟屏检测中不能在虚拟屏中检测到标记,因此,通过提取的一段位置值感知到当前虚拟屏的位置不适用于用户触控操作的可能性非常大,进而触发虚拟屏的位置调整。
在实际的交互过程中,当发生用户位置变换时,可通过用户所施加的虚拟屏标定动作对虚拟屏进行重新定位,而该虚拟屏标定动作产生的数据形式是与赋予的预设触点位置相匹配的触点位置,相对的,虚拟屏标定动作是在设定的时间中遮挡了用户所附带的标记或者撤销了用户所附带的标记,进而使得标记在虚拟屏中消失一定时间。例如,虚拟屏标定动作可以是:标记附带于用户的右手,在虚拟屏中,用户将左手遮挡于右手面前,附带了标记的右手在左手手掌上划一道线。这一虚拟屏标定动作将使得标记的检测过程中多个检测结果被赋予预设的位置值,并存储,此时,提取得到的位置值对应了用户的虚拟屏标定动作,也可以从提取得到的位置值中感知用户当前所处的位置,进而实现虚拟屏的重新定位。
如图3所示,在一个实施例中,上述步骤S50的具体过程包括:
步骤S510,获取与提取的位置值相邻的第一触点位置和第二触点位置,并得到第一触点位置和第二触点位置之间的距离。
本实施例中,第一触点位置和第二触点位置之间的距离包括了三维坐标系中的物理距离和/或以位置值数量体现的数量长度。例如,存储的多个触点位置中Z轴坐标为75,73,0,0,0,……,0,65,则连续赋予的位置值中Z轴坐标序列为“0,0,0,……,0”,第一触点位置的Z轴坐标是与上述连续赋予的位置值中Z坐标序列前端相邻的Z轴坐标,即“73”,第二触点位置是与上述连续赋予的位置值中Z轴坐标序列末端相邻的Z轴坐标,即“65”。
为感知用户当前所处的位置,对三维坐标系中的物理距离而言,将获取连续提取的一段位置值中与前端相邻的第一触点位置以及与未端相邻的第二触点位置,进而通过对应的坐标信息计算第一触点位置和第二触点位置之间的物理距离,在用户通过左手和右手实现的虚拟屏标定动作中,该物理距离是与用户在手掌中划过的宽度大致相等的。对以位置值数量体现的数量长度而言,获取上述提取的位置值数量就是第一触点位置和第二触点位置之间的距离。
步骤S530,判断该距离是否处于约束范围,若是,则进入步骤S550,若否,则返回步骤S10。
本实施例中,约束范围是与距离相对应的各种约束条件,用于过滤计算得到的距离,感知用户所触发的虚拟屏标定动作。
判断第一触点位置和第二触点位置之间的距离是否处于设定的约束范围中,若是,则说明提取的位置值对应的用户操作为虚拟屏标定动作,进而根据提取的位置值进行虚拟屏的调整,若否,则说明对应的用户操作被某一物品偶然遮挡的可能性较大,此时,将继续进行标记的检测,不会进行虚拟屏位置的调整。通过约束范围过滤用户操作,准确地得到虚拟屏标定动作,有效地屏蔽了误操作。一实施例中,用于判断的距离包括第一触点位置和第二触点位置在三维坐标系的物理距离,相应的,约束范围包括物理距离范围,该物理距离范围可以为4厘米至15厘米。
进一步的,约束范围还包括了数量范围,第一触点位置和第二触点位置之间的距离还可用数量长度形式表征,以便于保证用户虚拟屏标定动作的更精确识别,即当判断到第一触点位置和第二触点位置之间在三维坐标系的物理距离处于物理距离范围时,进一步判断提取的位置值数量是否处于数量范围,若是,则确定相应的用户操作即为虚拟屏标定动作,需要进行虚拟屏位置的调整。例如,用户的右手划过左手手掌所花费的时间大约为1秒,此时根据检测频率30可以获知在1秒之内将有1至30幅图像采集装置采集得到的图像不具备标记区域,进而也不能识别出标记区域对应的触点位置,因此,存储的多个位置数据将会出现1至30个连续赋予的位置值,相应的,数量范围可设定为1至30。
在上述距离的判定过程中,可以仅仅通过三维坐标系中的物理距离或数量长度实现,也可以通过三维坐标系中的物理距离和数量长度进行用户操作的双重过滤,因此将根据实际需要的精确度进行灵活地调整。
步骤S550,计算第一触点位置和第二触点位置之间的中心位置。
本实施例中,在确定用户当前所处位置发生了变化之后,将根据第一触点位置的三维坐标和第二触点位置的三维坐标计算得到以三维坐标形式表现的中心位置,进而根据中心位置的三维坐标进行虚拟屏的位置调整。
如图4所示,在一个施例中,上述步骤S550的具体过程包括:
步骤S551,在以虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标。
本实施例中,根据三维坐标系中的坐标变换计算得到中心位置所对应的X轴坐标和Y轴坐标。具体的,假设第一触点位置A所对应的三维坐标为(XA,YA,ZA),第二触点位置B所对应的三维坐标为(XB,YB,ZB),第一触点位置和第二触点位置之间中心位置的X轴坐标可以通过公式X0=(XA+XB)/2计算得到,Y轴坐标可以通过公式Y0=(YA+YB)/2计算得到。
步骤S553,获取第一触点位置和第二触点位置在三维坐标系的Z轴坐标,并计算中心位置的Z轴坐标。
本实施例中,中心位置中Z轴坐标也可通过公式Z0=(ZA+ZB)/2计算得到。
在另一个实施例中,上述步骤S553之后还包括:将中心位置的Z轴坐标调整预设数值。
本实施例中,对计算得到的中心位置进行适当调整,以使其更加符合用户的操作习惯。具体地,用户在面向虚拟屏进行操作时,通常稍微向前伸展产生产生触控操作,因此,可将计算得到的Z轴坐标调整预设数值,将中心位置从用户当前所处位置前移预设数值的距离,以进一步提高用户操作上的方便性,优选的实施例中,该预设数值为5厘米。
根据Z轴的正方向进行中心位置的Z轴坐标计算,即Z轴的正方向与用户面向显示屏幕时的前方相同,则在以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中识别得到的标记区域所对应的触点位置中Z轴坐标值将为负值,此时,调整后的Z轴坐标为Z0+5厘米。
Z轴的正方向与用户面向显示屏幕时的前方相反,则在以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中识别得到的标记区域所对应的触点位置中Z轴坐标将为正值,此时,调整后的Z轴坐标为Z0-5厘米。
步骤S570,将虚拟屏的中心点调整至计算得到的中心位置。
本实施例中,根据计算得到的中心位置,将虚拟屏这一平面从当前所处位置进行平移,使得虚拟屏的中心点移动到中心位置,即中心点的三维坐标将与中心位置的三维坐标相一致。
如图5所示,在一个实施例中,一种虚拟屏的标定系统,包括识别模块10、提取模块30以及调整模块50。
识别模块10,用于检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值。
本实施例中,虚拟屏为虚拟的立体屏幕中与用户相对的平面,例如,立体屏幕可以是一定大小的长方体三维空间或者正方体三维空间,其位于以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中。用户可通过触摸虚拟屏产生触摸事件,进而实现与被控装置的交互。触摸事件包括用户在虚拟屏上的各种手势,该手势可以是滑动手势等。具体地,触摸事件可以是图标选定事件、点击事件以及图标移动事件等。在对虚拟屏进行触控操作时,用户将附带标记,通过标记在虚拟屏中实现触控操作的输入,标记可以是反光材料或者用户的某一身体部位。用户通过标记在虚拟屏中进行触控操作时,图像采集装置将会采集到具有标记区域的图像,标记区域是采集得到的图像中标记所对应的图像区域。
虚拟屏中的检测结果包括了标记的触点位置以及赋予的位置值。具体的,识别模块10通过采集到的包含标记区域的图像检测虚拟屏中的标记,以得到标记所对应的触点位置,该触点位置可以表现为三维坐标形式。若虚拟屏中没有发生用户的触控操作,识别模块10将不能检测到虚拟屏中的标记,则为当前所进行的检测赋予预设的位置值,以标识当前的检测结果为空。一实施例中,预设的位置值可以是三维坐标中Z轴坐标的数值为零,也可以是三维坐标的数值均为零。在没有检测到虚拟屏中的标记时,识别模块10将对应的检测结果置进行清零处理,可以检测结果中的Z轴坐标设定为零,从而标识Z轴坐标为零的位置值即为虚拟屏中未出现标记时对应的检测结果;也可以将三维坐标均设定为零。
如图6所示,在一个实施例中,上述识别模块10包括检测单元110、触点判断单元130、存储单元150以及处理单元170。
检测单元110,用于检测标记。
本实施例中,检测单元110,对采集到的包含标记区域的图像进行检测,以得到虚拟屏中标记的触点位置。但是,在用户附带的标记被遮挡时将无法从采集到的图像中识别出标记区域以及该标记所对应的触点位置。例如,若虚拟屏与显示屏幕之间的距离为140CM,由于识别距离为59CM,因此能够识别到标记与显示屏幕之间的距离为75CM,此时,所得到的触点位置中Z轴坐标为75。而在标记被某一物体遮挡的场景下是无法识别到图像中的标记区域的,此时的检测结果为空。
具体地,在触点的检测过程中,检测单元110根据预先设定的检测频率持续进行检测,并且根据用户交互过程中对实时性的要求进行调整,进而调整感知用户操作的精确性。一实施例中,检测频率可设定为30,即每秒进行30次标记的检测,进而通过每秒30次的检测可以获知用户所附带的标记运动情况。对于每一次检测所得到的检测结果,均需要判断该次检测中虚拟屏是否存在标记,以准确地感知用户行为。
触点判断单元130,用于判断标记是否存在,若是,则通知存储单元150,若否,则通知处理单元170。
本实施例中,触点判断单元130根判断是否检测得到标记,若是,则得到用户通过标记进行触控操作产生的触点位置,并按照检测的时间顺序存储,若没有检测到标记,说明用户可能变换了位置,当前虚拟屏所处的位置已经不适用于用户操作,进而标识检测结果,以便于感知用户操作过程中发生的变化,进而保证用户操作过程中的便利性和舒适性。
存储单元150,用于存储标记的触点位置。
处理单元170,用于赋予预设的位置值。
存储单元150还用于存储赋予的位置值。
本实施例中,为标识未不存在于虚拟屏的检测结果,处理单元170将未识别出标记的检测赋予预设的位置值,以方便后续的数据处理,该预设的位置值可以是Z轴坐标为零的三维坐标,也可以是三维坐标中的数值均为零,可根据实际的应用需要进行灵活的调整。
在另一个实施例中,上述识别模块10还包括清除单元,该清除单元用于判断存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据;该位置数据包括了位置值和触点位置。
本实施例中,在存储的位置数据中,若存储的位置数据长度达到了预设数据,则需要清除单元将存储的部分位置数据进行清除,所清除的位置数据为存储的所有位置数据中最早检测得到的。一实施例中,位置数据可以是以队列的形式进行存储,检测时间较早的位置数据存储于队列的前端,而检测时间较晚的位置数据存储于队列的未端,清除单元仅清除位于前端的位置数据在保证了后续处理过程的前提下释放存储空间。例如,预设长度可以为100,即当判断到存储的位置数据长度达到了100个,清除单元将清除最前端的位置数据,以使得后续存储于未端的位置数据所形成的队列长度未超出预设长度。
提取模块30,用于提取连续的位置值。
本实施例中,提取模块30在存储的多个位置数据中提取与赋予的预设位置值相匹配的位置数据,所提取到的位置数据是与一段连续的标记检测对应的。
在一个实施例中,上述提取模块30还用于判断存储的位置数据中是否存在连续的位置值,若是,则提取连续的位置值,若否,则通知识别模块10。
本实施例中,提取模块30逐一检测存储的位置数据,并判断是否连续检测得到与赋予的预设位置值相匹配的位置数据,若是,则提取处于连续状态,并且与赋予的预设位置值相匹配的一段位置数据。在优选的实施例中,为了进一步方便位置数据的提取,提取模块30将以当前检测得到的位置数据为起始,在存储的位置数据中进行逆序检测,进而提高检测的效率。
调整模块50,用于根据提取的位置值调整虚拟屏的位置。
本实施例中,提取到的位置值所对应的标记区域均不存在,即在对应的虚拟屏检测中不能在虚拟屏中检测到标记,因此,通过提取的一段位置值感知到当前虚拟屏的位置不适用于用户触控操作的可能性非常大,进而触发调整模块50对虚拟屏的位置调整。
在实际的交互过程中,当发生用户位置变换时,调整模块50可通过用户所施加的虚拟屏标定动作对虚拟屏进行重新定位,而该虚拟屏标定动作产生的数据形式是与赋予的预设触点位置相匹配的触点位置,相对的,虚拟屏标定动作是在设定的时间中遮挡了用户所附带的标记或者撤销了用户所附带的标记,进而使得标记在虚拟屏中消失一定时间。例如,虚拟屏标定动作可以是:标记附带于用户的右手,在虚拟屏中,用户将左手遮挡于右手面前,附带了标记的右手在左手手掌上划一道线。这一虚拟屏标定动作将使得标记的检测过程中多个检测结果被赋予预设的位置值,并存储,此时,提取得到的位置值对应了用户的虚拟屏标定动作,也可以从提取得到的位置值中感知用户当前所处的位置,进而实现虚拟屏的重新定位。
如图7所示,在一个实施例中,上述调整模块50包括获取单元510、距离判断单元530、运算单元550以及中心调整单元570。
获取单元510,用于获取与提取的位置值相邻的第一触点位置和第二触点位置,并得到第一触点位置和第二触点位置之间的距离。
本实施例中,第一触点位置和第二触点位置之间的距离包括了三维坐标系中的物理距离和/或以位置值数量体现的数量长度。例如,存储的多个触点位置中Z轴坐标为75,73,0,0,0,……,0,65,则连续赋予的位置值中Z轴坐标序列为“0,0,0,……,0”,第一触点位置的Z轴坐标是与上述连续赋予的位置值中Z坐标序列前端相邻的Z轴坐标,即“73”,第二触点位置是与上述连续赋予的位置值中Z轴坐标序列末端相邻的Z轴坐标,即“65”。
为感知用户当前所处的位置,对三维坐标系中的物理距离而言,获取单元510将获取连续提取的一段位置值中与前端相邻的第一触点位置以及与未端相邻的第二触点位置,进而通过对应的坐标信息计算第一触点位置和第二触点位置之间的物理距离,在用户通过左手和右手实现的虚拟屏标定动作中,该距离是与用户在手掌中划过的宽度大致相等的。对以位置值数量体现的数量长度而言,获取单元510获取上述提取的位置值数量就是第一触点位置和第二触点位置之间的距离。
距离判断单元530,用于判断该距离是否处于约束范围,若是,则通知运算单元550,若否,则通知识别模块10。
本实施例中,约束范围是与距离相对应的各种约束条件,用于过滤计算得到的距离,感知用户所触发的虚拟屏标定动作。
距离判断单元530判断第一触点位置和第二触点位置之间的距离是否处于设定的约束范围中,若是,则说明提取的位置值对应的用户操作为虚拟屏标定动作,进而根据提取的位置值进行虚拟屏的调整,若否,则说明对应的用户操作被某一物品偶然遮挡的可能性较大,此时,将通知识别模块10继续进行标记的检测,不会进行虚拟屏位置的调整。通过约束范围过滤用户操作,准确地得到虚拟屏标定动作,有效地屏蔽了误操作。一实施例中,用于判断的距离包括第一触点位置和第二触点位置在三维坐标系的物理距离,相应的,约束范围包括了物理距离范围,该物理距离范围可以为4厘米至15厘米。
进一步的,约束范围还包括了数量范围,第一触点位置和第二触点位置之间的距离还可用数量长度的形式表征,以便于保证用户虚拟屏标定动作的更精确识别,即当距离判断单元530判断到第一触点位置和第二触点位置之间在三维坐标系的物理距离处于物理距离范围时,进一步判断提取的位置值数量是否处于数量范围,若是,则确定相应的用户操作即为虚拟屏标定动作,需要进行虚拟屏位置的调整。例如,用户的右手划过左手手掌所花费的时间大约为1秒,此时根据检测频率30可以获知在1秒之内将有1至30幅图像采集装置采集得到的图像不具备标记区域,进而也不能识别出标记区域对应的触点位置,因此,存储的多个位置数据将会出现1至30个连续赋予的位置值,相应的,数量范围可设定为1至30。
在上述距离的判定过程中,可以仅仅通过三维坐标系中的物理距离或数量长度实现,也可以通过三维坐标系中的物理距离和数量长度进行用户操作的双重过滤,因此将根据实际需要的精确度进行灵活地调整。
运算单元550,用于计算第一触点位置和第二触点位置之间的中心位置。
本实施例中,在确定用户当前所处位置发生了变化之后,运算单元550将根据第一触点位置的三维坐标和第二触点位置的三维坐标计算得到以三维坐标形式表现的中心位置,进而根据中心位置的三维坐标进行虚拟屏的位置调整。
在一个实施例中,运算单元550还用于在以虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标,并获取第一触点位置和第二触点位置在三维坐标系的Z轴坐标,并计算中心位置的Z轴坐标。
本实施例中,运算单元550根据三维坐标系中的坐标变换计算得到中心位置所对应的X轴坐标和Y轴坐标。具体的,假设第一触点位置A所对应的三维坐标为(XA,YA,ZA),第二触点位置B所对应的三维坐标为(XB,YB,ZB),第一触点位置和第二触点位置之间中心位置的X轴坐标可以通过公式X0=(XA+XB)/2计算得到,Y轴坐标可以通过公式Y0=(YA+YB)/2计算得到,中心位置中Z轴坐标也可通过公式Z0=(ZA+ZB)/2计算得到。
在另一个实施例中,上述运算单元550还用于将中心位置的Z轴坐标调整预设数值。
本实施例中,运算单元550对计算得到的中心位置进行适当调整,以使其更加符合用户的操作习惯。具体地,用户在面向虚拟屏进行操作时,通常稍微向前伸展产生产生触控操作,因此,运算单元550可将计算得到的Z轴坐标调整预设数值,将中心位置从用户当前所处位置前移预设数值的距离,以进一步提高用户操作上的方便性,优选的实施例中,该预设数值为5厘米。
运算单元550根据Z轴的正方向进行中心位置的Z轴坐标计算,即Z轴的正方向与用户面向显示屏幕时的前方相同,则在以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中识别得到的标记区域所对应的触点位置中Z轴坐标值将为负值,此时,调整后的Z轴坐标为Z0+5厘米。
Z轴的正方向与用户面向显示屏幕时的前方相反,则在以显示屏幕所在平面为XY平面,图像采集装置所在的位置为原点的三维坐标系中识别得到的标记区域所对应的触点位置中Z轴坐标将为正值,此时,调整后的Z轴坐标为Z0-5厘米。
中心调整单元570,于将虚拟屏的中心点调整至计算得到的中心位置。
本实施例中,中心调整单元570根据计算得到的中心位置,将虚拟屏这一平面从当前所处位置进行平移,使得虚拟屏的中心点移动到到中心位置,即中心点的三维坐标将与中心位置的三维坐标相一致。
上述虚拟屏的标定方法及系统,在虚拟屏中进行标记的检测,并在未识别到标记时赋予预设的位置值,通过提取一段连续预设的位置值来触发虚拟屏位置的调整,进而实现虚拟屏的重新标定,以满足用户的操作需求,提高操作上的方便性。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。