光导航传感器和采用二维顺序图像处理的图像处理方法

文档序号:3387123阅读:114来源:国知局
专利名称:光导航传感器和采用二维顺序图像处理的图像处理方法
技术领域
本发明涉及一种光导航传感器以及采用二维顺序图像处理的图像处理方法,本发明更特别地涉及一种为了防止像素值发生变化,通过预处理,可以将其产生的图像像素的各电压值变换为分别具有特定位值的数字电压值,从而准确跟踪其运动的光电鼠标以及使用这种光电鼠标的图像处理方法。
背景技术
光电鼠标是用于指出包括在计算机内的显示单元的屏幕上的指针的位置的计算机外围设备。在其中将这种光电鼠标放置在由特定材料制成的诸如桌面的任意支承面上的情况下,它对安装在光电鼠标内的发光二极管发出后、被支承面反射的光减小信号处理,以检测光电鼠标在X轴和Y轴的位移量,然后,通过显示单元,在X轴方向和Y轴方向,移动显示单元的屏幕上的指针。
尽管这种光电鼠标在具有特殊图形而表现低反射率的通用鼠标垫上正常工作,如

图1a所示,但是它的问题是,在如图1b所示的严重色散光的诸如凝胶(黄色)垫的支承面上工作不稳定。
作为用于解决该问题的传统光电鼠标控制方法,建议了一种方法,利用该方法将光电鼠标放置在其上的支承面反射之后入射到各像素的光变换为4至8位的数字电压值,以测量光电鼠标的方向性。
然而,对于这种光电鼠标控制方法,在数字电压值中存在噪声分量,因为像素光量存在微小变化而且在这种光电鼠标控制方法使用的模拟电路中产生噪声。因为此原因,即使在光电鼠标不移动时,每个像素的数字电压值仍发生变化。因此,重要的是准确、有效测量光电鼠标的方向性。
为了解决该问题,建议了另一种光电鼠标控制方法。根据该方法,将被支承面反射之后入射到每个像素的光束变换为4至8位的数字电压值,接着,将数字电压值与其他像素的数字电压值进行比较,以确定该像素是亮的,还是暗的(1或0),如图2a和2b所示。因此,根据其亮或者暗,设置每个像素具有1位的值。根据该1位的值,测量光电鼠标的方向性。
然而,在这种传统鼠标控制方法中,根据关于亮度对外围像素与中心像素所做的比较,在特定方向,综合确定光电鼠标的方向性。因为此原因,尽管这种光电鼠标在特定方向表现良好的导航特性,但是在其他方向却显示糟糕的导航特性。

