物体检测方法、系统、计算机设备和存储介质与流程

文档序号:15560867发布日期:2018-09-29 02:12阅读:169来源:国知局

本申请涉及物体检测技术领域,特别是涉及一种物体检测方法、物体检测系统、计算机设备和存储介质。



背景技术:

在制造行业中,通过模具制造产品的过程,由于不同产品的特殊性和不规则性,产品的合格率很大程度上要依赖无损的模具,且保证合模前模具内无残留物。因此,在制造行业中需要对每次产品生产的模具和生产后的产品进行检测。

但是,由于产品多种多样,只能通过人工检测的方式来确认模具和产品是否合格,大大降低物体检测的效率。



技术实现要素:

基于此,有必要针对上述人工检测模具和产品的效率低的问题,提供一种物体检测方法、系统、计算机设备和存储介质。

一种物体检测方法,包括以下步骤:

获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

根据第一特征点和第二特征点获取透视变换矩阵;

根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

在一个实施例中,根据第一特征点和第二特征点获取透视变换矩阵的步骤,包括以下步骤:

根据第一特征点和第二特征点建立透视变换等式;

根据透视变换等式求解透视变换矩阵。

在一个实施例中,根据第一特征点和第二特征点建立透视变换等式的步骤,包括以下步骤:

确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素;

根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,在根据透视变换等式求解透视变换矩阵的步骤之后,还包括以下步骤:

根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,根据变换矩阵将待测物体图像转换为待对比图像的步骤,包括以下步骤:

根据透视变换矩阵,将待测物体图像中像素点的坐标转换至待对比图像中像素点的坐标;

根据待测物体图像中像素点的灰度值和待对比图像中像素点的坐标,构建待对比图像。

在一个实施例中,获取待测物体图像的第一特征点和模板图像的第二特征点的步骤,包括以下步骤:

根据待测物体图像获取第一角点,根据模板图像获取第二角点;

匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。

在一个实施例中,根据待测物体图像获取第一角点的步骤,包括以下步骤:

根据待测物体图像,获取待测物体图像的灰度变化量;

根据灰度变化量获取待测物体图像中像素点的特征值;

当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

在一个实施例中,根据待测物体图像,获取待测物体图像的灰度变化量的步骤,包括以下步骤:

根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值;

根据灰度变化量获取待测物体图像中像素点的特征值的步骤,包括以下步骤:

根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。

在一个实施例中,根据变换矩阵将待测物体图像转换为待对比图像的步骤,包括以下步骤:

根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

一种物体检测系统,包括:

特征点获取模块,用于获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

透视变换矩阵获取模块,用于根据第一特征点和第二特征点获取透视变换矩阵;

缺陷检测模块,用于根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

根据第一特征点和第二特征点获取透视变换矩阵;

根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

根据第一特征点和第二特征点获取透视变换矩阵;

根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

上述物体检测方法、系统、计算机设备和存储介质,根据待测物体的待测物体图像中第一特征点和模板的模板图像中第二特征点,获取透视变换矩阵和待测物体的待对比图像,根据待对比图像和模板图像进行直接地对比,对比过程简单和便捷,可以快速和准确地检测待测物体的缺陷,提高模具或产品的检测效率和准确性。

附图说明

图1为一个实施例中物体检测方法的应用环境图;

图2为一个实施例中物体检测方法的流程图;

图3为一个实施例中透视变换矩阵获取的流程图;

图4为一个实施例中待对比图像转换的流程图;

图5为一个实施例中第一特征点和第二特征点获取的流程图;

图6为一个实施例中第一角点获取的流程图;

图7为另一个实施例中物体检测方法的流程图;

图8为一个实施例中物体检测系统的结构示意图;

图9为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的物体检测方法,可以应用于如图1所示的应用环境中,图1为一个实施例中物体检测方法的应用环境图。其中,成像设备20用于获取待测物体10的待测物体图像,成像设备20的成像焦面在待测物体10上。成像设备20可以是相机、摄像头、工业相机、成像器件、扫描成像设备、感应成像设备等可以获取图像的装置。

在一个实施例中,如图2所示,图2为一个实施例中物体检测方法的流程图,提供了一种物体检测方法,以该方法应用于图1中的应用环境为例进行说明,包括以下步骤:

