物体识别方法及装置、物体识别用程序及其存储介质的制作方法

文档序号:6562536阅读:172来源:国知局
专利名称:物体识别方法及装置、物体识别用程序及其存储介质的制作方法
技术领域
本发明涉及一种用于在处理对象图像中识别具有与预先所登记的模型相对应的轮廓形状的识别对象物的位置及姿势的图像处理技术。特别是,本发明涉及一种利用包含在处理对象的图像中的多个边缘点以及其边缘方向来执行被称为“广义霍夫变换(Generalized Hough Transformation)”的处理,从而识别识别对象物体的位置以及旋转角度的技术。
背景技术
在现有的广义霍夫变换中,预先利用包括上述模型的基准图像来确定识别对象物的基准点的同时,对每个构成模型的轮廓的多个边缘点(以下,称为“模型边缘点”)登记表示相对边缘方向、基准点的方位以及距离的信息。在进行计测时,针对处理对象图像上的边缘点,分别利用各模型边缘点的登记信息来对于基准点的坐标以及旋转角度计算出多个值,并将各值向假想的三维空间(投票空间)投票。然后,基于得票最多的坐标,来识别处理对象图像上的物体的基准点的坐标以及物体的旋转角度。
利用图12~图16具体地说明上述处理。
图12是表示上述基准图像上的任意模型边缘点的登记信息。图中的30为基准图像,点O为上述模型的基准点,点M(将坐标设为(X0,Y0))为上述模型边缘点。基准点O多采用模型的中心点,但并不仅限定于此,而也可以将用户所指定的任意的点设定为基准点O。
角度α是表示模型边缘点M的边缘方向的角度,在该例子中,在模型边缘点M的法线方向(浓度梯度方向)相对X轴(水平方向的轴)的正方向所成的角度设为α。另外,角度φ是表示模型边缘点M相对基准点O的方位的角度,在该例子中,从上述法线沿逆时针方向观察线段OM的角度设为φ。还有,R是从上述基准点O到模型边缘点M的距离。
在广义霍夫变换中,对于基准图像上的各模型边缘点,分别求出上述角度α、角度φ、距离R,并将这些编辑成如图13所示的图表中来进行登记。
图14是表示处理对象图像的例子的图。图中的31为处理对象图像,点E为该图像中的一边缘点。另外,角度β是表示在边缘点E上的边缘方向的角度,其通过与上述角度α同样的方法来求出。
如果上述边缘点E相当于上述模型边缘点M,则即使通过识别对象物的旋转来使边缘方向变化,表示相对上述基准点O的关系的角度φ、距离R也应该与模型边缘点M相同。因此,能够利用边缘点E的坐标(x,y)、角度β、以及所登记了的角度φ、距离R,来确定基准点O的坐标。另外,此时,表示边缘方向的角度β和上述所登记的角度α之差Θ(Θ=β-α)相当于处理对象图像上的物体的旋转角度。
但是,处理对象图像31上的边缘点和模型边缘点之间的对应关系不明确。并且,存在处理对象图像31中包含有噪声成分的边缘点的可能性。为此,在广义霍夫变换中,针对处理对象图像31上的各边缘点E,分别与被登记在上述图13的图表中的N个模型边缘点依次建立对应关系,并将建立对应关系的模型边缘点的登记信息适用于边缘点E,而求出基准点O的坐标(X,Y)以及旋转角度Θ。然后,每当算出(X,Y,Θ)组时,向以该组所表现的三维投票空间(在图15中所示)中的一点投1票。其结果,在投票空间中,与正确的基准点O以及旋转角度Θ对应的坐标的得票变得最高,因此,通过抽取得到该最高得票的坐标,而能够求出基准点O的坐标以及物体的旋转角度。
另一方面,在下述非专利文献1中,取代设定三维投票空间的方法,而利用多个二维投票平面来进行投票处理,从而识别上述基准点O的坐标以及物体的旋转角度。
非专利文献1齐藤文彦,“通过利用二维参数空间的广义霍夫变换的旋转图像的抽取(2次元パラメ一タ空間を用いた一般化ハフ変換による回転図形の抽出)”,图像电子学会志(画像電子学会誌),1996年4月,第25卷、第2号、p.130-137图16表示上述非专利文献1中所公开的投票处理的概要。在该方法中,设定有用于对基准点O的坐标(X,Y)进行投票的存储器(基准点投票用存储器)、用于对上述旋转角度Θ的余弦以及正弦值进行投票的存储器(cos值存储器、sin值存储器)等。而且,给与所算出的坐标(Xi,Yi)对应的基准点投票用存储器中的坐标加1的同时,在cos值存储器、sin值存储器的同一坐标中分别存储cosΘ、sinΘ的值。进而,通过将cosΘ、sinΘ的值与上次被存储在同样坐标中的值进行比较,而求出相差小的值向同一坐标被连续投票的次数,而且,若该次数等于或大于规定值R,则可判断所投票的值反映正确的(X,Y,Θ)。
在上述现有的广义霍夫变换中,由于需要设定三维的投票空间,所以需要大容量的存储器。另外,若存储器容量变大,则用于读取或写入数据的时间变长,从而存在处理费时间的问题。
对此,在非专利文献1所示的方法中,通过利用二维平面的投票处理,而能够大幅度地削减存储器容量,从而能够实现处理的高速化。但是,若用于判别正确的投票的连续投票次数R没有被设定得适当,则进行判别处理时可能会发生错误。
例如,当R的值设定成小于最佳值时,若在处理对象图像中包含有多种噪声,则对于噪声也可能会产生超过R次的连续投票。与此相反,在R的值设定成大于最佳值时,即使在识别对象物的边缘点,连续投票次数也可能达不到R次。