发明内容
因此,鉴于上述问题,提出本发明,而且本发明的目的是提供一种可以将由其产生的图像的每个像素的数字电压值变换为双向性的位值,从而准确跟踪其运动的光导航传感器以及一种利用该光导航传感器实现的采用二维顺序图像处理的图像处理方法。
根据一个方面,本发明提供了一种光导航传感器,该光导航传感器包括图像像素阵列,用于计算分别其对应于从传感器放置在其上的支承面反射的入射到各像素的反射光束的相对光强的各像素的模拟电压值;模数(A/D)变换器,用于将从其接收的像素的模拟电压值分别变换为相应的数字电压值,从而产生支承面的当前图像;预处理器,用于根据预定定时信号,从A/D变换器顺序接收当前支承面图像的所有像素的数字电压值,用于对当前支承面图像进行预处理,从而产生由分别具有2位数字电压值的各像素构成的预处理的当前图像,以及用于从预处理的当前图像中提取具有预定像素阵列的预处理当前中心图像;以及运动坐标计算器,用于将从预处理器接收的预处理当前中心图像设置为X/Y轴候选基准图像,用于在预处理的当前图像重叠先前设置的X轴基准图像时,计算X轴运动矢量,从而计算预处理的当前图像的X轴运动坐标值,以及用于在预处理的当前图像重叠先前设置的Y轴基准图像时,计算Y轴运动矢量,从而计算预处理的当前图像的Y轴运动坐标值。
根据另一个方面,本发明提供了一种采用二维顺序图像处理的图像处理方法,该方法包括步骤(A)预处理器将通过模数(A/D)变换器从预处理器接收的图像的各像素的数字电压值存储到存储器;(B)根据预定定时信号,预处理器对从存储器顺序接收的各像素的数字电压值进行预处理,从而产生预处理的当前图像,并从预处理的当前图像中提取预处理当前中心图像;(C)根据预处理的当前图像的运动矢量,运动坐标计算器确定是否将预处理当前中心图像设置为X/Y轴基准图像,用于计算下一个预处理的图像的运动坐标值;以及(D)运动坐标计算器将从预处理器接收的预处理的当前图像与分别存储在X/Y通道基准单元内的X/Y轴基准图像进行比较,从而计算预处理的当前图像的X/Y轴运动坐标值。
附图的简要说明在结合附图阅读以下所做的详细说明后,本发明的上述目的以及其他特征和优点将变得更加明显,附图包括图1a和1b是分别示出在使用不同的鼠标垫时产生的光电鼠标指针轨迹的原理图;图2a和2b是示出单向性的传统光电鼠标放置在其上的支承面的图像的原理图,该图像是根据传统光电鼠标执行的预处理产生的。
图3是示出根据本发明的光导航传感器的配置的方框图;图4是示出包括在根据本发明的光导航传感器内的运动坐标计算器的详细配置的方框图;
图5a至5c是示出根据本发明预处理的当前图像的运动状态和静止状态的原理图;图6a和6b是示出根据本发明利用预处理的当前图像重叠基准图像的过程的原理图;图7是示出根据本发明采用二维顺序图像处理的图像处理方法的流程图;图8是示出根据本发明利用预处理器将从图像像素阵列接收的当前支承面图像的各像素的数字电压值存储到存储器内的过程的流程图;图9是示出根据本发明利用预处理器预处理当前支承面图像,从而产生预处理的当前图像,并从预处理的当前图像中提取预处理的当前中心图像的过程的流程图;图10a和10b是示出根据本发明,根据预处理的当前图像的运动矢量,运动坐标计算器将预处理的当前中心图像设置为X/Y轴基准图像的过程的流程图;以及图11a和11b是示出根据本发明利用运动坐标计算器计算预处理的当前图像的X/Y轴运动坐标值的过程的流程图。
具体实施例方式
现在,将参考附图详细说明本发明的光导航传感器和利用二维顺序图像处理过程处理图像的方法。
首先,将参考图3和4说明根据本发明的光导航传感器的配置和运行过程。
图3是示出根据本发明的光导航传感器的配置的方框图。图4是示出包括在根据本发明的运动坐标计算器的详细配置的方框图。
根据本发明的光导航传感器可以是光电鼠标100,它包括图像像素阵列110、模数(A/D)变换器120、预处理器130以及运动坐标计算器140。以下将详细说明这些组成单元。
图像像素阵列110接收在安装在光电鼠标100的发光器件发出后被其上放置该光电鼠标的支承面反射的光束,将分别对应于接收的反射光束的相对光强的光能变换为模拟电压值,然后,将该模拟电压值发送到A/D变换器120。
即,分别入射到构成图像像素阵列110的各像素的反射光束可以具有不同的光能,因为位于对应于各像素的区域的材料、不规则性、或亮/暗存在差别。因此,从各像素输出不同的模拟电压值。
尽管在所示的本发明实施例中,图像像素阵列具有18×18像素的像素阵列结构,但是并不局限于这种像素阵列结构。根据本发明,可以采用不同的像素阵列结构。
A/D变换器120将从图像像素阵列110接收的每个像素的模拟电压值变换为特定位(例如4位或8位)的数字电压值,以产生支承面的当前图像。A/D变换器120将产生的当前图像输出到预处理器130。
根据预定定时信号,预处理器130从A/D变换器120顺序接收所有像素的数字电压值,然后,将接收的数字电压值存储到存储器(未示出)。
存储器不同时接收18×18个像素的数字电压值,而是通过4至8条线路,与预定定时信号同步,顺序接收分别具有4至8位的数字电压值。为此,存储器具有包括3至18个存储器结构的线路缓冲器,每个线路缓冲器的存储器容量分别为4至8位。
在该存储器从A/D变换器120接收4至8位的数字电压值时,将先前接收并存储到该存储器内的每个数字电压值位移一列,以存储到该线路缓冲器结构的下一列。因此,先前存储在线路缓冲器结构的最后一列的数字电压值被丢弃。
预处理器130对从存储器顺序接收的关于当前支承面图像的数据进行预处理,从而产生具有像素阵列结构的预处理当前支承面图像,该像素阵列结构由数字电压值分别为2位的像素构成。
以下将更详细说明该预处理过程。对于构成当前支承面图像的各像素之一,在预处理器130接收被变换后具有特定位(例如4至8位)的数字电压值时,它对接收的数字电压值进行2位变换。即,将与对应于当前输入到预处理器130的数字电压值的当前像素相邻、垂直排列的各像素的数字电压值附加到当前像素的数字电压值,从而获得当前X轴值CURRENT_X。还将与在水平方向离开当前像素预定距离的像素相邻、垂直排列的各像素的数字电压值附加到在水平方向分离的像素,从而获得先前X轴值BEFORE_X。此外,将与当前像素相邻、水平排列的各像素的数字电压值附加到当前像素的数字电压值,从而获得当前Y轴值CURRENT_Y。还将与在垂直方向离开当前像素预定距离的像素相邻、水平排列的各像素的数字电压值附加到在垂直方向分离的像素,从而获得先前Y轴值BEFORE_Y。如果假定当前支承面图像具有下表1所示的像素阵列,而且当前被2位变换为其数字电压值的当前像素是像素ADC22,则可以利用下面的表达式1和2获得CURRENT_X、BEFORE_X、CURRENT_Y和BEFORE_Y表1