步骤s210:获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同。

待测物体图像是包含有待测物体的图像,可以通过成像设备获取。模板图像可以是预先获取的模板物体的图像,模板物体是待测物体的样板。

极小的平移或旋转在两幅图像像素简单差值的时候将产生较大的像素差值,但是对于同一场景,即使视角发生变化,所获取的图像中通常具备稳定性质的特征。因此,对于相似物体在相同场景下,在视角具有微小变化时,所获得的相似物体的图像中,也是具备相同稳定性质的特征。将能够反映相似物体图像中稳定性质特征的像素点作为特征点,匹配相同稳定性质的特征点,匹配后的特征点可以用于表示相似物体上的相同位置。本步骤中,需要获取匹配后用于表示待测物体和模板之间相同位置的第一特征点和第二特征点,以便于后续进行待测物体图像和模板图像之间的比较,和后续进行待测物体和模板之间的比较。例如可以通过角点检测、边界特征法、傅里叶形状、几何参数法等方法获取特征点和匹配特征点。

第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同,待测物体和模板之间相同位置包括多个位置,因此第一特征点和第二特征点可以包括多组相同位置对应的第一特征点和第二特征点。

步骤s220:根据第一特征点和第二特征点获取透视变换矩阵。

由于第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同,因此可以根据第一特征点和第二特征点之间存在透视变换关系,根据第一特征点和第二特征点可以获取反映该透视变换关系的透视变换矩阵。

步骤s230:根据变换矩阵将待测物体图像转换为待对比图像。

根据透视变换矩阵进行转换,校准待测物体图像中待测物体相对于模板图像中模板的平移或旋转,获取待对比图像,待对比图像中包含有待测物体,待对比图像可以用于与模板图像进行对比。

步骤s240:并根据待对比图像与模板图像检测待测物体的缺陷。

待对比图像中待测物体和模板图像中模板之间存在的平移和旋转已经消除,因此可以简单地比较待对比图像和模板图像中像素点之间的差异。以便于根据像素点之间的差异,准确地检测待测物体相对于模板所存在的缺陷。

上述物体检测方法,根据待测物体的待测物体图像中第一特征点和模板的模板图像中第二特征点,获取透视变换矩阵和待测物体的待对比图像,根据待对比图像和模板图像进行直接地对比,对比过程简单和便捷,可以快速和准确地检测待测物体的缺陷,提高模具或产品的检测效率和准确性。

例如,在工业制造中,模具会在生产线上生产产品,因此模具的待测物体图像可以由相机或摄像机抓拍和记录,另外,模具的模板图像可以预先被采集。从待测物体图像和模板图像中的特征点中,匹配在待测物体和模板上相同位置的特征点,获得第一特征点和第二特征点。

例如,当需要检测模具或产品内部是否有缺陷,可以通过获取待测物体的x光图像中第一特征点和模板的x光图像中第二特征点,对模具或产品内部进行检测,提高检测的准确性。在工业生产过程中,当产品合格率与温度相关时,需要对温度进行监控,也可以通过获取待测物体的红外光成像的第一特征点和模板的红外光成像的第二特征点,对模具或产品进行检测,提高检测的准确性,同时提高检测工作的安全性。

其中,不仅可以使用4组相同位置对应的第一特征点和第二特征点获取透视变换矩阵,也可以同时使用4组以上相同位置对应的第一特征点和第二特征点获取透视变换矩阵。

在一个实施例中,如图3所示,图3为一个实施例中透视变换矩阵获取的流程图,根据第一特征点和第二特征点获取透视变换矩阵的步骤,包括以下步骤:

步骤s221:根据第一特征点和第二特征点建立透视变换等式。

根据相同位置下对应的第一特征点和第二特征点,建立透视变换等式,确定第一特征点、第二特征点和透视变换矩阵中元素之间的等式关系,用于后续的变换矩阵的求解。

步骤s222:根据透视变换等式求解透视变换矩阵。

根据透视变换等式中确定的等式关系,可以准确地求解透视变换矩阵。

上述物体检测方法,通过第一特征点和第二特征点建立的透视变换等式可以准确地求解透视变换矩阵,以便于后续提高检测的准确性,提高物体检测的效率。

