CN100524181C - 光学运动感知方法 - Google Patents

光学运动感知方法 Download PDF

Info

Publication number
CN100524181C
CN100524181C CNB2006800009739A CN200680000973A CN100524181C CN 100524181 C CN100524181 C CN 100524181C CN B2006800009739 A CNB2006800009739 A CN B2006800009739A CN 200680000973 A CN200680000973 A CN 200680000973A CN 100524181 C CN100524181 C CN 100524181C
Authority
CN
China
Prior art keywords
pixel
initial point
template
pixels
row
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.)
Expired - Fee Related
Application number
CNB2006800009739A
Other languages
English (en)
Other versions
CN101040246A (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.)
APEXONE MICROELECTRONICS Co Ltd
Apexone Microelectronics Ltd
Original Assignee
APEXONE MICROELECTRONICS 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 APEXONE MICROELECTRONICS Co Ltd filed Critical APEXONE MICROELECTRONICS Co Ltd
Publication of CN101040246A publication Critical patent/CN101040246A/zh
Application granted granted Critical
Publication of CN100524181C publication Critical patent/CN100524181C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

一种运动感知方法通过采集工作表面的参考图像(参考帧)和采样(采样帧)图像来感知鼠标相对于该表面的运动。此方法平移参考图像到排列成某种模板的相邻像素位置,并且比较采样图像和在原点位置的参考图像及在平移像素位置的参考图像。从比较结果我们可以得到,用于表示物体相对于表面位移的运动矢量。在具体实施例中,模板包括排列成五行五列且总的像素数小于二十五的原点位置和相邻像素位置。在另一具体实施例中,跟踪方法基于预测运动矢量的方向,选择四种延长模板中的一种模板。在另一具体实施例中,感知或跟踪方法基于预测运动矢量的方向,选择八种带方向的模板中的一种模板。

Description

