[go: up one dir, main page]

CN103294377B - 虚拟屏的标定方法及系统 - Google Patents

虚拟屏的标定方法及系统 Download PDF

Info

Publication number
CN103294377B
CN103294377B CN201210047896.XA CN201210047896A CN103294377B CN 103294377 B CN103294377 B CN 103294377B CN 201210047896 A CN201210047896 A CN 201210047896A CN 103294377 B CN103294377 B CN 103294377B
Authority
CN
China
Prior art keywords
virtual screen
contact position
positional value
mark
axis coordinate
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.)
Active
Application number
CN201210047896.XA
Other languages
English (en)
Other versions
CN103294377A (zh
Inventor
陈翔
师丹玮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Taishan Sports Technology Co.,Ltd.
Original Assignee
SHENZHEN TOL TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN TOL TECHNOLOGY Co Ltd filed Critical SHENZHEN TOL TECHNOLOGY Co Ltd
Priority to CN201210047896.XA priority Critical patent/CN103294377B/zh
Publication of CN103294377A publication Critical patent/CN103294377A/zh
Application granted granted Critical
Publication of CN103294377B publication Critical patent/CN103294377B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

本发是提供了一种虚拟屏的标定方法及系统,所述标定方法包括:检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;提取连续的位置值;根据所述提取的位置值调整虚拟屏的位置。所述系统包括:识别模块,用于检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;提取模块,用于提取连续的位置值;调整模块,用于根据所述提取的位置值调整虚拟屏的位置。采用本发明提高了用户操作上的方便性。

Description

虚拟屏的标定方法及系统
【技术领域】
本发明涉及人机交互技术,特别是涉及一种虚拟屏的标定方法及系统。
【背景技术】
随着人机交互技术的不断发展,人机交互过程中操作指令的获取方式也在不断地发生变化,由简单的键盘输入操作指令这一获取方式演变为通过虚拟屏输入操作指令的方式,以使得人机交互过程可随手操控。
在通过交互设备与被控装置进行交互的过程中,可在交互设备与被控制装置之间虚拟出一块触摸屏,即形成与被控装置中的显示屏幕相区别的虚拟屏,该虚拟屏位于显示屏幕前方,用户通过交互设备在虚拟屏上的操控实现操作指令的输入。然而,在虚拟屏获取操作指令的过程中,虚拟屏所处的位置是固定不变的,用户的使用位置是会发生变化的,例如,用户从坐在沙发上的使用位置变换为站着的使用位置。使用位置发生了变化之后,可能存在着虚拟屏所处的位置与使用位置不相适应缺陷,进而导致用户在操作上的不方便。
【发明内容】
基于此,有必要提供一种能提高操作上的方便性的虚拟屏的标定方法。
此外,还有必要提供一种能提高操作上的方便性的虚拟屏的标定系统。
一种虚拟屏的标定方法,包括如下步骤:检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;提取连续的位置值;根据所述提取的位置值调整虚拟屏的位置。
优选地,所述检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值的步骤包括:检测标记;判断所述标记是否存在,若是,则存储所述标记的触点位置,若否,则赋予预设的位置值,并存储。
优选地,所述检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值的步骤还包括:判断所述存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据;所述存储的位置数据包括位置值和触点位置。
优选地,所述提取连续的位置值的步骤包括:判断所存储的位置数据中是否存在连续位置值,若是,则提取所述连续的位置值。
优选地,所述根据所述提取的位置值调整虚拟屏的位置的步骤包括:获取与所述提取的位置值相邻的第一触点位置和第二触点位置,并得到所述第一触点位置和第二触点位置之间的距离;判断所述距离是否处于约束范围,若是,则计算所述第一触点位置和第二触点位置之间的中心位置;将所述虚拟屏的中心点调整至所述计算得到的中心位置。
优选地,所述计算所述第一触点位置和第二触点位置的具体过程包括:在以所述虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标;获取第一触点位置和第二触点位置在所述三维坐标系的Z轴坐标,并计算所述中心位置的Z轴坐标。
优选地,所述计算所述中心位置的Z轴坐标的步骤之后还包括:将所述中心位置的Z轴坐标调整预设数值。
一种虚拟屏的标定系统,包括:识别模块,用于检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;提取模块,用于提取连续的位置值;调整模块,用于根据所述提取的位置值调整虚拟屏的位置。
优选地,所述识别模块包括:检测单元,用于检测标记;触点判断单元,用于判断所述标记是否存在,若是,则通知存储单元,若否,则通知处理单元;所述存储单元用于存储所述标记的触点位置;所述处理单元用于赋予预设的位置值;所述存储单元还用于存储赋予的位置值。
优选地,所述识别模块还包括:清除单元,用于判断所述存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据;所述存储的位置数据包括位置值和触点位置。
优选地,所述提取模块还用于判断所述存储的位置数据中是否存在连续的位置值,若是,则提取所述连续的位置值。
优选地,所述调整模块包括:获取单元,用于获取与所述提取的位置值相邻的第一触点位置和第二触点位置,并得到所述第一触点位置和第二触点位置之间的距离;距离判断单元,用于判断所述距离是否处于约束范围,若是,则通知运算单元;所述运算单元用于计算所述第一触点位置和第二触点位置之间的中心位置;中心调整单元,用于将所述虚拟屏的中心点调整至所述计算得到的中心位置。
优选地,所述运算单元还用于在以所述虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标,并获取第一触点位置和第二触点位置在所述三维坐标系的Z轴坐标,并计算所述中心位置的Z轴坐标。
优选地,所述运算单元还用于将所述中心位置的Z轴坐标调整预设数值。
上述虚拟屏的标定方法及系统,在虚拟屏中进行标记的检测,并在未识别到标记时赋予预设的位置值,通过提取一段连续预设的位置值来触发虚拟屏位置的调整,进而实现虚拟屏的重新标定,以满足用户的操作需求,提高操作上的方便性。
【附图说明】
图1为一个实施例中虚拟屏的标定方法的流程图;
图2为图1中步骤S10的方法流程图;
图3为图1中步骤S50的方法流程图;
图4为图3中步骤S550的方法流程图;
图5为一个实施例中虚拟屏的标定系统的结构示意图;
图6为图5中识别模块的结构示意图;
图7为图5中调整模块的结构示意图。
【具体实施方式】
如图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根据计算得到的中心位置,将虚拟屏这一平面从当前所处位置进行平移,使得虚拟屏的中心点移动到到中心位置,即中心点的三维坐标将与中心位置的三维坐标相一致。
上述虚拟屏的标定方法及系统,在虚拟屏中进行标记的检测,并在未识别到标记时赋予预设的位置值,通过提取一段连续预设的位置值来触发虚拟屏位置的调整,进而实现虚拟屏的重新标定,以满足用户的操作需求,提高操作上的方便性。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种虚拟屏的标定方法,包括如下步骤:
检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;
提取连续的位置值;
根据所述提取的位置值调整虚拟屏的位置,
其中,所述根据所述提取的位置值调整虚拟屏的位置的步骤包括:
获取与所述提取的位置值相邻的第一触点位置和第二触点位置,并得到所述第一触点位置和第二触点位置之间的距离;
判断所述距离是否处于约束范围,若是,则计算所述第一触点位置和第二触点位置之间的中心位置;
将所述虚拟屏的中心点调整至所述计算得到的中心位置。
2.根据权利要求1所述的虚拟屏的标定方法,其特征在于,所述检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值的步骤包括:
检测标记;
判断所述标记是否存在,若是,则存储所述标记的触点位置,若否,则
赋予预设的位置值,并存储。
3.根据权利要求2所述的虚拟屏的标定方法,其特征在于,所述检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值的步骤还包括:
判断所述存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据;
所述存储的位置数据包括位置值和触点位置。
4.根据权利要求1所述的虚拟屏的标定方法,其特征在于,所述提取连续的位置值的步骤包括:
判断所存储的位置数据中是否存在连续位置值,若是,则提取所述连续的位置值。
5.根据权利要求1所述的虚拟屏的标定方法,其特征在于,所述计算所述第一触点位置和第二触点位置的具体过程包括:
在以所述虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标;
获取第一触点位置和第二触点位置在所述三维坐标系的Z轴坐标,并计算所述中心位置的Z轴坐标。
6.根据权利要求5所述的虚拟屏的标定方法,其特征在于,所述计算所述中心位置的Z轴坐标的步骤之后还包括:
将所述中心位置的Z轴坐标调整预设数值。
7.一种虚拟屏的标定系统,其特征在于,包括:
识别模块,用于检测虚拟屏中的标记,并在未识别到标记时赋予预设的位置值;
提取模块,用于提取连续的位置值;
调整模块,用于根据所述提取的位置值调整虚拟屏的位置,
其中,所述调整模块包括:
获取单元,用于获取与所述提取的位置值相邻的第一触点位置和第二触点位置,并得到所述第一触点位置和第二触点位置之间的距离;
距离判断单元,用于判断所述距离是否处于约束范围,若是,则通知运算单元;
所述运算单元用于计算所述第一触点位置和第二触点位置之间的中心位置;
中心调整单元,用于将所述虚拟屏的中心点调整至所述计算得到的中心位置。
8.根据权利要求7所述的虚拟屏的标定系统,其特征在于,所述识别模块包括:
检测单元,用于检测标记;
触点判断单元,用于判断所述标记是否存在,若是,则通知存储单元,若否,则通知处理单元;
所述存储单元用于存储所述标记的触点位置;
所述处理单元用于赋予预设的位置值;
所述存储单元还用于存储赋予的位置值。
9.根据权利要求8所述的虚拟屏的标定系统,其特征在于,所述识别模块还包括:
清除单元,用于判断所述存储的位置数据长度是否达到预设长度,若是,则清除位于前端的位置数据;
所述存储的位置数据包括位置值和触点位置。
10.根据权利要求9所述的虚拟屏的标定系统,其特征在于,所述提取模块还用于判断所述存储的位置数据中是否存在连续的位置值,若是,则提取所述连续的位置值。
11.根据权利要求7所述的虚拟屏的标定系统,其特征在于,所述运算单元还用于在以所述虚拟屏所在平面为XY平面的三维坐标系中分别根据第一触点位置和第二触点位置中的X轴坐标和Y轴坐标计算得到中心位置的X轴坐标和Y轴坐标,并获取第一触点位置和第二触点位置在所述三维坐标系的Z轴坐标,并计算所述中心位置的Z轴坐标。
12.根据权利要求11所述的虚拟屏的标定系统,其特征在于,所述运算单元还用于将所述中心位置的Z轴坐标调整预设数值。
CN201210047896.XA 2012-02-28 2012-02-28 虚拟屏的标定方法及系统 Active CN103294377B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210047896.XA CN103294377B (zh) 2012-02-28 2012-02-28 虚拟屏的标定方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210047896.XA CN103294377B (zh) 2012-02-28 2012-02-28 虚拟屏的标定方法及系统

Publications (2)

Publication Number Publication Date
CN103294377A CN103294377A (zh) 2013-09-11
CN103294377B true CN103294377B (zh) 2016-03-23

Family

ID=49095351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210047896.XA Active CN103294377B (zh) 2012-02-28 2012-02-28 虚拟屏的标定方法及系统

Country Status (1)

Country Link
CN (1) CN103294377B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115268751A (zh) * 2022-03-17 2022-11-01 绍兴埃瓦科技有限公司 一种基于虚拟显示平面的操控方法与设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595334A (zh) * 2003-02-24 2005-03-16 株式会社东芝 使操作员能够不操作设备而发出指令的操作识别系统
CN1912816A (zh) * 2005-08-08 2007-02-14 北京理工大学 一种基于摄像头的虚拟触摸屏系统
CN1977239A (zh) * 2004-06-29 2007-06-06 皇家飞利浦电子股份有限公司 3-d接触交互中的变焦
CN101609363A (zh) * 2008-06-16 2009-12-23 林志雄 输入装置及输入方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7973773B2 (en) * 1995-06-29 2011-07-05 Pryor Timothy R Multipoint, virtual control, and force based touch screen applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595334A (zh) * 2003-02-24 2005-03-16 株式会社东芝 使操作员能够不操作设备而发出指令的操作识别系统
CN1977239A (zh) * 2004-06-29 2007-06-06 皇家飞利浦电子股份有限公司 3-d接触交互中的变焦
CN1912816A (zh) * 2005-08-08 2007-02-14 北京理工大学 一种基于摄像头的虚拟触摸屏系统
CN101609363A (zh) * 2008-06-16 2009-12-23 林志雄 输入装置及输入方法

Also Published As

Publication number Publication date
CN103294377A (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
CN102057347B (zh) 图像识别装置、操作判断方法及程序
CA2768893C (en) Image recognition apparatus, operation determining method and program
EP4160530B1 (en) Gesture recognition device, system, and program for same
TW201120681A (en) Method and system for operating electric apparatus
JP2013250882A5 (zh)
CN103076949A (zh) 车辆操作输入设备
CN103226387A (zh) 基于Kinect的视频人手指尖定位方法
KR20150022003A (ko) 단말 및 인터페이스 조작 관리 방법
CN103365411A (zh) 信息输入设备、信息输入方法和计算机程序
CN107450714A (zh) 基于增强现实和图像识别的人机交互支撑测试系统
CN104765541A (zh) 一种识别左手或右手操作手机的方法及系统
CN104199547A (zh) 人机交互式虚拟触控装置、系统及方法
CN105242776A (zh) 一种智能眼镜的控制方法及智能眼镜
CN107797748B (zh) 虚拟键盘输入方法和装置及机器人
CN104199548A (zh) 人机交互式虚拟触控装置、系统及方法
CN106354246A (zh) 一种终端显示控制方法、装置及终端
CN105807989A (zh) 一种手势触控方法和系统
CN103389798A (zh) 一种操作移动终端的方法及装置
CN103294377B (zh) 虚拟屏的标定方法及系统
CN102968222A (zh) 一种基于深度摄像机的多点触摸设备
KR20120048190A (ko) 동작인식을 이용한 차량 기능 제어 시스템
US20120176341A1 (en) Method and apparatus for camera projector system for enabling an interactive surface
CN104063037B (zh) 一种操作命令识别方法、装置和穿戴式电子设备
CN103389793B (zh) 人机交互方法和系统
CN104375631A (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
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: 518000 Shenzhen, Nanshan District Province, science and technology, South Road, the building of the big square, building 02, room 4,

Patentee after: SHENZHEN TAISHAN SPORTS TECHNOLOGY CORP., LTD.

Address before: 518000 Shenzhen, Nanshan District Province, science and technology, South Road, the building of the big square, building 02, room 4,

Patentee before: Shenzhen Tol Technology Co., Ltd.

CP01 Change in the name or title of a patent holder

Address after: 518000 room 02, 4th floor, Fangda building, Keji South 12th Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Taishan Sports Technology Co.,Ltd.

Address before: 518000 room 02, 4th floor, Fangda building, Keji South 12th Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: SHENZHEN TAISHAN SPORTS TECHNOLOGY Corp.,Ltd.

CP01 Change in the name or title of a patent holder