在一个实施例中,根据第一特征点和第二特征点建立透视变换等式的步骤,包括以下步骤:

确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

根据相同位置下的第一特征点和第二特征点,获取第一特征点和第二特征点的变换关系,变换关系可以用于代表待测物体图像的网格坐标和模板图像的网格坐标之间的关系。

其中,1可以看作是给定的参考基准,该参考基准可以是定制,该参考基准除了是1以外,还可以是其他定值。另外,当参考基准为1时可以更加方便和简化计算,提高准确性。

根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

根据多个相同位置对应所获取的透视变换等式,可以准确地求解透视变换矩阵中的元素。

另外,通过透视变换等式后求解得到的透视变换矩阵,可以计算出待测物体图像的成像平面和模板图像成像平面之间的夹角,即计算出两个成像平面之间的旋转角度。其中,a13可以体现x轴与u轴之间的夹角,a23可以体现y轴与v轴之间的夹角,a11可以体现x轴与u轴之间的比例系数,a12可以体现x轴与v轴之间的比例系数,a21可以体现y轴与u轴之间的比例系数,a22可以体现y轴与v轴之间的比例系数,a31可以体现x轴与u轴之间的平移量,a32可以体现y轴与v轴之间的平移量,a33在特殊情况下可以为1。x轴为x所在的坐标轴,y轴为y所在的坐标轴,u轴为u所在的坐标轴,v轴为v所在的坐标轴。

上述物体检测方法,通过确定第一特征点和第二特征点的变换关系,并获得透视变换等式,可以准确地求解透视变换矩阵中的元素,获取透视变换矩阵。

在一个实施例中,在根据透视变换等式求解透视变换矩阵的步骤之后,还包括以下步骤:

根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

上述物体检测方法,通过获取使得ε值最小的透视变换矩阵,可以获取最优化和最接近实际的透视变换矩阵,进一步降低误差,提高透视变换矩阵的准确性,以便于后续提高检测的准确性,提高物体检测的效率。

其中,不仅可以使用4组相同位置对应的第一特征点和第二特征点获取透视变换矩阵,也可以同时使用4组以上相同位置对应的第一特征点和第二特征点获取透视变换矩阵,即可以使用待测物体图像和模板图像中所有相同位置对应的第一特征点和第二特征点,计算最优化的透视变换矩阵。

在一个实施例中,如图4所示,图4为一个实施例中待对比图像转换的流程图,根据变换矩阵将待测物体图像转换为待对比图像的步骤,包括以下步骤:

步骤s231:根据透视变换矩阵,将待测物体图像中像素点的坐标转换至待对比图像中像素点的坐标。

根据透视变换矩阵,将待测物体图像中网格坐标进行转换,即将待测物体图像中像素点的坐标转换至对比图像中像素点的坐标。

步骤s232:根据待测物体图像中像素点的灰度值和待对比图像中像素点的坐标,构建待对比图像。

将待测物体图像中像素点的灰度值和转换后对应的像素点的坐标作为待对比图像的像素点,根据待对比图像的像素点构建待对比图像。

上述物体检测方法,根据透视变换矩阵进行网格坐标的转换,可以快速地生成待对比图像,提高物体检测的效率。

在一个实施例中,如图5所示,图5为一个实施例中第一特征点和第二特征点获取的流程图,获取待测物体图像的第一特征点和模板图像的第二特征点的步骤,包括以下步骤:

步骤s211:根据待测物体图像获取第一角点,根据模板图像获取第二角点。

通过角点检测的方法获取待测物体图像的第一角点和模板图像的第二角点。

角点一般是轮廓之间的交点;对于同一场景或相似物体,即使视角发生变化,角点通常具备稳定性质的特征;附近区域的像素点无论在梯度方向上还是其梯度幅值上有着较大变化,容易进行检测。

步骤s212:匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。

匹配的实质就是通过相似性度量值来找出在相同位置对应的第一特征点和第二特征点。

上述物体检测方法,通过角点检测方法可以有效和准确地获取第一特征点和第二特征点。