发明内容
本发明是着眼于上述问题而进行的,其目的在于通过进行能够削减用于投票处理的存储器容量的同时、不易受到噪声的影响的投票处理,从而实现利用广义霍夫变换的物体识别处理的高速化以及高精度化。
在本说明书中,所谓“边缘点”是意味着构成图像上的边缘的点,是指针对对像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边的像素的上述规定变量,来求出关注像素上的上述规定变量的变化的梯度时,其梯度超过规定值的像素。另外,构成进行过细化处理(thinningprocess)之后的轮廓线的点,也包括在边缘点的概念中。
例如,将黑白的灰度图像作为对象时,能够将浓度值的梯度超过规定值的像素作为边缘点来抽取。
另外,例如,将彩色图像作为对象时,能够将对于由相互独立的三个颜色变量(例如R、G、B)所规定的各像素的信息中的至少一个变量的变化的梯度超过规定值的像素,作为边缘点而进行抽取。此外,变量是除了明度(Value)或色调(Hue)、R、G、B的各强度之外,也可以是其他的表现色彩的三个变量中的任意一个、或利用这些可得到的颜色信息。
在本发明的物体识别方法中,利用包含具有规定的轮廓形状的模型的基准图像,来设定基准点的坐标的同时,分别独立地关注构成上述模型的轮廓的多个模型边缘点,并针对对图像信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出上述关注像素的上述规定变量的变化方向,并对表示与该变化方向对应的边缘方向、上述基准点相对上述边缘方向的方位、以及自上述基准点的距离的信息(例如,在上述图12中所示的α、φ、R)进行登记。
进而,针对对像素信息进行规定的一个或多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出关注像素的上述规定变量的变化的梯度时,将包含以该梯度超过规定值的关注像素为边缘点时的该边缘点的图像作为处理对象,而对于该处理对象图像上的多个边缘点求出该边缘点的坐标以及边缘方向的同时,执行算出上述多个模型边缘点分别相当于上述边缘点时由上述登记信息所规定的基准点的坐标、以及表示边缘点的边缘方向和模型边缘点的边缘方向之差的角度的处理、与基于所算出的各值的投票处理,并利用上述投票处理的结果来识别对应于上述模型的轮廓图案的位置、以及以上述模型为基准的轮廓图案的旋转角度。
此外,表示边缘方向的信息并不仅限定于表示边缘点的法线方向的角度α,而也可以是与此垂直的方向、即表示边缘点的切线方向的角度。另外,“对应于模型的轮廓图案”并不仅限定于具有与模型同样的轮廓的图案,而也可以是其一部分的轮廓的图案。
本发明的物体识别方法对用于投票处理以及物体识别的处理,具有如下的特征。
在投票处理中,对于上述处理对象图像上的各边缘点,分别向对每个模型边缘点所求出的上述基准点的坐标,投票与和该坐标一同被算出的旋转角度相对应的矢量的同时,对每个有过投票的坐标算出表示所投票的矢量的合成矢量的数值信息。进而,在物体识别处理中,对应于投票处理以及表示合成矢量的数值信息的算出处理的结束,利用上述数值信息而从上述有过投票的坐标中抽取上述合成矢量的长度超过规定值的坐标、或者与从长度最大的合成矢量开始依次观察各合成矢量时的规定数目的矢量对应的坐标,并利用该抽取结果来识别上述物体的位置以及对象物的旋转角度。
与上述旋转角度对应的矢量可通过例如将该矢量分解为两个方向时的各矢量分量来被表示。或者,代替矢量分量,而也可以通过旋转角度的正弦值(sinΘ)以及余弦值(cosΘ)来表示。
在上述投票处理中,例如,设定将基准点的坐标作为自变量而存储上述数值信息的累计值的数组(例如sinΘ(X,Y)、cosΘ(X,Y)),而每算出坐标(X,Y)以及旋转角度Θ时,向与上述数组中的(X,Y)对应的数值信息相加基于所算出的旋转角度Θ的值。
若根据上述投票处理,则在成为投票对象的坐标中的正确的基准点的坐标,所投票的矢量方向的离散变得极小,与此相对,在其他的坐标(与错误的模型边缘点建立对应关系时所算出的坐标、或者由噪声的边缘点所算出的坐标),所投票的矢量方向的离散变大的可能性很大。因此,若合成与所投票的旋转角度对应的矢量,则在正确的基准点的坐标的合成矢量变得比其他坐标的合成矢量更长。由此,例如,预先求出合成规定数量的指向同一方向的矢量时的合成矢量的长度,将其作为阈值而进行设定,并抽取上述合成矢量的长度超过该阈值的坐标,从而能够不受噪声的影响而求出基准点的正确的坐标。还有,由向该坐标所投票的矢量总和的方向,能够高精度地求出识别对象物的旋转角度。此外,优选地,将所抽取的坐标作为合成矢量的长度超过上述阈值、且成为作为最大值的坐标。
进而,上述投票处理并不是利用如现有的广义霍夫变换这样的三维投票空间,而能够利用二维投票空间来进行。另外,如上述非专利文献1,也不需要设置多个投票平面,因此,能够大幅度地削减存储器容量,从而能够实现运算的高速化。
此外,优选地,每次进行矢量的投票时进行投票处理中的矢量合成,但是,并不仅限定于此,例如,对每个坐标累计向该坐标所投票的矢量,而最终进行对矢量的合成处理也可。
还有,在能够将识别对象物限定为一个时,从有过上述投票的坐标中抽取上述合成矢量的长度为最大的坐标,并基于该坐标而识别轮廓图案的位置以及旋转角度也可。
另外,也可以将轮廓图案的位置作为上述基准点的坐标其本身,但是,并不仅限定于此,例如,也可以将从基准点离开规定距离的点的坐标作为轮廓图案的位置。或者,也可以基于上述模型边缘点的登记坐标,来求出相对基准点而位于特定的位置关系的边缘点的坐标,而将该坐标作为轮廓图案的位置。
另一方面,对于轮廓图案的角度,例如能够由上述合成矢量的长度超过规定值的坐标的该合成矢量求出。例如,能够求出合成矢量相对水平方向(X轴方向)所成的角度。
在上述物体识别方法的优选方式的投票处理中,对每个所投票的坐标求出上述旋转角度的正弦以及余弦的累计值,并算出这些两种累计值的平方和而作为上述合成矢量的长度。另外,在其他优选的方式的上述投票处理中,对每个所投票的坐标求出表示将与上述旋转角度对应的矢量分解为水平以及垂直两个方向时的各矢量的指向以及长度的数值信息,并算出这些两种累计值的平方和而作为上述合成矢量的长度。
若根据上述两个方式,则例如每当算出基准点的坐标以及旋转角度,都更新两种数值信息,而通过最终的各数值信息的平方和而能够求出正确的基准点的坐标以及旋转角度。
进而,在本发明的物体识别方法中,能够设定以下A~E的方式。
<方式A>
在该方式中,基于利用表示上述合成矢量的数值信息所抽取的坐标而求出上述物体的临时位置以及临时旋转角度之后,执行步骤a和步骤b,该步骤a是对于各模型边缘点,基于上述临时位置以及临时旋转角度而求出处理对象图像上的对应点,而该步骤b是对于包含上述对应点的局部区域内所包含的边缘点,利用上述模型边缘点的登记信息而算出基准点的坐标以及相对模型的旋转角度。然后,针对各模型边缘点,对通过上述步骤a、b所求出的基准点的坐标进行平均化的同时,对表示上述旋转角度的矢量进行合成,并基于被平均化的基准点的坐标以及上述合成矢量所示的角度,来识别上述物体的位置以及旋转角度。
在上述方式中,在步骤a中所求出的对应点的坐标相当于基于临时位置以及临时旋转角度移动上述基准图像上的模型边缘点时的坐标,但是,在该坐标不存在边缘点也可。
在步骤b中,例如设定以上述对应点为中心的局部区域(遮罩(Mask)),而对包含在该区域的各边缘点与用于上述对应点的计算中的模型边缘点建立对应,而算出基准点的坐标以及表示上述边缘方向之差的角度。这些局部区域内的边缘点与上述模型边缘点相对应、或其为离模型边缘点极近的点的可能性很高,因此,所算出的坐标或角度的离散也会极小。因此,通过对这些基准点的坐标实现平均化,而能够高精度地求出真正基准点的坐标。另外,通过由与各基准点的坐标一起所求出的角度得到的合成矢量,而能够高精度地求出旋转角度。
但是,当噪声被包含在包含上述对应点的处理对象区域内时,存在由于由该噪声所算出的值而在上述坐标或角度的平均值上产生偏差的可能性。因此,在所算出的坐标以及角度和由上述合成矢量所识别的坐标以及旋转角度之间存在大于规定值的差时,优选从平均值的算出对象中排除该算出的值。
此外,取代算出平均值,而也可以将对应于在上述局部区域中所求出的坐标以及角度的矢量投票到与先前的投票处理时相比标度更细的投票平面。
<方式B>
在该方式中,基于利用表示上述合成矢量的数值信息所抽取的坐标而识别上述轮廓图案的位置以及旋转角度之后,利用使用了具有与上述模型对应的轮廓形状的一个或者多个灰度图像的模型,来执行反映了上述轮廓图案的位置以及旋转角度的归一化相关运算。
该方式例如能够适用于识别具有图样或颜色的对象物的情况。通常,利用归一化相关运算来求出物体的位置以及旋转角度时,从基准图像作成多个灰度图像模型(将基准图像的模型每次旋转规定角度的图形),并对每个模型必须执行以整个处理对象图像为对象的检索。
与此相对,若根据上述方式B,则先通过广义霍夫变换来求出对象物的大致位置以及旋转角度,因此,例如,只要在被识别的物体的位置设定灰度图像模型,并以上述旋转角度为基准而旋转修正该模型,然后执行归一化相关运算,就可得到改善,从而能够大幅度地削减归一化相关运算所需的处理时间。而且,在其所限定的处理时间中,能够执行高精度的检索处理。
<方式C>
在该方式,在对每个处理对象图像上的边缘点求出上述基准点的坐标的值的处理中,对于基准点相对上述边缘方向的上述所登记的方位和在其相反的方位,分别算出各一个上述基准点的坐标的候补。
例如,在是为上述图14的处理对象图像31的情况下,对于边缘点E,在从上述角度β所表示的边缘方向成角度φ的方向、以及将该方向旋转180°的方向上,分别算出从边缘点E离开距离R的点的坐标。
若根据该方式C,则对于基准图像,即使在处理对象图像黑白反转时或将彩色图像作为处理对象时等无法唯一地确定边缘点上的边缘方向的情况下,也能够通过投票处理来识别对象物的位置以及角度。
<方式D>
在该方式,以对上述各模型边缘点的登记处理的结束为条件,对于上述基准图像上的各边缘点,分别利用上述各模型边缘点的上述登记信息来求出基准点的坐标以及边缘方向的旋转角度的候补值之后,进行对上述投票处理以及表示上述合成矢量的数值信息的运算处理。然后,所有边缘点的投票结束时的上述数值信息所表示的合成矢量的长度小于规定的阈值时,再次执行对上述基准点的设定以及对各模型边缘点的登记处理。
例如,在识别对象的物体的轮廓形状相当于点对称图形时,若将物体的中心点设定为基准点,则对于一个模型边缘点,而算出在处于点对称关系的两个边缘点的基准点的正确坐标的同时,向该坐标投票指向与其相反方向的矢量。其结果,对应于正确的基准点的合成矢量变短,而产生无法正确识别对象物的位置和旋转角度的可能性。
上述方式D为了解决这样的问题,而在对各模型边缘点的登记处理结束的时刻,将基准图像作为对象,而执行与利用所登记的信息来对处理对象图像所进行的处理同样的计算处理以及投票处理。其结果,在所得到的矢量的长度小于规定阈值时,重新设定基准点,并再次执行对各模型边缘点的登记处理。
若根据这样的处理,则由于能够设定适于求出对象物的位置以及旋转角度的基准点,所以,不管识别对象物的形状,而都能够执行高精度的识别处理。
<方式E>
在该方式中,将多个坐标不同的点设定为上述基准点,并针对处理对象图像的每个基准点执行求出上述基准点的坐标的处理以及投票处理。
例如,若仅有模型的中心点或重心被设定为基准点,则即使在处理对象图像中存在多个与模型对应的轮廓被重合的形状的物体时,每个与模型对应的形状的基准点重叠而作为一个点来被抽取,从而存在无法正确识别作为整个物体的轮廓形状的可能性。
与此相对,若根据上述方式E,则即使中心点或重心包含于基准点中,但其他的基准点也会根据每个与模型对应的轮廓而被抽取,所以,基于这些抽取结果,也能够区分并判别各轮廓的朝向或位置关系。因此,能够正确识别整个物体的轮廓形状。
下面,本发明的物体识别用程序,其用于对计算机设定如下的功能,其中,该计算机具有的功能是利用包含具有规定的轮廓形状的模型的基准图像,来设定基准点的坐标的同时,分别独立地关注构成上述模型的轮廓的多个模型边缘点,而针对对像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出上述关注像素的上述规定变量的变化方向,并对表示作为与该变化方向对应的方向的边缘方向、上述基准点相对上述边缘方向的方位、以及自上述基准点的距离的信息进行登记的功能;以及,针对对上述像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出关注像素的上述规定变量的变化的梯度时,将包含以梯度超过规定值的关注像素为边缘点而抽取出时的该边缘点的图像作为处理对象,而对于该处理对象图像上的多个边缘点求出该边缘点的坐标以及边缘方向的功能,该程序对计算机设定的功能是从上述处理对象图像来识别与上述模型对应的轮廓图案的位置、以及以上述模型为基准的轮廓图案的旋转角度,其作为候补值算出单元、存储单元、信息更新单元、抽取单元、识别单元的各单元而使上述计算机进行识别。
上述候补值算出单元对于上述处理对象图像上的各个边缘点,分别利用上述各模型边缘点的登记信息,来算出所登记的各模型边缘点分别相当于上述边缘点时所规定的基准点的坐标、以及表示边缘点的边缘方向和模型边缘点的边缘方向之差的角度。
存储单元用于存储表示对每个基准点的坐标合成与上述候补值算出单元所算出的角度对应的矢量时的该合成矢量的数值信息。例如,在通过上述旋转角度的正弦以及余弦的值来表示与旋转角度对应的矢量时,将这些数值信息的累计值与基准点的坐标(X,Y)建立对应而进行存储的二维数组发挥存储单元的功能。
信息更新单元,其每当通过上述候补值算出单元算出基准点的坐标以及旋转角度时,用所算出的角度来更新与所算出的基准点的坐标对应的上述存储单元内的数值信息。抽取单元,其对应于上述候补值算出单元以及信息更新单元的处理的结束,利用存储在上述存储单元的数值信息而抽取上述合成矢量的长度超过规定值的坐标、或者与从长度最大的合成矢量开始依次观察各合成矢量时的规定数目的矢量对应的坐标。
识别单元,其利用上述抽取单元的抽取结果,而识别上述轮廓图案的位置以及旋转角度。
若根据上述程序,则能够预先利用基准图像,以登记有涉及上述基准点的设定、以及多个模型边缘点的信息为条件,而执行上述物体识别方法。
此外,存储有该程序的存储介质,除了包括上述功能之外,还可以包括用于设定抽取处理对象图像上的边缘点的功能、用于执行识别了上述轮廓图案的位置以及角度之后的处理(计测、判别等)的功能的程序。
本发明的物体识别装置具备用于输入包括上述边缘点的图像的图像输入单元;登记单元,其由上述图像输入单元被输入包含具有规定的轮廓形状的模型的基准图像时,利用该基准图像来设定基准点的坐标的同时,对于构成该基准图像中的上述模型的轮廓的多个模型边缘点,登记表示边缘方向、对基准点的方位、以及自上述基准点的距离的信息;以及上述候补值算出单元;存储单元;信息更新单元、抽取单元、识别单元等各装置。
在上述结构中,除了图像处理单元的各单元,也可以通过设定有涉及各自的单元的程序的计算机来构成,但是,并不仅限定于此,也可以通过IC等集成电路来构成。另外,将一部分单元通过计算机来构成,而其他的单元由IC等来构成也可。
若根据本发明,则能够执行反映了基准点与旋转角度的正确值的得票得以强化的同时、由模型边缘点的对应关系的错误以及噪声所产生的得票变小的投票处理,因此,不受噪声的影响而能够高精度地求出对象物的位置和旋转角度。另外,由于能够大幅度地削减用于投票处理的存储器容量,所以,也能够实现识别处理的高速化。