光学运动感知方法
技术领域
本发明涉及一种运动感知方法,特别是指应用在计算机指示装置上的光学运动感知方法。
背景技术
计算机指示装置,一般是指鼠标,是最为常用的计算机接口设备之一。当用户在工作表面上移动鼠标时,鼠标内的运动感知装置便感知此运动,由此移动计算机屏幕上的指针。一般来讲,现有技术中有两种运动感知装置,机械装置和光学装置。
机械感知装置一般包括:位于鼠标底部的橡皮球以及以机械方式连接在橡皮球上的两个滚轮。当鼠标在工作表面如鼠标垫或桌面上移动时,橡皮球滚动,这时滚轮把橡皮球的转动转换为电信号,并控制计算机屏幕上指针的运动。然而,机械鼠标很容易损坏,并且由于灰尘积累以及磨损会引起性能的降低。
光学感知装置一般包括:一个光发射装置(如发光二极管)和一个光敏检测器阵列。光敏检测器阵列可以检测鼠标垫或桌面的特征。当用户在工作表面上移动鼠标时,表面特征会相对于光敏检测器阵列发生移动。一种实现方式是将光敏检测器沿两个正交的方向线性排列,每个方向只有一个像素的宽度,通过状态机来比较线性阵列中光敏检测器的输出信号,从而可以感知鼠标相对于工作表面的运动。这种线性排列方法易受鼠标运动的速度和方式的影响,它的性能和可靠性相对于传统的机械感知装置都不令人满意。
另外一种实现方法就是将光敏检测器排列成二维阵列,运动感知和跟踪是通过计算新捕获的采样图像(或称“帧”)和以前捕获的参考图像之间的相关来完成对运动方向及大小的确定。特别地,跟踪方法通过计算采样图像和参考图像之间的九个相关函数来完成,一个相关函数是采样图像在原点位置,而另外八个则对应于采样图像按一个像素偏移的八个方向,这九个像素点形成了一个以原点为中心的3X3正方形阵列。这种光敏检测器的二维阵列方法同样受鼠标运动的速度和方式影响,表现不令人满意。
一种改进的运动跟踪性能可以通过计算25点的相关来获得,这25点的像素点包括一个原点,八个原点的最近邻点和16个原点的次近邻点,它们形成一个以原点为中心的5X5正方形阵列。25点相关计算的光学运动跟踪方法可以提供比正交线性阵列和9点跟踪法更高的性能和可靠性,但是,25点的相关计算具有很大的计算量,消耗很大的功率,因此,它的实现复杂并且不省功率。
综上所述,有必要研究一种可靠的光学运动感知和跟踪方法,该方法能够准确的跟踪运动方向和位移,且速度快,能够减少延迟和提高光鼠的性能,且更加高功率。如果计算机光学指示装置中能够植入这样一种光学感知方法,使它更简单、高效并且廉价,则会带来更多优势。
发明内容
本发明的目的在于提供一种可靠的光学运动感知和跟踪方法。
本发明的目的可以通过以下技术方案实现:一种感知物体相对于表面的运动方法,包括:通过连在物体上的排列成二维阵列的光敏检测器来采集表面的参考帧;经过一段时间间隔采集表面的采样帧;比较采样帧和参考帧产生相关函数;平移参考帧或采样帧,平移到以原点为中心的无方向模板中的多个像素点,产生多个平移帧;将另一幅没有平移的参考帧或采样帧与多个平移帧进行比较,产生多个平移相关函数;以及根据上述的相关函数和多个平移相关函数计算在一段时间间隔物体相对于表面的运动矢量。
本发明的目的也可通过以下技术方案实现:一种用于跟踪物体相对于表面运动的光学运动感知方法,包括:用图像感知阵列采集表面的相隔一段时间间隔的第一幅图像和第二幅图像;通过第一幅图像和平移第一幅图像到排列成五行的相邻像素,产生少于二十五帧的图像组;通过比较第二幅图像和平移图像产生多个相关值;以及从多个相关值中,求出表示物体在一段时间间隔相对于表面位移的运动矢量。
本发明的目的还可通过以下技术方案实现:一种光学运动感知方法,包括以下步骤:通过以机械方式装在物体上的图像感知阵列,采集在相隔一段时间间隔,表面的第一幅和第二幅图像;产生一个预测运动矢量;相应于预测运动矢量的方向,产生第一幅及按照一个无方向模板平移第一幅图像到多个像素位置的多个平移图像帧;通过比较第二幅图像和多个平移图像,产生多个相关值;以及从许多个相关值中,求出表示物体在一段时间间隔相对于表面位移的运动矢量。
与现有技术相比,本发明能够准确的跟踪光学指向装置运动方向和位移,且速度快,能够减少延迟和提高光学指向装置的性能。
附图说明
图1是本发明的一种实施例的光学运动跟踪系统示意图。
图2是本发明的一种实施例的光学运动跟踪方法示意图。
图3是本发明的一种具体实施例的无方向跟踪模板示意图。
图4是本发明的另一种具体实施例的无方向跟踪模板示意图。
图5是本发明的一种具体实施例的四个方向性跟踪模板示意图。
图6是本发明的一种具体实施例的模板选择方法图。
图7是本发明的另一种具体实施例的八方向跟踪模板示意图。
实施方式
下面参照附图具体介绍本发明的各种实施例,图中相同的结构或功能用相同的数字标出。应该指出的是,附图的目的只是便于对本发明具体实施例的说明,不是一种多余的叙述或是对本发明范围的限制,此外,附图没有必要按比例画出。
图1是本发明具体实施例的功能示意图。它描述了一个光学运动感知和跟踪系统10。举一个例子,运动跟踪系统10可以作为计算机指示装置,一般是指鼠标的光学运动跟踪系统。该运动跟踪系统10包括一个发光装置12和一个感光装置14。作为本发明的一个优选实施方式,感光装置14包括许多个排列成二维阵列的光敏检测器,这个光敏检测器阵列通过电耦合到一个信号处理或运算电路上,以处理光敏检测器获得的信号。运行时,发光装置12发出的入射光线16照在工作表面15上,如鼠标垫或是桌面等等,感光装置14感应从表面15反射的反射光线18,该反射光线18中就包含了表面的特征信息,如表面的颜色,纹理,对比度,亮度,光滑度等等。当用户移动鼠标,使其相对于表面15运动时,反射光线18所包含的信息随之改变,感光装置14中的运算电路通过反射光线18中信息的变化来计算鼠标相对于表面15的运动,基于此相对运动,运算电路会发送一个控制信号给主机,从而控制计算机屏幕上指针的运动。
这里应该指出的是图1仅仅从功能上描述了运动跟踪系统10,里面并没有画出所有的部件。比如,运动跟踪系统10可以在从发光装置12到表面15以及从表面15到感光装置14的光路上包含一个或多个透镜(未图示),在鼠标底部接近表面15的地方有一个窗口(未图示)。作为本发明的一个优选的实施方式,发光装置12可以包括一个高效光源,如一个发光二极管。此外,感光装置14中的光敏检测器阵列和信号处理电路可以装配在一个芯片上或是分开装配在不同的芯片上。在光学鼠标的应用中,运动跟踪系统10的所有部件最好是封装在一个有便于手握的外形的壳子中。鼠标和主机可以通过有线或无线的方式进行通信,其中无线通信方式可以包括无线电频率或是红外,但并不局限于此。
图2是按照本发明实施例的光学运动感知或跟踪方法100的算法方法图,比如,光学运动跟踪方法100可以用在图1的光学运动感知或跟踪系统10上,按照本发明的一个具体实施例,运动跟踪方法100能够跟踪鼠标相对于工作表面的运动,并发送控制信号给主机而控制计算机屏幕上指针的运动。
按照本发明的一个优选实施例,光学运动跟踪方法100通过计算不同时刻工作表面图像之间的相关来跟踪鼠标相对于表面的运动,特别地,光学运动跟踪方法100在平移表面的采样帧或参考帧到近邻像素点位置之后,计算采样帧和参考帧之间的相关。按照本发明的一个具体实施例,运动跟踪方法100预测鼠标运动的方向,并由此选择采样帧或参考帧进行相关计算的近邻像素点模板。按照本发明的另一个具体实施例,运动跟踪方法100按照无方向模板平移采样帧或参考帧到近邻像素点进行相关计算。
从某个起始位置102开始,运动跟踪方法100首先获取一幅图像,即104步中的参考帧,参考帧由二维光敏检测器阵列得到的信号构成,它含有图1中表面15的特征信息。按照本发明的一个具体实施例,参考帧存储到运动跟踪系统10的参考帧存储单元中(图1没有示出)。
在采集完104步骤中的参考图像并延迟一个预定的时间间隔之后,方法采集下一幅图像,即步骤106中的采样帧,同参考图像一样,采样帧也是由二维检测器阵列得到的信号构成,并且包含图1中表面15的特征信息,但是是在不同的时刻获得的。如果鼠标在步骤104和106之间的时间间隔中发生了运动,则采样帧会相对于参考帧发生平移。按照本发明,采样帧存储在运动跟踪系统10的采样帧存储单元中(图1没有示出)。
下一个步骤112,计算步骤106中的采样帧和参考帧之间的相关。按照本发明的一个具体实施例,运动跟踪方法100通过比较采样帧和位于原点及不同邻点的参考帧来计算相关,原始参考帧和平移后的参考帧形成了许多比较帧,通过计算采样帧和比较帧之间的相关,运动跟踪方法100求出运动矢量MV,以代表采样帧相对于参考帧位移的大小及方向。
按照本发明的一个具体实施例,运动跟踪方法100中的112步顺序的比较采样帧和原点处的参考帧以及平移到12个近邻点的参考帧,如图3中的菱形模板135。按照本发明的另一个具体实施例,运动跟踪方法100中的112步顺序的比较采样帧和原点处的参考帧以及平移到20个近邻点的参考帧,如图4中的圆形模板145。如图3和图4所示,菱形模板135和圆形模板145都是无方向模板。按照本发明将参考帧移动到菱形模板135或圆形模板145中的邻点会提供可靠的运动跟踪性能,并且不会消耗额外的计算功率。通过实际的仿真结果表明,参考帧平移的菱形模板或圆形模板能够提供比九点正方形模板更高的跟踪可靠性,并且相当于25点正方形模板的运动跟踪性能。但是,它只要求比25点正方形模板低得多的运算功率。
按照本发明的另一个具体实施例,运动跟踪方法100中的步骤112顺序的比较采样帧和在原点处的参考帧以及将参考帧移动到矩形模板152和154之一的14近邻像素点或移动到对角模板156和158之一的16近邻像素点,如图5所示。图5中矩形模板152和154的对称轴互相垂直,对角模板156和158互相垂直,并且它们与模板152和154的对称轴成45度角。因为这些模板都是带方向的,运动跟踪方法100最好根据鼠标运动的预测方向选择4个带方向模板之一进行参考帧的移位。按照本发明具体实施例的模板选择步骤参见图6,将参考帧按照图5的拉长且有方向模板152、154、156和158移动到其近邻像素点位置可以提供更高的可靠性以及运动跟踪机制的有效性。
接下来在步骤114中,运动跟踪方法100预测下一个相关计算循环112的鼠标运动。根据本发明的一个具体实施例,运动跟踪方法100通过之前计算的运动矢量的线性组合来计算预测的运动矢量,例如,用PMV表示预测运动矢量,MV1表示运动跟踪方法100的步骤112在当前以及以前循环中计算的运动矢量,ai表示线性组合系数,那么按照本发明的一个优选实施例的预测矢量PMV可以这样得到:
PMV = Σ i - 0 N a i MV i Σ i - 0 N a i = 1 - - - ( 1 )
等式(1)中,下标i为0时对应当前循环,而为1时对应紧邻的上一个循环,以此类推。换言之,MV0当前循环的步骤112中计算所得的运动矢量,MV1代表紧邻的上一个循环的步骤112中计算所得的运动矢量,MV2代表前于MV1的循环中步骤112计算得到的运动矢量。
对于初始化或是在进行第一次循环之前,按照本发明的一种实施例,方法100将运动矢量MV1初始化为一组预先给定的值,或是采用另外一种方法,将所有的运动矢量MV1都初始化为0。
系数ai也叫做权重因子,可以取不同的值。按照本发明的一种优选的实施例,线性组合系数ai的权重在靠近当前循环的运动矢量以及紧邻的前一次循环的运动矢量分配较大。换言之,当前和(或)紧邻的前一次循环的运动矢量在计算预测运动矢量时具有更大的比重,如系数在一次具体实现时可取如下的值:
a i = 0.7 ( i = 0 ) 0.3 ( i = 1 ) 0 ( i > 1 ) - - - ( 2 )
根据本发明的一个优选的实施例,当i>1时使系数ai为1只需要两个存储单元来存储计算的运动矢量,并且可以在相关计算中提供足够准确的预测运动矢量,以识别鼠标运动。
应该理解的是上面的等式(1)和(2)代表计算预测运动矢量的公式,并且可以按照各种不同的实施方式实现,它们并不是本发明范围的局限。比如,线性组合的系数并不局限于等式(2)中的值,它可以包括多于两个近邻计算的运动矢量。同时,运动跟踪方法100中的步骤114并不局限于用当前和在前循环的运动矢量的线性组合来计算预测运动矢量,进一步,计算预测运动矢量的步骤114在运动跟踪方法100中是可选择的。
接下来在步骤116中,运动跟踪方法100输出运动矢量给主机来控制屏幕上指针的运动。根据本发明的一个具体实施例,运动跟踪方法100在每一个循环中都输出运动矢量给主机,根据本发明的另一个具体实施例,运动跟踪方法100累积运动跟踪系统10中的运动矢量,并在经过预定数目的循环或预定的时间间隔之后输出累积运动矢量给主机。经过多个循环再输出累计运动矢量给主机可以减少鼠标和主机之间的数据通信负荷,并且可以平滑计算机显示器上指针的运动。按照本发明的另一个具体实施例,运动跟踪方法100输出步骤112中计算的运动矢量的和以及步骤114中计算的预测运动矢量给主机,在这种情况下,发送给主机的输出信号预测了鼠标的运动。
在118步骤中,运动跟踪方法100为下一次循环更新参考帧存储器的数据,这些更新的数据作为下一次循环的新的参考帧。按照本发明的一个优选的具体实施例,运动跟踪方法100通过将采样帧输入到参考帧存储器单元来完成对参考帧的更新。
在经过118步骤之后,运动跟踪方法100经过路径121返回到步骤106做下一次循环,如图2所示,运动跟踪方法100包括路径121中的平移参考帧步骤122,这一可选的步骤将114步中计算的预测运动矢量加到存储器中的参考帧中。在这种情况下,举例来说,当鼠标高速运动时,循环中的采样帧可能会落在前一次循环在步骤118更新的参考帧的相关计算模板之外,如图3,4和5显示的模板。当采样帧没有落在相关计算模板之内时,运动跟踪方法100可能会无法在步骤112中计算运动矢量,尽管鼠标以高速运动,步骤112中以预测运动矢量来平移参考帧可以极大地减少并消除这种情况的出现,加快运动跟踪方法100的循环速度可以保证采样帧位于前一次更新的参考帧的邻域之内,并可以消除在步骤122对更新的参考帧进行移位的必要,但是,增加循环速度会增加运算功率和功率消耗,因此,可选步骤122中对更新参考帧的移位对运动跟踪性能可靠性的提高是很有益处的,并且不会增加功率消耗和运动跟踪系统10的电路复杂度。
图6是按照本发明的具体实施例的相关计算方法160的方法图。该相关计算方法160选择图5中四个有方向模板之一进行相关计算,且选择的模板的对称轴沿着预测运动矢量的方向,因此相关计算方法160也可称之为模板选择方法或比较帧选择方法。例如,相关计算方法160的作用正如前面图2中所讲到的跟踪方法100的步骤112,但是,本发明的范围并不局限于此。方法160也适用于其他包括两个位置或配置之间的相关计算方法。
参考图2和图6,相关计算方法160的步骤161,检查在运动跟踪方法100中114步计算的预测矢量方向,如果预测矢量方向是水平的,如和一个预定参考方向成0度或180度,则相关计算方法160执行步骤162,选择图5中的水平矩形模板152。反之,相关计算方法160执行步骤163,判断预测运动矢量的方向是否是垂直的,即是否和预定参考方向成90°或270°角,如果是,则相关计算方法160执行步骤164,选择图5中的垂直矩形模板154,反之,相关计算方法160执行步骤165。如果预测运动矢量在0~90°或180°~270°之间,则相关计算方法160执行步骤166,选择图5中的倾斜伸长模板156,反之,相关计算方法160执行步骤167检查预测运动矢量是否在90°~180°或270°~360°之间,如果是,相关计算方法160执行步骤168,选择图5中的倾斜伸长模板158。
在四个方向性模板152、154、156和158之中选择一个模板之后,相关计算方法160便计算采样帧和参考帧在原点(图5中参考标记)位置以及在172步中的平移像素点位置的相关函数,并计算步骤174中的运动矢量。然后,相关计算方法160执行运动跟踪方法100中的步骤114。
应该理解的是相关计算方法160并不局限于以上所描述的内容。例如,根据本发明,步骤167是可选的,此外,步骤161、163、165和167可以有不同的检测预测运动矢量的标准。例如,水平预测方向的检测标准可以是预测运动矢量和规定方向间的夹角在0°±20°或180°±20°的范围内,对应步骤161。同样地,垂直预测方向的检测标准可以是预测运动矢量和规定方向间的夹角在90°±20°或270°±20°的范围内,对应步骤163。相应地,步骤165中的标准可以改为预测运动矢量和规定方向间的夹角在45°±25°或225°±25°的范围内,而步骤167中预测运动矢量和规定方向间的夹角可以改为在135°±25°或315°±25°的范围内。
图7描述了根据本发明的另一具体实施例的八方向图像移位模板181、182、183、184、185、186、187和188。其中的每一个移位模板都包括一个原点和11个移位点。模板181和183的对称轴平行于图5中的矩形模板152,并且分别对应于水平向右和水平向左的方向。模板182和184的对称轴平行于图5中的矩形模板154,且分别对应于垂直向上和垂直向下的方向。模板186和188的对称轴平行于图5中的对角模板158,且分别对应于左上和右下的运动方向。移位模板181、182、183、184、185、186、187和188是各向异性的,即每个模板均对应不同的方向,它们也可以被称为方向性模板。
选择图7中八个模板中的某一个模板进行相关计算的方法类似于上面描述的相关计算方法160,参见图6。但是,最好是有八个方向的选择标准分别对应于八个方向模板,最好的方法是被选择的模板的对称轴同预测运动矢量的方向一致,并且在原点之前包括的点数多于在原点之后的点数。例如,下面的选择标准被应用在与本发明的具体实施例相一致的模板选择方法中。对应于水平向右的模板181的选择标准应该是预测运动矢量与规定方向的夹角在0°±25°的范围内,对应于垂直向上的模板182的选择标准应该是预测运动矢量与规定方向的夹角在90°±25°的范围内,对应于水平向左的模板183的选择标准应该是预测运动矢量与规定方向的夹角在180°±25°。的范围内,对应于垂直向下的模板184的选择标准应该是预测运动矢量与规定方向的夹角在270°±25°的范围内,对应于右上的模板185的选择标准应该是预测运动矢量与规定方向的夹角在45°±20°的范围内,对应于左上的模板186的选择标准应该是预测运动矢量与规定方向的夹角在135°±20°的范围内,对应于左下的模板187的选择标准应该是预测运动矢量与规定方向的夹角在225°±20°的范围内,同样地,对应于右下的模板188的选择标准应该是预测运动矢量与规定方向的夹角在315°±20°的范围内。
根据本发明的一个优选实施例,这每一个八方向移位模板的相关计算仅包含采样帧和参考帧的12次比较,一次对应于原点位置而11次对应于图7所示的其他平移位置。因此,运算效率高。模板在运动方向上的像素点多于其垂直方向或相反方向上的像素点。换言之,模板在原点前面沿着运动方向上的像素点多于原点旁边或后面的像素点,这些模板的排列提供了高效率可靠的鼠标运动的跟踪方法。
到现在为止,我们已经揭示了一种可靠且高效的光学运动感知或跟踪方法。根据本发明的优选实施例,运动跟踪方法通过相隔一个时间间隔采集表面的两幅图象,被称为参考帧和采样帧,从而感知物体,如光学鼠标相对于表面如鼠标垫的运动。跟踪方法首先平移一幅图像,如参考图像到某个模板中的相邻像素位置,然后比较其他的采样图像和参考图像在原点或平移的像素位置来计算两幅图像的相关函数,而相关函数将给出物体在一段时间间隔的位移,即运动矢量。在本发明的一个具体实现中,一个模板具有一个原点和12个邻点,它们排列成5行5列形状象钻石形状。在本发明的另一个具体实现中,一个模板具有一个原点和20个邻点,它们排列成5行5列象一个圆盘。而在本发明的另一个具体实现中,有4个伸长的带方向模板,方法根据预测运动矢量的方向选择其中的一个模板。在本发明的又一个具体实现中,有八个带方向模板,方法根据预测运动矢量的方向选择其中的一个模板。这些图像移位模板提供快速、准确且可靠的运动感知,它们的运算效率高,省能量。另外,它们简单易于软件实现。
虽然上面已经揭示了本发明的具体实施方法,但是它们不是本发明范围的局限,熟知本技术领域的人员对以上所述具体实施的修改和变化也包含在本发明的范围之内。例如,在计算相关函数时,运动跟踪方法并不局限于平移参考图像,本发明同样包括平移采样图像到模板中的不同像素位置,在计算运动矢量时比较参考图像和平移的采样图像。另外,运动跟踪方法的应用也不止局限于光鼠或其他计算机指向装置。根据本发明的运动跟踪方法也适用于其它需要运动感知的领域,如电视遥控,机器人等等。