表达式1CURRENT_X=ADC02+ADC12+ADC22
BEFORE_X=ADC00+ADC10+ADC22表达式2CURRENT_Y=ADC20+ADC21+ADC22BEFORE_Y=ADC00+ADC01+ADC02在利用表达式1获得CURRENT_X和BEFORE_X后,将值CURRENT_X与值BEFORE_X进行比较,以确定值CURRENT_X是否大于值BEFORE_X。将比较结果变换为1位的值,然后,将该1位的值存储为值COMP_X。此外,在利用表达式2获得CURRENT_Y和BEFORE_Y后,将值CURRENT_Y与值BEFORE_Y进行比较,以确定值CURRENT_Y是否大于值BEFORE_Y。将比较结果变换为1位的值,然后,将该1位的值存储为值COMP_Y。这样,将当前像素的数字电压值变换为分别对应于值COMP_X和值COMP_Y的2位值。
在对从存储器接收的、当前像素的数字电压值变换为特定位的值后,预处理器130可以对与当前像素相邻排列的特定像素附加特定权。
在当前值与先前值的比较中确定当前值大于先前值时,将比较结果的值设置为“1”。相反,在当前值小于先前值时,将比较结果的值设置为“0”。如果假定利用“Image_2bit”表示2位变换值,则根据不同的矢量值,即COMP_X和COMP_Y,该“Image_2bit”可以分别具有不同的值,如下表2所示。
表2

根据表2描述的条件,预处理器130存储每个像素中的、将对从存储器接收的像素的4位数字电压值进行2位变换获得的Image_2bit值,如下表3所示。
表3