还可以在获取的第一特征点和第二特征点中,根据角度、距离等特征筛选可信度更高的第一特征点和第二特征点,提高物体检测方法的准确性。

在一个实施例中,如图6所示,图6为一个实施例中第一角点获取的流程图,根据待测物体图像获取第一角点的步骤,包括以下步骤:

步骤s213:根据待测物体图像,获取待测物体图像的灰度变化量。

当一个窗口在待测物体图像上移动时,若该窗口在平滑区域上移动,窗口中的灰度值没有明显变化;若该窗口在角点所在区域上移动,窗口中的灰度值会有明显变化,灰度值在各个方向上都会存在变化。

步骤s214:根据灰度变化量获取待测物体图像中像素点的特征值。

角点检测正是利用这个直观的物理现象,计算窗口中的灰度值在各个方向上的变化程度,并根据灰度变化量获取待测物体图像中像素点的特征值。

步骤s215:当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

根据待测物体图像中像素点的特征值提取第一角点。

上述物体检测方法,根据待测物体图像的灰度变化量,获取像素点的特征值,根据像素点的特征值可以快速地提取待测物体图像中的第一角点,提高获取第一的效率。

而且还可以按照不同精度的要求,根据对应的预设范围提取第一角点,提高角点提取的准确性。

例如,可以将待测物体图像中亮度变化剧烈的像素点或图像边缘曲线上曲率极大值的像素点,提取为第一角点。例如,如果获取的两个方向上特征值都很大,可以认为该像素点为角点;假如只有某个方向上特征值较大,另一方向的较小,可以认为该像素点为边缘点;当两个方向上特征值都较小,可以认为该像素点处于平滑区域。

在一个实施例中,根据待测物体图像,获取待测物体图像的灰度变化量的步骤,包括以下步骤:

根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值。

根据灰度变化量获取待测物体图像中像素点的特征值的步骤,包括以下步骤:

根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。

本步骤中,m的特征值为待测物体图像中像素点的特征值,将m转换为特征矩阵后,可以直观地获取矩阵对角线上的特征值。以表征x方向和y方向的m为例,可以分别获得x方向和y方向上的特征值。

例如,当某个像素点在x方向和y方向上获得特征值同时都为较大的数值,可以认为该像素点为角点。

上述物体检测方法,可以准确地获取待测物体图像中像素点的特征值,提高物体检测的准确性。

关于根据模板图像获取第二角点的步骤的具体限定可以参照上文对于根据待测物体图像获取第一角点的步骤的限定,在此不再赘述。

在一个实施例中,根据变换矩阵将待测物体图像转换为待对比图像的步骤,包括以下步骤:

根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

上述物体检测方法,将待测物体图像中像素点的横坐标和纵坐标进行转换,可以快速地生成待对比图像,提高物体检测的效率。

在另一个实施例中,如图7所示,图7为另一个实施例中物体检测方法的流程图。在本实施例中物体检测方法包括以下步骤:

对待测物体图像进行预处理。通过模具监视系统中的电子眼抓拍待检测的模具,并获取待测物体图像,对待测物体图像进行滤波、降噪等处理。待检测的模具可以是注塑过程中任意时刻的模具,例如合模前的模具,合模前检查模具内无残留物可以防止模具夹损。

分别获取待测物体图像的角点和预先采集的模板图像的角点,提取相同位置下的待测物体图像中第一特征点和模板图像中第二特征点。

根据待测物体图像获取第一角点。首先,根据待测物体图像,获取待测物体图像的灰度变化量,根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值。然后,根据灰度变化量获取待测物体图像中像素点的特征值,根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。m的特征值为待测物体图像中像素点的特征值,将m转换为特征矩阵后,可以直观地获取矩阵对角线上的特征值。以表征x方向和y方向的m为例,可以分别获得x方向和y方向上的特征值。最后,当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

而关于根据模板图像获取第二角点的步骤的具体限定可以参照上文对于根据待测物体图像获取第一角点的步骤的限定,在此不再赘述。

匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。匹配的实质就是通过相似性度量值来找出在相同位置对应的第一特征点和第二特征点。另外,还可以在获取的第一特征点和第二特征点中,根据角度、距离等特征筛选可信度更高的第一特征点和第二特征点,提高物体检测方法的准确性。