Claims (20)

1.一种感知物体相对于表面的运动方法,特征在于,包括:
通过连在物体上的排列成二维阵列的光敏检测器来采集表面的参考帧;
经过一段时间间隔采集表面的采样帧;比较采样帧和参考帧产生相关函数;
平移参考帧或采样帧,平移到以原点为中心的无方向模板中的多个像素点,产生多个平移帧;
将另一幅没有平移的参考帧或采样帧与多个平移帧进行比较,产生多个平移相关函数;以及
根据上述的相关函数和多个平移相关函数计算在一段时间间隔物体相对于表面的运动矢量。
2.如权利要求1所述的感知物体相对于表面的运动方法,特征在于:进一步包括输出运动矢量到主机来控制显示屏幕上的光标。
3.如权利要求1所述的感知物体相对于表面的运动方法,特征在于:进一步包括:
用采样帧更新参考帧;采集一幅新图像作为采样帧;计算表示物体相对于表面的第二个位移的第二个运动矢量。
4.如权利要求3所述的感知物体相对于表面的运动方法,特征在于:进一步包括输出运动矢量的总和。
5.如权利要求3所述的感知物体相对于表面的运动方法,特征在于:进一步包括从第一个运动矢量和第二个运动矢量产生预测运动矢量。
6.如权利要求5所述的感知物体相对于表面的运动方法,特征在于:进一步包括在更新参考帧之后添加预测运动矢量到参考帧中。
7.如权利要求5所述的感知物体相对于表面的运动方法,特征在于:其中产生预测运动矢量包括将第一和第二个运动矢量的线性组合作为预测运动矢量。
8.如权利要求5所述的感知物体相对于表面的运动方法,特征在于:步骤平移参考图帧或采样帧,包括按照四个无方向模板之一选择性的平移参考图帧或采样帧到多个以原点为中心的像素位置,这四个无方向模板是:
第一个无方向模板有第一个对称轴;
第二个无方向模板有和第一个轴垂直的第二个对称轴;
第三个无方向模板有和第一个对称轴成45度角的第三个对称轴;
第四个无方向模板有和第三个轴垂直的第四个轴。
9.如权利要求8所述的感知物体相对于表面的运动方法,特征在于:步骤平移参考图帧或采样帧,包括根据预测运动矢量的方向选择四个无方向模板之一,并按照模板将参考帧和采样帧之一平移到以原点为中心的多个像素位置。
10.如权利要求8所述的感知物体相对于表面的运动方法,特征在于:步骤平移参考图帧或采样帧,进一步包括:
预测运动矢量的方向平行于或反平行于预定方向,则选择第一个无方向模板;
预测运动矢量的方向垂直于预定方向,则选择第二个无方向模板;
预测运动矢量的方向相对于预定方向是位于第一或第三象限,则选择第三个无方向模板;
预测运动矢量的方向相对于预定方向是位于第二或第四象限,则选择第四个无方向模板。
11.如权利要求8所述的感知物体相对于表面的运动方法,特征在于:按照四个无方向模板之一选择性的平移参考图帧或采样帧到以原点为中心的像素位置包括:
将原点和14个围绕它的像素点在第一个无方向模板中排列成三行五列,且原点在第二行第三列;
将原点和14个围绕它的像素点在第二个无方向模板中排列成五行三列,且原点在第三行第二列;
将原点和16个围绕它的像素点在第三个无方向模板中排列成五行,其中:第一行包括第一和第二个像素点;第二行包括第三、四、五和六个像素点,且第四个像素点和第一个像素点对齐;第三行包括第七、八、原点、九和第十个像素点,且原点和第一个像素点对齐;第四行包括第十一、十二、十三和第十四个像素点,且第十三点和第一个像素点对齐;第五行包括第十五和第十六个像素点,且第十六个像素点和第一个像素点对齐;
将原点和16个围绕它的像素点在第四个无方向模板中排列成5行,其中:第一行包括第一和第二个像素点;第二行包括第三、四、五和第六个像素点,且第五个像素点和第二个像素点对齐;第三行包括第七、第八、原点、第九和第十个像素点,且原点和第二个像素点对齐;第四行包括第十一、十二、十三和十四个像素点,且第十二个像素点和第二个像素点对齐;第五行包括第十五和第十六个像素点,且第十五个像素点和第二个像素点对齐。
12.如权利要求5所述的感知物体相对于表面的运动方法,特征在于:步骤平移参考图帧或采样帧,包括选择性地按照八个带方向模板之一将采样帧或参考帧平移到以原点为中心的多个像素点位置,这八个带方向模板分别对应以下八种方向:
第一种方向;
第二种方向垂直于第一种方向;
第三种方向和第一种方向相反;
第四种方向和第二种方向相反;
第五种方向与第一种方向大约成45°角;
第六种方向与第五种方向垂直;
第七种方向与第五种方向相反;
第八种方向与第六种方向相反。
13.如权利要求12所述的感知物体相对于表面的运动方法,特征在于:步骤平移采样帧或参考帧,进一步包括:
衡量预测运动矢量和第一个方向间的夹角;
对应于0°±25°的夹角范围选择第一种方向模板;
对应于90°±25°的夹角范围选择第二种方向模板;
对应于180°±25°的夹角范围选择第三种方向模板;
对应于270°±25°的夹角范围选择第四种方向模板;
对应于45°±20°的夹角范围选择第五种方向模板;
对应于135°±20°的夹角范围选择第六种方向模板;
对应于225°±20°的夹角范围选择第七种方向模板;
对应于315°±20°的夹角范围选择第八种方向模板。
14.如权利要求12所述的感知物体相对于表面的运动方法,特征在于:选择性地按照八个带方向模板之一将采样帧或参考帧平移到以原点为中心的多个像素点位置包括:
将原点和围绕它的11个像素点排列成三行四列的第一种方向性模板,且原点在第二行第二列;
将原点和围绕它的11个像素点排列成四行三列的第二种方向性模板,且原点在第三行第二列;
将原点和围绕它的11个像素点排列成三行四列的第三种方向性模板,且原点在第二行第三列;
将原点和围绕它的11个像素点排列成四行三列的第四种方向性模板,且原点在第二行第二列;
将原点和围绕它的11个像素点排列成四行的第五种方向性模板,其中第一行包括第一和第二个像素点,第二行包括第三、四、五和第六个像素点,且第四个像素点和第一个像素点对齐,第三行包括第七、原点、第八和第九个像素点,且原点和第一个像素点对齐,第四行包括第十和第十一个像素点,且第十个像素点和第一个像素点对齐;
将原点和围绕它的11个像素点排列成四行的第六种方向性模板,其中第一行包括第一和第二个像素点,第二行包括第三、第四、五和第六个像素点,且第五个像素点和第二个像素点对齐,第三行包括第七、第八、原点和第九个像素点,且原点和第二个像素点对齐,第四行包括第十和第十一个像素点,且第十一个像素点和第二个像素点对齐;
将原点和围绕它的11个像素点排列成四行的第七种方向性模板,其中第一行包括第一和第二个像素点,第二行包括第三、四、原点和第五个像素点,且原点和第二个像素点对齐,第三行包括第六、第七、第八和第九个像素点,且第八个像素点和第二个像素点对齐,第四行包括第十和第十一个像素点,且第十一个像素点和第二个像素点对齐;
将原点和围绕它的11个像素点排列成四行的第八种方向性模板,其中第一行包括第一和第二个像素点,第二行包括第三、原点、第四和第五个像素点,且原点和第一个像素点对齐,第三行包括第六、第七、第八和第九个像素点,且第七个和第一个像素点对齐,第四行包括第十和第十一个像素点,且第十个像素点和第一个像素点对齐。
15.一种用于跟踪物体相对于表面运动的光学运动感知方法,特征在于,包括:
用图像感知阵列采集表面的相隔一段时间间隔的第一幅图像和第二幅图像;
通过第一幅图像和平移第一幅图像到排列成五行的相邻像素,产生少于二十五帧的图像组;
通过比较第二幅图像和平移图像产生多个相关值;以及
从多个相关值中,求出表示物体在一段时间间隔相对于表面位移的运动矢量。
16.如权利要求15所述的光学运动感知方法,特征在于,其中产生多幅图像帧的步骤进一步包括由原点和十二个相邻点排成五行的模板产生的十三幅图像帧,其中,
第一行包括第一个相邻点且与原点对齐;
第二行包括二、三和第四个相邻点,且第三个相邻点和原点对齐;
第三行包括第五和第六个相邻点、原点及第七和第八个相邻点;
第四行包括第九、十、十一个相邻点,且第十个相邻点和原点对齐;
第五行包括第十二个相邻点且和原点对齐。
17.如权利要求15中所述的光学运动感知方法,特征在于,其中产生多幅图像帧的步骤进一步包括由原点和二十个相邻点排成五行的模板产生的二十一幅图像帧,其中,
第一行包括第一、二和第三个像素点且第二个像素点和原点对齐;
第二行包括第四、五、六、七和第八个像素点且第六个像素点和原点对齐;
第三行包括第九、第十、原点和第十一、第十二个像素点;
第四行包括第十三、十四、十五、十六和第十七个像素点,且第十五个像素点和原点对齐;
第五行包括第十八、十九和第二十个像素点且第十九个像素点和原点对齐。
18.一种光学运动感知方法,特征在于,包括以下步骤:
通过以机械方式装在物体上的图像感知阵列,采集在相隔一段时间间隔,表面的第一幅和第二幅图像;
产生一个预测运动矢量;
相应于预测运动矢量的方向,产生按照一个无方向模板平移第一幅图像到多个像素位置的多个平移图像帧;
通过比较第二幅图像和多个平移图像,产生多个相关值;以及
从许多个相关值中,求出表示物体在一段时间间隔相对于表面位移的运动矢量。
19.如权利要求18所述的光学运动感知方法,特征在于,产生多幅平移图像的步骤进一步包括从四个延长的无方向模板中选择一个模板用于移位,其中的无方向模板均有沿着预测运动矢量方向的对称轴。
20.如权利要求18所述的光学运动感知方法,特征在于,产生多幅平移图像的步骤进一步包括选择一个由原点和多个像素点组成的无方向模板,其中:
无方向模板有一个和预测运动矢量方向一致的对称轴;
无方向模板中沿着对称轴的像素点多于垂直于对称轴的像素点;以及
无方向模板中沿着对称轴与预测运动矢量方向一致的像素点多于与预测运动矢量方向相反的像素点。
CNB2006800009739A 2006-04-27 2006-04-27 光学运动感知方法 Expired - Fee Related CN100524181C (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2006/000816 WO2007124613A1 (en) 2006-04-27 2006-04-27 Optical motion sensing process

Publications (2)

Publication Number Publication Date
CN101040246A CN101040246A (zh) 2007-09-19
CN100524181C true CN100524181C (zh) 2009-08-05

Family

ID=38655028

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006800009739A Expired - Fee Related CN100524181C (zh) 2006-04-27 2006-04-27 光学运动感知方法

Country Status (3)

Country Link
US (1) US7945072B2 (zh)
CN (1) CN100524181C (zh)
WO (1) WO2007124613A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102637085A (zh) * 2012-04-10 2012-08-15 中国航空无线电电子研究所 用于通用航空器显示控制系统的轨迹球快捷输入方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102065248B (zh) * 2006-11-17 2013-03-20 硅通讯技术有限公司 自动调节参考电压的低功耗图像传感器以及包含此传感器的光学点击装置
CN101593036B (zh) * 2008-05-28 2011-12-28 艾勒博科技股份有限公司 指点装置
CN101477412B (zh) * 2008-06-27 2011-12-14 北京希格玛和芯微电子技术有限公司 子像素级精度的运动感知方法
CN101727205B (zh) * 2008-10-23 2012-12-12 原相科技股份有限公司 以移动向量在微小点阵图上确定坐标的方法
US9104238B2 (en) * 2010-02-12 2015-08-11 Broadcom Corporation Systems and methods for providing enhanced motion detection
CN102798355B (zh) * 2011-07-07 2015-03-04 刘建 旋转角度检测方法
CN102506769B (zh) * 2011-11-15 2013-11-20 益海芯电子技术江苏有限公司 旋转角度检测方法
CN103699238B (zh) * 2012-09-27 2016-09-21 益海芯电子技术江苏有限公司 光学运动感知方法
TWI488126B (zh) * 2012-10-03 2015-06-11 Pixart Imaging Inc 光學導航方法及光學導航裝置
US9880631B2 (en) * 2014-09-02 2018-01-30 Stmicroelectronics International N.V. Instrument interface for reducing effects of erratic motion
US20230233106A1 (en) * 2020-06-30 2023-07-27 Kneedly Ab Solution for Determination of Supraphysiological Body Joint Movements
CN114383668B (zh) * 2022-03-24 2022-05-24 北京航空航天大学 一种基于可变背景的流场测量装置及方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675830B1 (ko) * 2004-03-11 2007-01-29 주식회사 애트랩 이미지 센서, 광 포인팅 장치 및 광 포인팅 장치의 움직임계산 방법
CN100359448C (zh) * 2004-06-28 2008-01-02 凌阳科技股份有限公司 即时判断撷取影像像素值异常的方法及系统
US7970170B2 (en) * 2005-05-09 2011-06-28 Lockheed Martin Corporation Continuous extended range image processing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102637085A (zh) * 2012-04-10 2012-08-15 中国航空无线电电子研究所 用于通用航空器显示控制系统的轨迹球快捷输入方法
CN102637085B (zh) * 2012-04-10 2014-12-10 中国航空无线电电子研究所 用于通用航空器显示控制系统的轨迹球快捷输入方法

Also Published As

Publication number Publication date
WO2007124613A1 (en) 2007-11-08
CN101040246A (zh) 2007-09-19
US20100067746A1 (en) 2010-03-18
US7945072B2 (en) 2011-05-17

Similar Documents

Publication Publication Date Title
CN100524181C (zh) 光学运动感知方法
US8947353B2 (en) Photosensor array gesture detection
CN1928801B (zh) 利用激光散斑的位置检测系统
CN204480228U (zh) 运动感测和成像设备
CN102508574B (zh) 基于投影屏幕的多点触控检测方法及多点触控系统
US8605046B2 (en) System and method for providing multi-dimensional touch input vector
US11125614B2 (en) Sensor for motion information, illumination information and proximity information, and operating method of central processing unit (CPU) using the sensor
US20210287380A1 (en) Method and system for detecting peripheral device displacement
US20150310617A1 (en) Display control device and display control method
CN102782616A (zh) 用于检测和跟踪触摸对象的方法
JP2006244446A (ja) 表示装置
CN102089738A (zh) 用于用户界面控制的相机姿态
US9652850B2 (en) Subject tracking device and subject tracking method
CN101799717A (zh) 基于手部行为捕捉的人机交互方法
CN107450841B (zh) 交互对象控制方法及装置
CN102929440B (zh) 基于算法选择利用速度进行光学导航
CN110765946B (zh) 一种跑姿评估方法、装置、设备和存储介质
CN109685797A (zh) 骨骼点检测方法、装置、处理设备及存储介质
CN104503725B (zh) 一种信息处理方法及电子设备
CN102981608A (zh) 使用多分段光电二极管和一个或更少的照明源检测手势的方法
CN101169693B (zh) 光学运动感知方法
WO2016106148A1 (en) Method and system for dual node sensing
US10379677B2 (en) Optical touch device and operation method thereof
TWI488126B (zh) 光學導航方法及光學導航裝置
KR101549213B1 (ko) 터치 스크린 상에서 터치 포인트를 검출하기 위한 장치 및 그 방법

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090805

Termination date: 20150427

EXPY Termination of patent right or utility model