在表3中,利用“x”表示的像素是可以被忽略的“不关心”像素,因为不可能计算与其有关的当前值和先前值。
此后,预处理器130从以上述方式产生的预处理当前支承面图像中提取具有特定像素阵列的中心图像,然后,将提取的中心图像发送到运动坐标计算器140。
也就是说,预处理器130产生具有特定位的像素值(即2位数字电压值)的预处理的当前图像,然后,从该预处理的当前图像中提取具有特定像素阵列的中心图像。
以下将更详细说明该处理过程。如果当前支承面图像具有由分别为4位值的18×18个像素构成的18×18像素阵列,则根据对当前支承面图像所做的预处理,利用上述表达式1和2,产生具有16×16像素阵列的预处理当前支承面图像,该16×16像素阵列由分别为2位值的16×16个像素构成。
即,如果当前支承面图像具有n×n像素阵列,则预处理的当前支承面图像具有(n-2)×(n-2)像素阵列。
在根据当前支承面图像产生具有特定像素阵列的预处理当前支承面图像之后,预处理器130从预处理当前支承面图像的特定部分,即中心部分提取具有特定像素阵列,例如10×10像素阵列的中心图像。然后,预处理器130将提取的中心图像送到运动坐标计算器140。
根据预处理当前支承面图像的X轴和Y轴运动矢量值,运动坐标计算器140在X通道基准单元141和Y通道基准单元142内分别将从预处理器130接收的预处理当前中心支承面图像设置为X轴和Y轴基准图像。以下将说明X通道基准单元141和Y通道基准单元142。
将详细说明该处理过程。如果预处理当前支承面图像的X轴运动矢量Vx的值为“0”,则运动坐标计算器140不改变先前在X通道基准单元141设置的X轴基准图像。
然而,如果预处理的当前图像的X轴运动矢量Vx的值不是“0”,则运动坐标计算器140利用当前从预处理器130接收的预处理当前中心图像代替在X通道基准单元141设置的X轴基准图像。
同样,如果预处理的当前图像的Y轴运动矢量Vy的值为“0”,则运动坐标计算器140不改变先前在X通道基准单元142设置的Y轴基准图像。
然而,如果预处理的当前图像的Y轴运动矢量Vy的值不是“0”,则运动坐标计算器140利用当前从预处理器130接收的预处理当前中心图像代替在Y通道基准单元142设置的Y轴基准图像。
即,如果计算如图5a所示的表示预处理的当前图像不运动的运动坐标,则不将预处理当前中心图像设置为基准图像,而是将它作为候选基准图像存储。在这种情况下,先前设置基准图像用于计算下一个预处理的图像的运动坐标。
然而,如果计算如图5b或5c所示的表示预处理的当前图像在运动的运动坐标,则将作为候选基准图像存储的预处理当前中心图像设置为基准图像,用于计算下一个预处理的图像的运动坐标。
如果假定光电鼠标以预定速度,满足条件“Y=3X”,在直线方向运动,则顺序计算运动坐标(1,3)、(1,3)、(1,3)、...。然而,如果光电鼠标以高速或低速运动,则对每个帧计算与上述情况的运动坐标不同的运动坐标。因此,在光电鼠标以低速运动时,可能发生以下问题,除非分别对X通道和Y通道设置基准图像。
以下对此做更详细说明。在光电鼠标以每帧X轴方向0.3和Y轴1的低速运动时,顺序计算运动坐标(0,1)、(0,1)、(0,1)、...,因为未反映比对应于一个像素的距离短的光电鼠标的运动。因为此原因,不能计算光电鼠标的正确运动坐标。
如果分别对X通道和Y通道分别设置基准图像,则不产生这种问题。例如,在光电鼠标进行对应于X轴方向0.3,而Y轴方向1的运动时,光电鼠标的运动坐标对应于(0,1)。在这种情况下,仅将预处理当前中心图像设置为将用于计算下一个预处理的图像的运动坐标的Y轴基准图像,而无需设置为将用于计算下一个预处理的图像的运动坐标的X轴基准图像。作为将用于计算下一个预处理的图像的运动坐标的X轴基准图像,仍使用先前设置的X轴基准图像。
如果对于几个连续帧,光电鼠标持续进行对应于在X轴方向0.3和Y轴方向1的运动,则顺序计算运动坐标(0,1)、(0,1)、(1,1)、...。因此,在输入每个预处理的当前图像时,更新Y轴基准图像,而在输入每个第三预处理的当前图像,更新Y轴基准图像。
因此,通过根据对预处理的当前图像与X轴基准图像所做的比较,计算X轴运动坐标值,并通过根据对预处理的当前图像与Y轴基准图像所做的比较,计算Y轴运动坐标,可以有效检测二维运动。
运动坐标计算器140计算预处理的当前图像的X轴运动坐标值和Y轴运动坐标值,然后,通过PC接口200,将计算的运动坐标值速度个人计算机(PC)。如图2所示,运动坐标计算器140包括X通道基准单元141、Y通道基准单元142、图像比较单元143以及运动矢量单元144。
X通道基准单元141将预处理当前中心图像作为X轴候选基准图像存储,并根据预处理的当前图像的X轴运动,确定是利用作为下一个预处理的图像的X轴基准图像存储的X轴候选基准图像代替先前设置的X轴基准图像,还是将先前设置的X轴基准图像作为下一个预处理的图像的X轴基准图像保持。
Y通道基准单元142将预处理当前中心图像作为Y轴候选基准图像存储,并根据预处理的当前图像的Y轴运动,确定是利用作为下一个预处理的图像的Y轴基准图像存储的Y轴候选基准图像代替先前设置的Y轴基准图像,还是将先前设置的Y轴基准图像作为下一个预处理的图像的Y轴基准图像保持。
与预定定时信号同步,图像比较单元143从预处理器130接收预处理的当前图像。然后,在预处理的当前图像以不同重叠状态分别重叠X轴基准图像预定次数时,图像比较单元143将接收的预处理的当前图像与X轴基准图像进行比较。每次在X轴基准图像与预处理的当前图像重叠时,图像比较单元143计算预处理的当前图像中存在的、其位值与包括在X轴基准图像内的各像素的位值相同的像素的数量,然后,将计算值送到运动矢量单元144。
此外,在预处理的当前图像以不同重叠状态分别重叠Y轴基准图像预定次数时,图像比较单元143将从预处理器130接收的预处理的当前图像与Y轴基准图像进行比较。每次在Y轴基准图像与预处理的当前图像重叠时,图像比较单元143计算预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的各像素的位值相同的像素的数量,然后,将计算值送到运动矢量单元144。
现在,将参考图6a和6b,更详细说明这些操作过程。
图6a是示出从预处理器130输入到图像比较单元143的预处理的当前图像和预处理当前中心图像的像素阵列的原理图。图6b是示出在预处理的当前图像重叠基准图像预定次数的过程的原理图。
在所示的情况下,预处理的当前图像的运动坐标可以具有范围为-3至+3的X轴坐标和范围为-3至+3的Y轴坐标。因此,对预处理的当前图像显示49运动坐标。
即,在顺序位移基准图像时,预处理的当前图像重叠图6b中的虚线所示的、具有10×10像素阵列的基准图像预定次数,即49次。在49个重叠状态中的每种状态下,图像比较单元143计算预处理的当前图像中存在的、其2位值与包括在Y轴基准图像内的各像素的2位值相同的像素的数量。在所有49种重叠状态下,不存在或者几乎不存在预处理的当前图像完全具有其2位值与基准图像内的所有像素的2位值相同的像素的概率。因此,图像比较单元143将与49种重叠状态中的剩余重叠状态相比,其中预处理的当前图像中存在的、其位值与包括在基准图像内的各像素的位值相同的像素的数量是最大的重叠状态设置为用于计算预处理的当前图像的运动矢量的基准。
运动矢量单元144将其中预处理的当前图像中存在的、其位值与包括在X轴基准图像内的各像素的位值相同的像素的数量是最大的情况下的X轴基准图像的X轴坐标值设置为X轴运动矢量Vx。
此后,根据设置的X轴运动矢量Vx,运动矢量单元144计算预处理的当前图像的X轴运动坐标值,并通过PC接口200,将计算的X轴运动坐标值送到PC。
运动矢量单元144还将其中预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的各像素的位值相同的像素的数量是最大的情况下的Y轴基准图像的Y轴坐标值设置为Y轴运动矢量Vy。
此后,根据设置的Y轴运动矢量Vy,运动矢量单元144计算预处理的当前图像的Y轴运动坐标值,并通过PC接口200,将计算的Y轴运动坐标值送到PC。
以下将更详细说明这些操作过程。如果在顺序位移基准图像时,利用预处理的当前图像重叠基准图像预定次数,即49次,则产生分别具有X轴坐标值和Y轴坐标值的49个坐标,它们可以是(-3,3)、(-2,+3)、(-1,+3)、(0,+3)、(+1,+3)、...、(-1,-3)、(0,-3)、(+1,-3)、(+2,-3)、(+3,-3)。
将49个X轴坐标值中选择的一个X轴坐标值设置为X轴运动矢量Vx。即,运动矢量单元144将其中预处理的当前图像中存在的、其2位值与包括在X轴基准图像内的各像素的2位值相同的像素的数量是最大的情况下的X轴基准图像的X轴坐标值设置为X轴运动矢量Vx。
此外,将49个Y轴坐标值中选择的一个Y轴坐标值设置为Y轴运动矢量Vy。即,运动矢量单元144将其中预处理的当前图像中存在的、其2位值与包括在Y轴基准图像内的各像素的2位值相同的像素的数量是最大的情况下的Y轴基准图像的Y轴坐标值设置为Y轴运动矢量Vy。
如果X轴运动矢量Vx的值为0,则将先前在X通道基准单元141设置的基准图像作为X轴基准图像保持。然而,如果X轴运动矢量Vx的值不是0,则将对应于预处理的当前图像的预定部分的图像,例如,图6a所示的对应于预处理的当前图像的中心部分的中心图像设置为下一个预处理的图像的X轴基准图像。
同样,如果Y轴运动矢量Vy的值为0,则将先前在Y通道基准单元142设置的基准图像作为Y轴基准图像保持。然而,如果Y轴运动矢量Vy的值不是0,则将对应于预处理的当前图像的预定部分的图像,例如,图6a所示的对应于预处理的当前图像的中心部分的中心图像设置为下一个预处理的图像的Y轴基准图像。
现在,将参考图7至11说明根据本发明使用二维顺序图像处理的上述光导航传感器中的图像处理方法。
根据该图像处理方法,如图7所示,预处理器130首先存储从A/D变换器120接收的、当前支承面图像的各像素的数字电压值(S100)。
将参考图8详细说明该过程。图像像素阵列110对被光电鼠标所在的支承面反射后入射到其的光束进行光电变换,从而将各入射光束的光能分别变换为模拟电压值(S101),然后,将该模拟电压值送到A/D变换器120(S102)。
A/D变换器120将从图像像素阵列110接收的、每个像素的模拟电压值变换为特定位(例如,4至8位)的数字电压值,从而产生支承面的当前图像(S103)。然后,A/D变换器120将产生的当前图像送到预处理器130(S104)。
与预定定时信号同步,预处理器130从A/D变换器120顺序接收所有像素的数字电压值,然后,将接收的数字电压值存储到其存储器内(S105)。
因此,预处理器130从A/D变换器120顺序接收当前支承面图像的各像素的数字电压值,然后,根据当前支承面图像,产生具有特定像素阵列的预处理的当前图像。此后,预处理器130从预处理的当前图像中提取可以用作基准图像的预处理当前中心图像(S200)。
将参考图9详细说明该过程。在预处理器130与预定定时信号同步从A/D变换器120顺序接收当前支承面图像的各像素的数字电压值时(S201),它设置基本图像矩阵,该基本图像矩阵包括当前变换为特定位值的当前支承面图像的当前像素和与该当前像素相邻的各像素(S202)。
尽管基本图像矩阵具有3×3矩阵结构,但是并不局限于这种矩阵结构。根据本发明,可以采用不同的矩阵结构。
此后,利用上述表达式1和2,预处理器130对包括在基本图像矩阵内的各像素的数字电压值进行列到列/行到行的预处理(S203),从而将当前像素的数字电压值变换为2位数字电压值(S204)。
在完成将所有像素的各数字电压值变换为相应2位数字电压值后,预处理器130产生具有像素阵列的预处理的当前图像,该像素阵列由具有变换的2位数字电压值的各像素构成(S205)。
在此,如果在将当前图像的每个像素的数字电压值变换为2位值之前,当前图像具有n×n像素阵列,则预处理的当前图像具有(n-2)×(n-2)像素阵列。
此后,预处理器130提取对应于预处理的当前图像的预定部分的图像,即,对应于预处理的当前图像的中心部分的中心图像,以将提取的中心图像用作基准图像(S206)。然后,预处理器130将提取的预处理的当前图像送到运动坐标计算器140(S207)。
在运动坐标计算器140从预处理器130接收具有特定像素阵列、可以用作基准图像的预处理当前中心图像时,分别根据预处理的当前图像的X轴运动矢量和Y轴运动矢量,它确定是否将预处理当前中心图像用作用于计算下一个预处理的图像的运动坐标的X轴基准图像和Y轴基准图像(S300)。
将参考图10a和10b详细说明该过程。
首先,将参考图10a说明根据预处理的当前图像的X轴运动矢量值,将预处理当前中心图像设置为下一个预处理的图像的X轴基准图像或保持先前设置的X轴基准图像的过程。
如图10a所示,运动坐标计算器140计算预处理的当前图像的X轴运动(S301a),然后,确定与计算的X轴运动有关的X轴运动矢量Vx的值是否为0(S302a)。
当在步骤S302a确定X轴运动矢量Vx的值为0时,运动坐标计算器140不改变先前在X通道基准单元141设置的基准图像(S303a)。
相反,在在步骤S302a确定X轴运动矢量Vx的值不是0时,运动坐标计算器140利用预处理当前中心图像代替先前在X通道基准单元141设置的基准图像,并存储预处理当前中心图像(S304a)。
现在,将参考图10b说明根据预处理的当前图像的Y轴运动矢量值,将预处理当前中心图像设置为下一个预处理的图像的Y轴基准图像或保持先前设置的Y轴基准图像的过程。如图10b所示,运动坐标计算器140计算预处理的当前图像的Y轴运动(S301b),然后,确定与计算的Y轴运动有关的Y轴运动矢量Vy的值是否为0(S302b)。
当在步骤S302a确定Y轴运动矢量Vy的值为0时,运动坐标计算器140不改变先前在Y通道基准单元142设置的基准图像(S303b)。
相反,在在步骤S302b确定Y轴运动矢量Vy的值不是0时,运动坐标计算器140利用预处理的当前中心图像代替先前在Y通道基准单元142设置的基准图像,并存储预处理的当前中心图像(S304b)。
接着,在预处理的当前图像以不同重叠状态分别重叠X/Y轴基准图像预定次数时,运动坐标计算器140将预处理的当前图像与X/Y轴基准图像进行比较,从而计算预处理的当前图像的X/Y轴运动坐标值,如图7所示(S400)。
将参考图11a和11b详细说明该过程。
首先,将参考图11a详细说明在运动坐标计算器140内计算预处理的当前图像的X轴运动坐标值的过程。在运动坐标计算器140从预处理器130接收预处理的当前图像(S401a)时,它利用接收的预处理的当前图像以不同重叠状态分别重叠在X通道基准单元141设置的基准图像预定次数(S402a)。
在每种重叠状态下,运动坐标计算器140将预处理的当前图像与X轴基准图像进行比较,从而计算预处理的当前图像中存在的、其位值与包括在X轴基准图像内的各像素的位值相同的像素的数量(S403a)。
然后,根据步骤S403a的计算结果,运动坐标计算器140将其中预处理的当前图像中存在的、其位值与包括在X轴基准图像内的各像素的位值相同的像素的数量是最大的情况下的X轴基准图像的X轴坐标值设置为X轴运动矢量Vx(S404a)。
此后,根据设置的X轴运动矢量Vx,运动坐标计算器140计算预处理的当前图像的X轴运动坐标值,并通过PC接口200,将计算的X轴运动坐标值送到PC(S405a)。
现在,将参考图11b详细说明在运动坐标计算器140内计算预处理的当前图像的Y轴运动坐标值的过程。在运动坐标计算器140从预处理器130接收预处理的当前图像(S401b)时,它利用接收的预处理的当前图像以不同重叠状态分别重叠在X通道基准单元141设置的基准图像预定次数(S402b)。
在每种重叠状态下,运动坐标计算器140将预处理的当前图像与Y轴基准图像进行比较,从而计算预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的各像素的位值相同的像素的数量(S403b)。
根据步骤S403b的计算结果,运动坐标计算器140将其中预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的各像素的位值相同的像素的数量是最大的情况下的Y轴基准图像的Y轴坐标值设置为Y轴运动矢量Vy(S404b)。
此后,根据设置的Y轴运动矢量Vy,运动坐标计算器140计算预处理的当前图像的Y轴运动坐标值,并通过PC接口200,将计算的Y轴运动坐标值送到PC(S405b)。
PC接口200累积预定时间的X/Y轴运动坐标值,然后,将累积的X/Y轴运动坐标值送到PC。PC接口200可以包括在本发明的传感器中。作为一种选择,PC接口200可以设置在本发明传感器的外部。
根据上述说明可以明白,根据本发明的光导航传感器和使用二维顺序图像处理的图像处理方法,通过进行预处理,将从传感器的图像像素阵列接收的各像素的模拟电压值分别变换为2位数字电压值,因此它可以防止因为光量的变化和传感器使用的模拟电路产生的噪声导致的数字电压值发生变化,从而准确跟踪传感器的运动。
尽管为了说明问题,公开了本发明的优选实施例,但是本技术领域内的普通技术人员明白,在所附权利要求所述的本发明实质范围内,可以对其进行各种修改、附加和替换。
权利要求
1.一种光导航传感器,该光导航传感器包括图像像素阵列,用于计算分别其对应于从传感器放置在其上的支承面反射的入射到像素的反射光束的相对光强的各像素的模拟电压值;模数(A/D)变换器,用于将从其接收的像素的模拟电压值分别变换为相应的数字电压值,从而产生支承面的当前图像;预处理器,用于根据预定定时信号,从A/D变换器顺序接收当前支承面图像的所有像素的数字电压值,用于对当前支承面图像进行预处理,从而产生由分别具有2位数字电压值的各像素构成的预处理的当前图像,以及用于从预处理的当前图像中提取具有预定像素阵列的预处理当前中心图像;以及运动坐标计算器,用于将从预处理器接收的预处理的当前中心图像设置为X/Y轴候选基准图像,用于在预处理的当前图像重叠先前设置的X轴基准图像时,计算X轴运动矢量,从而计算预处理的当前图像的X轴运动坐标值,以及用于在预处理的当前图像重叠先前设置的Y轴基准图像时,计算Y轴运动矢量,从而计算预处理的当前图像的Y轴运动坐标值。
2.根据权利要求1所述的光导航传感器,其中通过将当前接收的当前图像像素中的一个当前像素的数字电压值和与该当前像素垂直相邻的像素的数字电压值之和与在水平方向离开当前像素预定距离的像素的数字电压值和与在水平方向离开的像素垂直相邻的像素的数字电压值之和进行比较,从而根据比较结果,确定当前像素的2位值中的一位,并通过将当前像素的数字电压值和与该当前像素水平相邻的像素的数字电压值之和与在垂直方向离开当前像素预定距离的像素的数字电压值和与在垂直方向离开的像素水平相邻的像素的数字电压值之和进行比较,从而根据比较结果,确定当前像素的2位值中的另一位,从而预处理器将从A/D变换器顺序接收的当前图像的各像素的数字电压值分别变换为相应2位值。
3.根据权利要求2所述的光导航传感器,其中在对当前像素的数字电压值和相邻像素的数字电压值求和后,预处理器对与当前像素水平或垂直相邻的像素附加权。
4.根据权利要求1所述的光导航传感器,其中运动坐标计算器包括X通道基准单元,用于将从预处理器接收的预处理的当前中心图像作为X轴候选基准图像存储,以计算要顺序输入的下一个预处理的图像的运动坐标值,并用于在对应于X轴运动的预处理的当前图像的X轴运动矢量的值不是0时,将X轴候选基准图像设置为下一个预处理的图像的X轴基准图像,而在预处理的当前图像的X轴运动矢量的值为0时,保持先前设置的X轴基准图像;Y通道基准单元,用于将从预处理器接收的预处理的当前中心图像作为Y轴候选基准图像存储,以计算下一个预处理的图像的运动坐标值,并用于在对应于Y轴运动的预处理的当前图像的Y轴运动矢量的值不是0时,将Y轴候选基准图像设置为下一个预处理的图像的Y轴基准图像,而在预处理的当前图像的Y轴运动矢量的值为0时,保持先前设置的Y轴基准图像;图像比较单元,用于从预处理器接收预处理的当前图像,使预处理的当前图像以不同重叠状态顺序重叠存储在X通道基准单元内的X轴基准图像预定次数,将以每种重叠状态互相重叠的图像进行比较,从而计算预处理的当前图像中存在的、其位值与以每种重叠状态包括在X轴基准图像内的各像素的位值相同的像素的数量,使预处理的当前图像以不同重叠状态顺序重叠存储在Y通道基准单元内的Y轴基准图像预定次数,将以每种重叠状态互相重叠的图像进行比较,从而计算预处理的当前图像中存在的、其位值与以每种重叠状态包括在Y轴基准图像内的各像素的位值相同的像素的数量;以及运动矢量单元,用于将其中预处理的当前图像中存在的、其位值与包括在X轴基准图像内的像素的位值相同的像素的数量是最大的重叠状态下的X轴基准图像的X轴坐标值设置为预处理的当前图像的X轴运动矢量,从而计算预处理的当前图像的X轴运动坐标值,以及将其中预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的像素的位值相同的像素的数量是最大的重叠状态下的Y轴基准图像的Y轴坐标值设置为预处理的当前图像的Y轴运动矢量,从而计算预处理的当前图像的Y轴运动坐标值。
5.一种采用二维顺序图像处理的图像处理方法,该方法包括步骤(A)预处理器将通过模数(A/D)变换器从预处理器接收的图像的各像素的数字电压值存储到存储器;(B)根据预定定时信号,预处理器对从存储器顺序接收的各像素的数字电压值进行预处理,从而产生预处理的当前图像,并从预处理的当前图像中提取预处理的当前中心图像;(C)根据预处理的当前图像的运动矢量,运动坐标计算器确定是否将预处理的当前中心图像设置为X/Y轴基准图像,用于计算下一个预处理的图像的运动坐标值;以及(D)运动坐标计算器将从预处理器接收的预处理的当前图像与分别存储在X/Y通道基准单元内的X/Y轴基准图像进行比较,从而计算预处理的当前图像的X/Y轴运动坐标值。
6.根据权利要求5所述的图像处理方法,其中步骤(A)包括步骤(A-1)图像像素阵列将从光电鼠标放置在其上的支承面输入到图像像素阵列的各像素的反射光束分别变换为模拟电压值;(A-2)图像像素阵列将各像素的模拟电压值送到A/D变换器;(A-3)A/D变换器将从图像像素阵列接收的各像素的模拟电压值分别变换为相应数字电压值;(A-4)将A/D变换器输出的各像素的数字电压值送到预处理器;以及(A-5)预处理器将从A/D变换器接收的各像素的数字电压值存储到存储器。
7.根据权利要求5所述的图像处理方法,其中步骤(B)包括步骤(B-1)根据预定定时信号,预处理器从存储器顺序接收像素的数字电压值;(B-2)预处理器设置由当前变换为预定位值的像素中的当前一个像素和与该当前像素相邻的像素构成的基本图像矩阵;(B-3)预处理器对包括在基本图像矩阵内的像素的数字电压值进行列到列/行到行计算,从而将当前像素的数字电压值变换为2位数字电压值;(B-4)预处理器产生具有像素阵列的预处理的当前图像,该像素阵列由分别具有在步骤(B-3)分别获得的2位数字电压值的像素构成;以及(B-5)预处理器从预处理的当前图像中提取具有预定像素阵列的预处理的当前中心图像。
8.根据权利要求7所述的图像处理方法,其中步骤(B-3)包括步骤(B-3-1)将当前接收的当前图像像素中的当前像素的数字电压值和与该当前像素垂直相邻的各像素的数字电压值之和与在水平方向离开当前像素预定距离的像素的数字电压值和与在水平方向离开的像素垂直相邻的各像素的数字电压值之和进行比较,从而根据比较结果,确定当前像素的2位值中的一位;(B-3-2)将当前像素的数字电压值和与该当前像素水平相邻的各像素的数字电压值之和与在垂直方向离开当前像素预定距离的像素的数字电压值和与在垂直方向离开的像素水平相邻的各像素的数字电压值之和进行比较,从而根据比较结果,确定当前像素的2位值中的另一位。
9.根据权利要求8所述的图像处理方法,其中在对当前像素的数字电压值和相邻像素的数字电压值求和后,对与当前像素水平或垂直相邻的像素附加权。
10.根据权利要求7所述的图像处理方法,其中基本图像矩阵是3×3矩阵。
11.根据权利要求5所述的图像处理方法,其中步骤(C)包括步骤(C-1)运动坐标计算器计算预处理的当前图像的X轴运动;(C-2)运动坐标计算器确定对应于计算的X轴运动的X轴运动矢量的值是否为0;(C-3)如果在步骤(C-2)确定X轴运动矢量的值为0,则保持先前在X通道基准单元设置的基准图像;(C-4)如果在步骤(C-2)确定X轴运动矢量的值不是0,则利用预处理的当前图像代替先前在X通道基准单元设置的基准图像;(C-5)运动坐标计算器计算预处理的当前图像的Y轴运动;(C-6)运动坐标计算器确定对应于计算的Y轴运动的Y轴运动矢量的值是否为0;(C-7)如果在步骤(C-6)确定Y轴运动矢量的值为0,则保持先前在Y通道基准单元设置的基准图像;(C-8)如果在步骤(C-6)确定Y轴运动矢量的值不是0,则利用预处理的当前图像代替先前在Y通道基准单元设置的基准图像。
12.根据权利要求5所述的图像处理方法,其中步骤(D)包括步骤(D-1)运动坐标计算器从预处理器接收预处理的当前图像;(D-2)运动坐标计算器使预处理的当前图像以不同重叠状态顺序重叠存储在X通道基准单元内的X轴基准图像预定次数;(D-3)运动坐标计算器将以每种重叠状态互相重叠的图像进行比较,从而计算预处理的当前图像中存在的、其位值与以每种重叠状态包括在X轴基准图像内的各像素的位值相同的像素的数量;(D-4)运动坐标计算器将其中预处理的当前图像中存在的、其位值与包括在X轴基准图像内的各像素的位值相同的像素的数量是最大的重叠状态下的X轴基准图像的X轴坐标值设置为预处理的当前图像的X轴运动矢量;(D-5)根据设置的X轴运动矢量,运动坐标计算器计算预处理的当前图像的X轴运动坐标值;(D-6)运动坐标计算器使预处理的当前图像以不同重叠状态顺序重叠存储在Y通道基准单元内的Y轴基准图像预定次数;(D-7)运动坐标计算器将以每种重叠状态互相重叠的图像进行比较,从而计算预处理的当前图像中存在的、其位值与以每种重叠状态包括在Y轴基准图像内的各像素的位值相同的像素的数量;(D-8)运动坐标计算器将其中预处理的当前图像中存在的、其位值与包括在Y轴基准图像内的各像素的位值相同的像素的数量是最大的重叠状态下的Y轴基准图像的Y轴坐标值设置为预处理的当前图像的Y轴运动矢量;(D-9)根据设置的Y轴运动矢量,运动坐标计算器计算预处理的当前图像的Y轴运动坐标值。
全文摘要
本发明公开了一种光导航传感器和采用二维顺序图像处理的图像处理方法。预处理器将从预处理器接收的图像的各像素的数字电压值存储到存储器;对从存储器顺序接收的各像素的数字电压值进行预处理,从而产生预处理的当前图像;以及从预处理的当前图像中提取预处理当前中心图像。运动坐标计算器将预处理的当前中心图像作为X/Y轴候选基准图像存储;根据预处理的当前图像的X/Y轴运动,确定代替X/Y轴基准图像,用于计算下一个预处理的图像的运动坐标值;以及将预处理的当前图像与X/Y轴基准图像进行比较,从而计算预处理的当前图像的X/Y轴运动坐标值。
文档编号G01B11/00GK1604126SQ200410001659
公开日2005年4月6日 申请日期2004年1月9日 优先权日2003年10月2日
发明者朴根佑, 崔原太, 闵庚重, 黄炳元, 金江柱 申请人:三星电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1