根据第一特征点和第二特征点获取透视变换矩阵。首先,确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。然后,根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。最后,根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

根据变换矩阵将待测物体图像转换为待对比图像。根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

根据待对比图像与模板图像检测待测物体的缺陷。待对比图像中待测物体和模板图像中模板之间存在的平移和旋转已经消除,因此可以简单地比较待对比图像和模板图像中像素点之间的差异。以便于根据像素点之间的差异,准确地检测待测物体相对于模板所存在的缺陷。

上述物体检测方法,根据待测物体的待测物体图像中第一特征点和模板的模板图像中第二特征点,获取透视变换矩阵和待测物体的待对比图像,根据待对比图像和模板图像进行直接地对比,对比过程简单和便捷,可以快速和准确地检测待测物体的缺陷,提高模具或产品的检测效率和准确性。另外,上述物体检测方法,能够自动地找出匹配后相同位置的第一特征点和第二特征点,无需人工干预;通过透视变换算法计算透视变换矩阵,综合考虑了各种空间变形因素,如拉伸、收缩、扭曲、旋转等,获得的待对比图像基本不失真,匹配极为精确,物体检测方法的精度高。而且,不仅可以使用4组相同位置对应的第一特征点和第二特征点获取透视变换矩阵,也可以同时使用4组以上相同位置对应的第一特征点和第二特征点获取透视变换矩阵,即可以使用待测物体图像和模板图像中所有相同位置对应的第一特征点和第二特征点,计算最优化的透视变换矩阵。

应该理解的是,虽然图2至7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图8所示,图8为一个实施例中物体检测系统的结构示意图,本实施例中提供一种物体检测系统,包括特征点获取模块310、透视变换矩阵获取模块320和缺陷检测模块330,其中:

特征点获取模块310,用于获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

透视变换矩阵获取模块320,用于根据第一特征点和第二特征点获取透视变换矩阵;

缺陷检测模块330,用于根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

上述物体检测系统,根据待测物体的待测物体图像中第一特征点和模板的模板图像中第二特征点,获取透视变换矩阵和待测物体的待对比图像,根据待对比图像和模板图像进行直接地对比,对比过程简单和便捷,可以快速和准确地检测待测物体的缺陷,提高模具或产品的检测效率和准确性。

在一个实施例中,透视变换矩阵获取模块320还用于根据第一特征点和第二特征点建立透视变换等式;根据透视变换等式求解透视变换矩阵。

上述物体检测系统,通过第一特征点和第二特征点建立的透视变换等式可以准确地求解透视变换矩阵,以便于后续提高检测的准确性,提高物体检测的效率。

在一个实施例中,透视变换矩阵获取模块320还用于确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素;根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

上述物体检测系统,通过确定第一特征点和第二特征点的变换关系,并获得透视变换等式,可以准确地求解透视变换矩阵中的元素,获取透视变换矩阵。

在一个实施例中,透视变换矩阵获取模块320还用于根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

上述物体检测系统,通过获取使得ε值最小的透视变换矩阵,可以获取最优化和最接近实际的透视变换矩阵,进一步降低误差,提高透视变换矩阵的准确性,以便于后续提高检测的准确性,提高物体检测的效率。

在一个实施例中,缺陷检测模块330还用于根据透视变换矩阵,将待测物体图像中像素点的坐标转换至待对比图像中像素点的坐标;根据待测物体图像中像素点的灰度值和待对比图像中像素点的坐标,构建待对比图像。

上述物体检测系统,根据透视变换矩阵进行网格坐标的转换,可以快速地生成待对比图像,提高物体检测的效率。

在一个实施例中,特征点获取模块310还用于根据待测物体图像获取第一角点,根据模板图像获取第二角点;匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。

上述物体检测系统,通过角点检测方法可以有效和准确地获取第一特征点和第二特征点。

在一个实施例中,特征点获取模块310还用于根据待测物体图像,获取待测物体图像的灰度变化量;根据灰度变化量获取待测物体图像中像素点的特征值;当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

上述物体检测系统,根据待测物体图像的灰度变化量,获取像素点的特征值,根据像素点的特征值可以快速地提取待测物体图像中的第一角点,提高获取第一的效率。