图1是表示适用本发明的图像处理装置的设置例的说明图。
图2是图像处理装置的框图。
图3是表示投票处理的概要的说明图。
图4是表示检查步骤的流程图。
图5是表示模型登记处理的步骤的流程图。
图6是表示初始检索的步骤的流程图。
图7是表示详细检索的步骤的流程图。
图8是表示向模型边缘点的对应点、以及遮罩的设定例的说明图。
图9是用于说明设定多个基准点的意义的图。
图10是表示必须算出两个基准点的坐标的事例的说明图。
图11是表示算出两个基准点的坐标时的计算方法的说明图。
图12是表示用于广义霍夫变换的基准图像以及登记信息的说明图。
图13是表示模型图表的构成例的说明图。
图14是与模型边缘点的关系一起表示将处理对象图像的一例的说明图。
图15是表示现有的广义霍夫变换中的投票处理的说明图。
图16是表示非专利文献1所公开的投票处理的说明图。
具体实施例方式
(1)图像处理装置的结构图1表示适用本发明的图像处理装置的设置例。
该实施例的图像处理装置由照相机1、控制器2、监视器3、控制板4等构成,而且,在工厂的检查流水线L中,依次拍摄被搬送过来的工件W而生成图像,并通过处理该图像,来判别上述工件W上的识别对象物7(在该实施例中为印刷有字符串“ABC”的标签)的适当与否。
图2表示上述图像处理装置的电气结构。
上述控制器2以CPU21为控制主体,并具备闪存器22、RAM23、图像控制器24、照相机用接口25、输入用接口26、外部用接口27等。
在闪存器22中存储有对程序以及处理所必要的参数等,在RAM23中暂时保存有图像数据以及中途的运算结果等。
在照相机用接口25包括上述照相机1的驱动电路、用于接收图像信号的缓冲存储器、A/D变换电路(都未图示)等。输入用接口26用于接收来自上述控制板4的信号。外部用接口27是在与未图示的外部设备(个人电脑、PLC等)进行通信时被使用。图像控制器24执行对上述监视器的显示控制。
在上述CPU21上连接有工件检侧用传感器5(光电开关、接近开关(proximity switch)等)。CPU21若从该传感器5输入表示检测到工件W的情况的信号,则利用照相机用接口25来驱动照相机1,而拍摄上述工件W。然后,当上述工件W的灰度图像(以下,称为“处理对象图像”)被生成而保存在RAM23时,CPU21基于被存储在上述闪存器22中的程序,而求出上述识别对象物7的位置以及旋转角度。进而,基于该处理结果来对上述识别对象物7内的图像与预先所登记的基准部分图像(从拍摄上述字符串的模型而获得的图像所剪切的部分)进行对照,从而判别上述识别对象物7是否有位置偏移、脏、翘边等不良、字符串的印刷状态是否适当、识别对象物7是否为不同种类的标签等。
此外,上述图1、2所示的控制器2是被开发为图像处理专用的装置,但并不仅限定于此,例如,也可以使用安装了图像处理用程序的个人电脑。这时的程序是经由CD-ROM等存储介质或者通信线路而被提供到个人电脑。另外,也可以使用监视器以及输入部实现一体化的面板式控制器来代替个人电脑。
另外,该实施例的图像处理装置是处理黑白灰度图像的装置,但是,也可以取而代之而生成彩色灰度图像来进行处理。
(2)识别对象物的抽取方法在该实施例的图像处理装置中,对每个上述工件W生成处理对象图像,并对各处理对象图像进行利用广义霍夫变换的方法的物体识别处理,从而抽取识别对象物7。
进行广义霍夫变换时,与以往同样,需要将拍摄工件W的模型而得到的图像作为基准图像,而进行利用该基准图像的登记处理。例如,在基准图像上的标签中指定包括上述“ABC”字符串的区域,并将该区域的任意一点设定为基准点。另外,将包含在上述指定区域中的多个边缘点(构成标签以及A、B、C各文字的轮廓线的点)作为模型边缘点而进行抽取,并对于这些分别算出表示边缘方向的角度α、表示相对基准点的方位的角度φ、与基准点的距离R,而登记到RAM23。另外,该实施例中的α、φ、R都以与上述图12所示的现有例同样的方式被定义,并登记到与上述图13所示的图标同样结构的图表中(以下,将该图表称为“模型图表”)。
在进行检查时,从处理对象图像抽取了边缘点之后,对于各边缘点,利用上述模型边缘点的登记信息来算出基准点O的坐标(X,Y)以及对象物的旋转角度Θ的候补值。
具体地说,若将处理对象图像上的任意的边缘点E的坐标设为(x,y),将表示其边缘方向的角度设为β,则中心点O的坐标(X,Y)以及旋转角度Θ可通过如下所述的(1)~(3)式来求出。
X=Ri*cos(φi+β)+X …(1)Y=Ri*sin(φi+β)+X …(2)Θ=β-αi…(3)在该实施例中,对于处理对象图像上的各边缘点,分别依次与登记在模型图表中的模型边缘点建立对应关系,并执行上述(1)~(3)式,从而求出N个(X,Y,Θ)的组合。该计算方法本身与现有的广义霍夫变换相同,但是,在该实施例中,通过对被算出的(X,Y,Θ)以与现有不同的方法进行投票,而能够提高识别对象物7的位置以及旋转角度的识别精度及处理速度。
图3表示该实施例的投影处理的概要。此外,在该图3以及后述的图8中,说明对与上述图12、14所示的情况同样的基准图像30以及处理对象图像31进行处理的情况。
在该实施例中,设定三种投票平面S、C、P。各平面S、C、P均都用于将基于上述角度Θ的数值信息投票到基准点的坐标(X,Y)的平面。具体地说,各平面S、C、P分别作为将坐标(X,Y)作为自变量的二维数组S(X,Y)、C(X,Y)、P(X,Y)而被构成。
向平面S、C的投票是根据每个处理对象图像31上的边缘点和模型边缘点的组合而进行的。向平面S投票旋转角度Θ的正弦值sinΘ,向平面C投票旋转角度Θ的余弦值cosΘ。另外,当被投票的坐标中已存储有值时,在该值上相加这次的值。
即,对各平面S、C,在每个作为基准点的候补而被算出的坐标中,存储被投票的值的累计值。
另一方面,向平面P的投票是在向上述平面S、C的所有投票结束了的时刻进行的。对该平面P,向每个坐标(X,Y)投票被存储在平面S、C的相同坐标中的值S(X,Y)、C(X,Y)的平方和((S(X,Y))2+(C(X,Y))2)。
上述sinΘ表示与上述旋转角度Θ对应的矢量的垂直分量,cosΘ表示上述矢量的水平分量。因此,sinΘ、cosΘ的累计值相当于上述矢量的合成矢量的垂直分量、水平分量。另外,这些的累计值的平方和P表示上述合成矢量的长度。
所合成的各矢量的方向的参差不齐程度(离散)越小,合成矢量的长度就越大。因此,即使在上述投票处理中,被投票到该坐标的角度Θ的离散越小,则对应于平面上的一个坐标的合成矢量也就越大。
在此,如果坐标(X,Y)没有相当于基准点O的正确的坐标,则即使存在多个投票,各投票的角度Θ的离散也变大,其结果,合成矢量变小。对此,如果坐标(X,Y)为基准点O的正确的坐标,则各投票的角度Θ的离散变得极小,其结果,合成矢量的长度变得比可在其他的坐标所得到的长度大。
在该实施例中,根据上述的考察,将上述平面P上的得票成为最大值Pmax的坐标(XP,YP)作为上述处理对象图像中的基准点O的坐标来进行抽取。进而,通过下面的(4)式,求出坐标(XP,YP)的合成矢量的倾角ΘP,并将此识别为上述识别对象物7的旋转角度。
Θp=tan-1(S(Xp,Yp)C(Xp,Yp))---(4)]]>
若根据上述投票处理,则能够减少由与错误的模型边缘点的对应关系及噪声导致的得票,因此,能够稳定地求出基准点O的坐标和旋转角度Θ的正确的值。另外,由于该投票处理能够通过三种投票平面来执行,因此,比起现有的广义霍夫变换,能够更加大幅度地削减用于投票处理的存储器容量,从而能够实现处理的高速化。
(3)关于检查以下,以利用上述广义霍夫变换的识别对象物的抽取处理为中心,对由上述图像处理装置来执行的检查流程进行说明。
首先,图4表示进行检查时由控制器2来实施的处理步骤。
在上述步骤的最初的ST1(ST是“STEP(步骤)”的缩写。以下也同样)中,将由上述照相机1以及照相机用接口25所生成的处理对象图像输入到RAM23中。
在接下来的ST2中,抽取上述处理对象图像上的边缘点。具体地说,在处理对象图像上扫描利用索贝尔算子等的边缘抽取滤波器,而作为边缘点抽取浓度梯度的大小为规定值以上的像素。此外,在此所抽取的边缘点的坐标及由边缘抽取滤波器所抽取的浓淡梯度的大小Δx、Δy(Δx为水平方向上的浓淡梯度的大小,Δy为垂直方向上的浓淡梯度的大小),被保存在RAM23的规定区域中。
在下面的ST3中,利用上述图3所示的方法,执行抽取识别对象物7的位置以及旋转角度的处理(以下,称为“初始检索”)。在接着的ST4中,通过利用初始检索的结果的更加详细的检索处理(以下,称为“详细检索”),而确定上述识别对象物7的位置以及旋转角度。对于这些详细的步骤,在后面详细地进行说明。
在ST5中,基于通过上述详细检索来求出的位置以及旋转角度,而从处理对象图像剪切出包含上述识别对象物7的图像,并修正其旋转偏差。在ST6中,对该修正后的图像执行相对上述基准部分图像的差分运算处理。通过该差分运算处理,而生成显示上述识别对象物7的印字区域内的字符串和模型的字符串之间的差异的图像(差图像)。
在ST7中,对于上述差图像执行二值化、加标签等,并抽取相当于上述差异的图案之后,计测该图案的位置、面积等。在ST8中,将上述计测值与规定的阈值进行比较等,并判定上述计测对象的字符串的适当与否。进而,在ST9中,将上述判定结果输出到外部设备等之后,结束处理。
下面,对于在上述检查步骤之前所进行的模型登记处理,利用图5进行说明。
在该图5的处理中,与使用于上述初始检索以及详细检索的模型边缘点的信息一起,对用于上述差分运算处理的基准部分图像进行登记。
首先,在最初的ST101中,输入通过拍摄上述识别对象物的模型而生成的基准图像,并存储在RAM23中。还有,也将该输入图像显示在监视器3上。
在接着的ST102中,接收对上述监视器3的显示画面的区域指定操作。在ST103中,对于所指定的区域内的图像,通过与上述图4的ST2同样的方法来抽取边缘点。
另外,虽在此没有图示,但是,在ST103中,在没有抽取到足够数目的边缘点时,优选返回到ST102,而接受再次的区域指定操作。另外,在将如上述图1所示的标签作为识别对象物时,优选指定除去该标签自身的轮廓、而仅包含字符串“ABC”的区域。这是因为通过将标签的空白部分作为背景,而抽取从其背景指向文字部分的浓度梯度,而能够抽取构成文字的轮廓的边缘点。
在ST104中,进行对基准点的设定。在该处理,也能够接受由用户的指定操作,而将该所指定的坐标作为基准点。或者,也可以利用上述ST103的边缘抽取结果而自动抽取模型的重心等,并将其设定为基准点。
在ST105中,将边缘点的抽取数设定为N。在ST106中,在上述RAM23设定具有N个区域的模型图表。然后,下面通过执行ST107~113,而对各模型边缘点求出上述角度αi、角度φi、距离Ri(0≤i≤N-1),并将这些登记到上述模型图表中。
另外,角度αi、角度φi、距离Ri均都以与图12的现有例中所示同样的基准来被算出。
若登记结束,则执行为了验证所登记的信息对抽取基准点O是否适当的处理。设置有这样的处理是因为在一个模型边缘点能够与两个以上的边缘点建立对应的情况下,有可能对于基准点O的正确坐标的得票变小,其结果,有可能会引起基准点O或旋转角度Θ的误抽取。
例如,在识别对象物的轮廓为点对称图形时,若其中心点被设定为基准点O,则在处于点对称关系的两个边缘点中,与上述基准点O的正确坐标相对应的矢量指向相反的方向,所以,在进行矢量的合成处理时这些相互抵消,从而合成矢量变小。
为解决上述问题,在ST114中,对上述基准图像执行初始检索,而求出上述合成矢量的长度的最大值Pmax。进而,在ST115中,求出该Pmax和规定的容许值M2之差,并确认该差是否大于规定的阈值th。在此,如果(Pmax-M2)的值处于th以下,则进入到ST116而对模型图表内的全部数据进行清零,并将与在ST104所设定的基准点不同的点重新设定为基准点O。
然后,返回到ST107,基于新设定的基准点O而再次执行对各模型边缘点的登记处理。
此外,容许值M2是为了解决处理对象图像中不存在识别对象物的情况而设置的。在初始检索中,合成矢量的最大值Pmax小于该容许值M2时,判断为识别对象物不存在。
因此,认为在(Pmax-M2)的值超出th时,能够将识别对象物的基准点的坐标以足够的精度抽取。由此,这时进入到ST117,而确定所作成的模型图表,并进行登记。
进而,在ST118中,从上述基准图像剪切出在上述ST102中所指定的区域内的图像,并将此作为上述图像间差分运算用基准图像而进行登记。
接着,利用图6说明上述初始检索的详细步骤。
首先,在最初的ST201中,对构成上述三个投票平面S、C、P的二维数组进行初始化(清零)。
在ST202中,关注在处理对象图像上的一个边缘点,并抽取其坐标(x,y)。在ST203中,利用抽取该边缘点时所求出的浓度梯度的大小Δx、Δy,而算出表示边缘方向的角度β。
在ST204中,将用于确定模型边缘点的计数器i置为初始值0。然后,从上述模型图表读取第i个模型边缘点的登记信息Ri、φi、αi,并利用这些和上述x、y、β而执行上述(1)~(3)式,从而算出基准点的坐标(X,Y)以及旋转角度Θ。进而,在ST206中,对S(X,Y)、C(X,Y)分别相加sinΘ、cosΘ。
下面,通过对计数器i每次累加1的方式进行更新,从而变更对应的模型边缘点,并反复进行ST205、206的处理。当利用第N-1个模型边缘点的处理结束时,接着变更处理对象图像的作为关注对象的边缘点,并返回到ST202而反复执行与上述同样的处理。
其结果,当对所有边缘点的处理结束时,则ST209变为“是”而进入到ST210,并对上述平面S、C的所有坐标的每一个求出S(X,Y)与C(X,Y)的平方和而存储在P(X,Y)中。
在ST211中,抽取相当于上述P(X,Y)中的最大值Pmax的坐标(XP,YP)。进而,在ST212中,对上述最大值Pmax与上述容许值M2进行比较。在此,如果Pmax≥M2,则进入到ST213,并通过上述(4)式算出旋转角度Θ。
另一方面,在与上述模型对应的轮廓形状没有被包括在处理对象图像中时,变为Pmax<M2。这时进入到ST214,认为检索失败而转移到规定的错误处理。
下面,对于上述详细检索进行说明。
在该实施例的详细检索中,以更加正确地求出上述基准点O的坐标以及旋转角度为目的,而利用初始检索的结果来对每个模型边缘点执行使用处理对象图像的所限定范围的、对边缘点的处理。
以下,利用图7对详细检索的具体步骤进行说明。
首先,在最初的ST301中,将用于确定上述模型边缘点的计数器i置为初始值0。然后,在ST302中,利用在上述初始检索中求出的XP、YP、ΘP,并通过以下的(5)、(6)式来求出与第i个模型边缘点对应的坐标(xm,ym)。
xm=XP+Ri*cos(ΘP-φi)…(5)ym=XP+Ri*sin(ΘP-φi)…(6)图8表示基准图像30上的任意的模型边缘点M和处理对象图像31上的对应点m之间的关系。另外,图8(3)是放大了包含处理对象图像31中的上述对应点m的区域32的图像的图。虽然该例子中的对应点m不是边缘点,但因为在上述初始检索中所求出的(XP,YP,ΘP)的可靠性高,所以可认为在该对应点m的附近存在相当于模型边缘点M的真正的对应点的边缘点。另外,即使是该真正的对应点附近的边缘点,可认为其相对于基准点O的方位或距离也与利用模型边缘点来求出的方位或距离近似。
因此,在详细检索中,设定包含上述对应点m以及其周围附近的几个像素的遮罩33,并对于该遮罩33所包含的各边缘点e,分别适用上述模型边缘点M的登记信息来重新求出基准点O的坐标以及旋转角度。
返回到图7,具体说明上述处理。在ST303中,若设定上述遮罩33,则在接下来的ST304中,抽取该遮罩33内的一个边缘点e的坐标(xj,yj)。进而,在ST305中,针对该边缘点e求出表示边缘方向的角度βj。
在ST306中,利用上述xj、yj、βj和第i个模型边缘点的登记信息来执行下述的(7)~(9)式,从而求出基准点O的坐标(Xv,Yv)以及旋转角度Θv。
Xv=xj+Ri*cos(βj+φi)…(7)Yv=yj+Ri*sin(βj+φi)…(8)Θv=βj-αi…(9)如上所述,可认为遮罩33内的边缘点e,相对于基准点O而具有与模型边缘点M相同或者极其相近的关系,因此,上述Xv、Yv、Θv也与对模型边缘点的真正的对应点所算出的相应值近似。但是,这样的想法仅能够适用于构成识别对象物的轮廓的边缘点,而不符合从噪声成分求出的Xv、Yv、Θv。
由此,在该实施例中,将在上述ST306中所求出的(Xv,Yv,Θv)和在上述初始检索中所求出的(XP,YP,ΘP)分别作为三维空间的一个点来理解,而求出这些点之间的距离D,并对该距离与规定的阈值D0进行比较(ST307、308)。在此,当上述距离D大于距离D0时,将(Xv,Yv,Θv)从ST309的运算对象中排除。
另一方面,如果距离D处于上述D0以下,则进入到ST309,而利用变量XC、YC来进行Xv、Yv的累计处理的同时,利用变量SC、CC而对于Θv执行与在上述初始检索的投票平面S、C上所执行的处理同样的对矢量的合成处理。此外,nC是用于存储该ST309的处理次数的计数器。
以下,同样,依次抽取遮罩33内的所有的边缘点e,而执行ST304~309。当对遮罩33内的最后边缘点的处理结束时,在ST312中变更关注对象的模型边缘点,并反复进行上述处理。
这样,若对所有模型边缘点执行了上述处理,则进入到ST313,而对于基准点O的坐标,利用上述累计值XC、YC以及处理次数nC来算出平均值,并将此作为最终的值XR、YR。另外,对于旋转角度,也利用上述SC、CC来求出上述合成矢量的角度,并将此作为最终的值ΘR。
这样,在详细检索中,缩小决定处理对象的边缘点的同时,对于基准点的坐标,以所算出值的参差不齐程度小为条件而求出平均值,因此,不需要进行利用了如初始检索那样的平面的投票处理,从而能够实现高速化处理。
另外,对于任意的模型边缘点,均都求出由其对应点以及从其附近的边缘点所求出的坐标或旋转角度,因此,最终被算出的XR、YR、ΘR比在初始检索中所求出的XP、YP、ΘP精度高。
另外,在上述初始检索中,需要对每个边缘点进行N周期的处理,因此,在噪声成分多的情况等,有可能处理花费很长时间。这时,即使为实现处理的高速化而对初始检索的处理对象的边缘点进行间隔剔除(pixel skipping),通过其后的详细检索也能够确保所算出的精度。
(5)其他实施例在上述实施例中所示的图像处理装置中,还能够执行如下面的a、b、c、d所示的处理。
a.利用归一化相关(normalized correlation)的识别处理在上述图4所示的检查步骤中,通过上述初始检索或详细检索,而确定基准点O的坐标(XR,YR)以及识别对象物的旋转角度ΘR之后,执行了图像间差分运算,但是,也可以取代该处理,或者在该处理的基础上,执行利用归一化相关运算的识别处理。这时,从处理对象图像剪切出与基准部分图像对应的图像而执行对旋转偏移的修正,并对该修正后的图像执行利用上述基准部分图像的归一化相关运算,从而能够求出相对基准部分图像的相似度。或者,也可以通过上述旋转角度ΘR来修正基准部分图像之后,将其基准点与上述处理对象图像上的坐标(XR,YR)对齐而执行归一化相关运算。
另外,也可以登记好多个基准部分图像,并对每个基准部分图像执行归一化相关运算。
上述的处理在抽取识别对象物的灰白程度(如果是彩色图像则为配色的不同)情况下变得有用。在利用广义霍夫变换的识别处理中,能够高精度地抽取物体的轮廓形状,但无法判别灰白的差异。另一方面,在利用现有的归一化相关运算的检索处理中,除了需要扫描整个处理对象图像之外,还要考虑识别对象物的旋转而需要进行利用多个旋转模型的检索,从而存在处理花费时间的问题。
但是,若通过广义霍夫变换来求出识别对象物的位置和旋转角度,就能够限定要执行归一化相关运算的范围,还有也不需要作成旋转模型,因此,能够大幅度地缩短处理时间,从而能够执行高精度的识别处理。
b.多个基准点的设定在上述图5所示的模型登记处理中,也可以根据识别对象物的形状来设定多个基准点。
例如,如图9(A)所示,对于具有规定形状的模型,将其中心点设定为基准点O时,若存在与模型同样的形状和与其反向的形状重叠而形成点对称形状的识别对象物,则如上所述,对于基准点O的得票变小,而有可能会无法正确地抽取基准点O。另外,即使是能够抽取到基准点O的情况,也无法识别到与模型对应的形状存在两个的程度。
另一方面,如图9(B)所示,对于上述模型,若将其中心点设为第一基准点O1,而将从O1相隔规定距离的点设为第二基准点O2,则对于上述识别对象物,除了基准点O1之外,还能够抽取两个基准点O21、O22。因此,从这些点的位置关系,能够无误地判别识别对象物的形状和姿势。
c.算出两个基准点O的坐标的方法例如,如图10所示,若在模型和识别对象物之间明暗关系变得相反,则处理对象图像的边缘点上的浓度梯度方向也指向与基准图像相反的方向。预计会存在这样的情况时,如图11所示,对处理对象图像上的各边缘点E,需要在从上述角度β所示的方向h1以及与其相反的方向h2分别沿逆时针方向旋转了角度φ的方向上,求出基准点的候补点O1、O2的坐标。
这时,对于所有的边缘点,分别各求出两组(X,Y,Θ)的组而进行投票处理,但是,在上述h1、h2中,对应于与向基准点O的方向不同的方向的、(X,Y,Θ)的内容,根据每个边缘点都不同。因此,在与向基准点O的方向不同的方向对应的投票中,不会作成超过上述容许值M2的长度的合成矢量,而在向基准点O的方向上,能够求出其正确的坐标以及正确的旋转角度。
另外,处理彩色灰度图像时,也需要进行与图11同样的处理。为了抽取彩色灰度图像上的边缘,必须取代浓度梯度的大小而求出颜色的变化量(色差),但是,由于色差是作为以R、G、B各色成分为轴的三维空间的距离而被求出,因此,只能将颜色的变化量大的点作为边缘点而进行抽取。因此,在基准点的位置不明确的处理对象图像中,无法确定在上述h1、h2的任意方向上是否存在基准点,因此,需要将两个方向作为处理对象。
d.投票处理的其他例子在上述实施例中,对旋转角度Θ的正弦以及余弦的值进行了投票,但是,也可以取而代之,而对与旋转角度Θ对应的矢量的水平分量以及垂直分量进行投票。由于这时的各分量被表示成根据旋转角度Θ的正或负的值,所以,与上述图3所示同样,能够通过对每个有过投票的坐标(X,Y)求出各分量的累计值、并求出最终值的平方和的方法,而高精度地求出识别对象物的位置和旋转角度。
权利要求
1.一种物体识别方法,该方法利用包含具有规定的轮廓形状的模型的基准图像,来设定基准点的坐标的同时,分别独立地关注构成上述模型的轮廓的多个模型边缘点,而针对对像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出上述关注像素的上述规定变量的变化方向,并对表示作为与该变化方向对应的方向的边缘方向、上述基准点相对上述边缘方向的方位、以及自上述基准点的距离的信息进行登记,针对对上述像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出关注像素的上述规定变量的变化的梯度时,将包含以该梯度超过规定值的关注像素为边缘点时的该边缘点的图像作为处理对象,而对于该处理对象图像上的多个边缘点求出该边缘点的坐标以及边缘方向的同时,执行算出上述多个模型边缘点分别相当于上述边缘点时由上述登记信息所规定的基准点的坐标、以及表示边缘点的边缘方向和模型边缘点的边缘方向之差的角度的处理、和基于所算出的各值的投票处理,并利用上述投票处理的结果来识别与上述模型对应的轮廓图案的位置、以及以上述模型为基准的轮廓图案的旋转角度,其特征在于,在上述投票处理中,对于上述处理对象图像上的各边缘点,分别向对每个模型边缘点所求出的上述基准点的坐标,投票与和该坐标一同被算出的角度相对应的矢量的同时,对每个有过投票的坐标算出表示所投票的矢量的合成矢量的数值信息,对应于上述投票处理以及表示合成矢量的数值信息的算出处理的结束,利用上述数值信息而从上述有过投票的坐标中抽取上述合成矢量的长度超过规定值的坐标、或者与从长度最大的合成矢量开始依次观察各合成矢量时的规定数目的矢量对应的坐标,并利用该抽取结果来识别上述轮廓图案的位置以及旋转角度。
2.如权利要求1所记载的物体识别方法,其特征在于,在上述投票处理中,对每个所投票的坐标求出上述旋转角度的正弦以及余弦的累计值,并算出这些两种累计值的平方和而作为上述合成矢量的长度。
3.如权利要求1所记载的物体识别方法,其特征在于,在上述投票处理中,对每个所投票的坐标求出表示将与上述旋转角度对应的矢量分解为水平以及垂直两个方向时的各矢量的指向以及长度的数值信息,并算出这些两种累计值的平方和而作为上述合成矢量的长度。
4.如权利要求1~3中任意一项所记载的物体识别方法,其特征在于,基于利用表示上述合成矢量的数值信息所抽取的坐标而求出上述物体的临时位置以及临时旋转角度之后,执行步骤a和步骤b,该步骤a是对于各模型边缘点,基于上述临时位置以及临时旋转角度而求出处理对象图像上的对应点,而该步骤b是对于包含上述对应点的局部区域内所包含的边缘点,利用上述模型边缘点的登记信息而算出基准点的坐标以及表示上述边缘方向之差的角度,针对各模型边缘点,对通过上述步骤a、b所求出的基准点的坐标进行平均化的同时,对表示上述旋转角度的矢量进行合成,并基于被平均化的基准点的坐标以及上述合成矢量所示的角度,来识别上述物体的位置以及旋转角度。
5.如权利要求1~3中任意一项所记载的物体识别方法,其特征在于,基于利用表示上述合成矢量的数值信息所抽取的坐标而识别上述轮廓图案的位置以及旋转角度之后,利用具有与上述模型对应的轮廓形状的一种或者多种灰度图像模型,来执行反映了上述轮廓图案的位置以及旋转角度的归一化相关运算。
6.如权利要求1~5中任意一项所记载的物体识别方法,其特征在于,在对每个上述处理对象图像上的边缘点求出上述基准点的坐标的值的处理中,针对每个模型边缘点,关于基准点相对上述边缘方向的上述所登记的方位和在其相反的方位分别算出各一个上述基准点的坐标的候补。
7.如权利要求1~6中任意一项所记载的物体识别方法,其特征在于,以对上述各模型边缘点的登记处理的结束为条件,对于上述基准图像上的各边缘点,分别利用上述各模型边缘点的上述登记信息来求出基准点的坐标以及边缘方向的旋转角度的值之后,进行对上述投票处理以及表示上述合成矢量的数值信息的运算处理,所有边缘点的投票结束时的上述数值信息所表示的合成矢量的长度小于规定的阈值时,将上述基准点设定为不同的坐标,并再次执行对各模型边缘点的登记处理。
8.如权利要求1~7中任意一项所记载的物体识别方法,其特征在于,将多个坐标不同的点设定为基准点,并针对处理对象图像的每个基准点执行求出上述基准点的坐标的处理以及投票处理。
9.一种物体识别处理用程序,其用于对计算机设定如下的功能,其中,该计算机具有的功能是利用包含具有规定的轮廓形状的模型的基准图像,来设定基准点的坐标的同时,分别独立地关注构成上述模型的轮廓的多个模型边缘点,而针对对像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出上述关注像素的上述规定变量的变化方向,并对表示作为与该变化方向对应的方向的边缘方向、上述基准点相对上述边缘方向的方位、以及自上述基准点的距离的信息进行登记的功能;以及,针对对上述像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出关注像素的上述规定变量的变化的梯度时,将包含以梯度超过规定值的关注像素为边缘点而抽取出时的该边缘点的图像作为处理对象,而对于该处理对象图像上的多个边缘点求出该边缘点的坐标以及边缘方向的功能,该程序对计算机设定的功能是从上述处理对象图像来识别与上述模型对应的轮廓图案的位置、以及以上述模型为基准的轮廓图案的旋转角度,其特征在于,使上述计算机发挥如下各单元的功能候补值算出单元,其对于上述处理对象图像上的多个边缘点,分别利用上述各模型边缘点的登记信息,来算出所登记的各模型边缘点分别相当于上述边缘点时所规定的基准点的坐标、以及表示边缘点的边缘方向和模型边缘点的边缘方向之差的角度;存储单元,其用于存储表示对每个基准点的坐标合成与上述候补值算出单元所算出的角度对应的矢量时的该合成矢量的数值信息;信息更新单元,其每当通过上述候补值算出单元算出基准点的坐标以及角度时,用所算出的角度来更新与所算出的基准点的坐标对应的上述存储单元内的数值信息;抽取单元,其对应于上述候补值算出单元以及信息更新单元的处理的结束,利用存储在上述存储单元的数值信息而抽取上述合成矢量的长度超过规定值的坐标、或者与从长度最大的合成矢量开始依次观察各合成矢量时的规定数目的矢量对应的坐标;识别单元,其利用上述抽取单元的抽取结果,而识别上述轮廓图案的位置以及旋转角度。
10.一种存储有权利要求9所记载的程序的存储介质。
11.一种物体识别装置,其特征在于,具有以下各单元图像输入单元,其针对对像素信息进行规定的一个或者多个变量中的规定变量,基于对关注像素和其周边像素的上述规定变量来求出关注像素的上述规定变量的变化的梯度时,输入包含以梯度超过规定值的关注像素为边缘点时的该边缘点的图像;登记单元,其由上述图像输入单元被输入包含具有规定的轮廓形状的模型的基准图像时,利用该基准图像来设定基准点的坐标的同时,对于构成上述模型的轮廓的多个模型边缘点,登记表示作为与上述规定变量的变化方向对应的方向的边缘方向、和上述基准点相对上述边缘方向的方位、以及自上述基准点的距离的信息;候补值算出单元,其由上述图像输入单元被输入处理对象图像时,对于该处理对象图像上的多个边缘点,分别利用上述各模型边缘点的登记信息,来算出所登记的各模型边缘点分别相当于上述边缘点时所规定的基准点的坐标、以及表示边缘点的边缘方向和模型边缘点的边缘方向之差的角度;存储单元,其用于存储表示对每个基准点的坐标合成与上述候补值算出单元所算出的角度对应的矢量时的该合成矢量的数值信息;信息更新单元,其每当通过上述候补值算出单元算出基准点的坐标以及角度时,用所算出的角度来更新与所算出的基准点的坐标对应的上述存储单元内的数值信息;抽取单元,其对应于上述候补值算出单元以及信息更新单元的处理的结束,利用存储在上述存储单元的数值信息而抽取上述合成矢量的长度超过规定值的坐标、或者与从长度最大的合成矢量开始依次观察各合成矢量时的规定数目的矢量对应的坐标;识别单元,其利用上述抽取单元的抽取结果,而识别与上述模型对应的轮廓图案的位置以及以上述模型为基准的轮廓图案的旋转角度。
全文摘要
实现通过广义霍夫变换的物体识别处理的高速化及高精度化。对在处理对象图像(31)上所抽取的每个边缘点(E),利用预先所登记的N个模型边缘点的信息来算出识别对象物的基准点(O)的坐标(X,Y)及旋转角度(Θ)。进而,向二维投票平面(S、C)的坐标(X,Y)分别投票sinΘ、cosΘ的同时,算出向每个坐标所投票的值的累计值。投票处理结束,则将各平面的累计值与每个坐标建立对应而求出这些的平方和(S(X,Y))
文档编号G06K9/62GK1959706SQ20061014325
公开日2007年5月9日 申请日期2006年11月1日 优先权日2005年11月4日
发明者小松幸广 申请人:欧姆龙株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1