在一个实施例中,特征点获取模块310还用于根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值;根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。

上述物体检测系统,可以准确地获取待测物体图像中像素点的特征值,提高物体检测的准确性。

在一个实施例中,缺陷检测模块330还用于根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

上述物体检测系统,将待测物体图像中像素点的横坐标和纵坐标进行转换,可以快速地生成待对比图像,提高物体检测的效率。

关于物体检测系统的具体限定可以参见上文中对于物体检测方法的限定,在此不再赘述。上述物体检测系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示,图9为一个实施例中计算机设备的内部结构图。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种物体检测方法。

本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

根据第一特征点和第二特征点获取透视变换矩阵;

根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据第一特征点和第二特征点建立透视变换等式;根据透视变换等式求解透视变换矩阵。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素;

根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据透视变换矩阵,将待测物体图像中像素点的坐标转换至待对比图像中像素点的坐标;根据待测物体图像中像素点的灰度值和待对比图像中像素点的坐标,构建待对比图像。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据待测物体图像获取第一角点,根据模板图像获取第二角点;匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据待测物体图像,获取待测物体图像的灰度变化量;根据灰度变化量获取待测物体图像中像素点的特征值;当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值;

根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取待测物体图像的第一特征点和模板图像的第二特征点,其中,第一特征点所表示的在待测物体上的位置与第二特征点所表示的在模板上的位置相同;

根据第一特征点和第二特征点获取透视变换矩阵;

根据变换矩阵将待测物体图像转换为待对比图像,并根据待对比图像与模板图像检测待测物体的缺陷。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据第一特征点和第二特征点建立透视变换等式;根据透视变换等式求解透视变换矩阵。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

确定为第一特征点和第二特征点的变换关系,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,zi满足zi=a13ui+a23vi+a33,ui和vi分别为第i个第二特征点的横坐标和纵坐标,为透视变换矩阵,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素;

根据变换关系获得其中,为透视变换等式,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据获取使得ε值最小的透视变换矩阵,其中,i为待测物体上与模板上相同位置的序号,xi和yi分别为第i个第一特征点的横坐标和纵坐标,ui和vi分别为第i个第二特征点的横坐标和纵坐标,a11、a12、a13、a21、a22、a23、a31、a32和a33分别为透视变换矩阵的元素。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据透视变换矩阵,将待测物体图像中像素点的坐标转换至待对比图像中像素点的坐标;根据待测物体图像中像素点的灰度值和待对比图像中像素点的坐标,构建待对比图像。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据待测物体图像获取第一角点,根据模板图像获取第二角点;匹配第一角点和第二角点,并获取待测物体图像的第一特征点和模板图像的第二特征点。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据待测物体图像,获取待测物体图像的灰度变化量;根据灰度变化量获取待测物体图像中像素点的特征值;当特征值在预设范围内时,将该特征值对应的像素点作为第一角点。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据获取待测物体图像的灰度变化量,其中,e(u,v)为待测物体图像的灰度变化量,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,w(x,y)为窗口函数,(x,y)为窗口内待测物体图像的像素点的坐标,i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值;

根据获取m的特征值,其中,m为矩阵,(x,y)为待测物体图像中像素点的坐标,w(x,y)为窗口函数,ix和iy满足i(x+u,y+v)=i(x,y)+ixu+iyv+o(u2,v2),i(x,y)为待测物体图像中像素点在平移前的灰度值,i(x+u,y+v)为待测物体图像中像素点在平移后的灰度值,ix为待测物体图像中像素点灰度值在x方向的一阶梯度值,iy为待测物体图像中像素点灰度值在y方向的一阶梯度值,(u,v)为窗口的移动量,u为窗口在x方向的移动量,v为窗口在y方向的移动量,o(u2,v2)为i(x+u,y+v)进行泰勒公式展开后的余项。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据i(x,y)=i0(u,v)获得待对比图像,其中,i(x,y)为待对比图像,i为待对比图像的灰度值,x和y分别为待对比图像中像素点的横坐标和纵坐标,i0(u,v)为待测物体图像,i0为待测物体图像的灰度值,u和v分别为待测物体图像中像素点的横坐标和纵坐标。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1