掌桥专利:专业的专利平台
掌桥专利
首页

一种物体检测方法、物体检测装置及电子设备

文献发布时间:2023-06-19 09:51:02


一种物体检测方法、物体检测装置及电子设备

技术领域

本申请属于图像处理技术领域,尤其涉及一种物体检测方法、物体检测装置、电子设备及计算机可读存储介质。

背景技术

通常来说,流水线作业的任务比较单一,一条流水线往往专注于生产同一型号的产品。当前,大部分厂商为了给用户提供更多样化及个性化的产品选择,会在一个产品型号下开发出不同颜色,这使得流水线上所生产的同一产品型号的不同产品可能有着不同的颜色,给对流水线上的产品的识别带来了一定难度。

发明内容

本申请提供了一种物体检测方法、物体检测装置、电子设备及计算机可读存储介质,可以解决对流水线上有着多种颜色选择的物体(也即流水线上形状相同但颜色不同的物体)的识别较为困难的问题。

第一方面,本申请提供了一种物体检测方法,包括:

将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框;

确定各个检测框所分别对应的区域图像,其中,任一区域图像的外边界为对应的检测框;

针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,其中,上述颜色面积包括至少一个预设颜色分别在上述区域图像中所占的面积,上述预设颜色为上述目标物体能够存在的颜色;

将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像;

将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

第二方面,本申请提供了一种物体检测装置,包括:

目标检测单元,用于将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框;

区域图像确定单元,用于确定各个检测框所分别对应的区域图像,其中,任一区域图像的外边界为对应的检测框;

面积最大值确定单元,用于针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,其中,上述颜色面积包括至少一个预设颜色分别在上述区域图像中所占的面积,上述预设颜色为上述目标物体能够存在的颜色;

候选区域图像确定单元,用于将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像;

目标区域图像确定单元,用于将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

第三方面,本申请提供了一种电子设备,上述电子设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。

第四方面,本申请提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。

第五方面,本申请提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。

本申请与现有技术相比存在的有益效果是:首先通过目标检测模型对待检测图像进行初步的目标检测操作,获得可能包含目标物体的检测框;考虑到目标检测模型可能发生误检,可以基于颜色对各个检测框所分别对应的区域图像进行进一步检测;由于目标物体所能够存在的颜色,也即预设颜色是有限且已知的,因而,对于任一区域图像,均可通过以下方式对其是否为误检的检测框进行初步判断:在至少一个预设颜色所分别在该区域图像所占据的面积中,确定出面积最大值,并将该面积最大值与预设的面积阈值进行比对,当该面积最大值大于该面积阈值时,即可将该区域图像确定为候选区域图像;在所确定的所有候选区域图像中,考虑到产品在流水线上的位置往往是固定的,因而可将距离待检测图像的预设位置点最近的候选区域图像确定为真实显示有目标物体的目标区域图像,实现对流水线上的目标物体的检测。

可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种物体检测方法的实现流程示意图;

图2是本申请实施例提供的另一种物体检测方法的实现流程示意图;

图3是本申请实施例提供的物体检测装置的结构示意图;

图4是本申请实施例提供的电子设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

下面对本申请实施例提供的一种物体检测方法进行描述。请参阅图1,本申请实施例中的物体检测方法包括:

步骤101,将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框。

在本申请实施例中,针对流水线上需要被识别的物体,也即目标物体来说,由于一条流水线上的目标物体是已知且固定不变的,因而,研发人员可以预先基于该目标物体对目标检测模型进行训练,以尽可能的提升目标检测模型的检测准确率。在对目标检测模型的训练完成后,即可基于这一已训练的目标检测模型实现对目标物体的目标检测。具体地,该已训练的目标检测模型的输入为相机对流水线进行拍摄所得到的待检测图像,输出为至少一个预估包含目标物体的检测框。

在一些实施例中,为了进一步提升物体检测效率,在上述步骤101之后,还可先判断目标检测模型所返回的检测框的数量是否大于预设的检测框数量阈值;若判断发现该目标检测模型所返回的检测框的数量大于该检测框数量阈值,则认为该目标检测模型所返回的检测框的数量过多。考虑到同一时刻,流水线上往往只需要对一个目标物体执行某一特定操作,因而,检测框数量过多必然意味着这其中有很多误检的检测框。基于此,可在这种情况下基于预设的非极大值抑制算法对目标检测模型所返回的检测框进行筛选,其中,该非极大值抑制算法可用于判断不同检测框的重合度和置信度,以此实现对检测框的筛选。最终,只有筛选后所保留的检测框才会执行步骤102及后续操作,其中,可设定筛选后所保留的检测框的数量为上述检测框数量阈值。

在一些实施例中,该目标检测模型可以通过如下方式获得:首先,选定目标检测模型所要采用的目标检测算法,包括但不限于Single Shot MultiBox Detector(SSD)算法及You Only Look Once(YOLO)算法等;随后,执行采集数据的操作,具体为将各个颜色的目标物体放在流水线上,使得相机能够采集到目标物体在不同颜色、不同姿态和/或不同光照下的图像;接着,再在采集到的图像中,将不同颜色、不同姿态和/或不同光照下的目标物体人工标注为同一类;最后,整理标注的数据,并基于标注的数据对目标检测模型进行训练,在目标检测模型的损失达到要求时,即获得已训练的目标检测模型。

步骤102,确定各个检测框所分别对应的区域图像。

在本申请实施例中,由于目标检测模型不可避免的会出现误检的情况,所返回的检测框仅仅是预估包含目标物体的检测框,并不能确定这些检测框一定包含有目标物体,因而需要对这些检测框进行进一步检测。考虑到具备实际含义的并不是检测框本身,而是检测框所框选的区域的图像,因而,本步骤中,会确定各个检测框所分别对应的区域图像,其中,对于任一区域图像来说,该区域图像的外边界即为对应的检测框。也即,将各个检测框所框选的区域的图像所提取出来,即可得到各个检测框所分别对应的区域图像。

在一些实施例中,为了防止目标物体的边缘附近的阴影影响到后续对目标物体的颜色识别的效果,在本步骤中,还可以以检测框的中心为中心,将该检测框向内收缩。下面以任一检测框为例,作出说明:将该检测框的尺寸按照预设比例缩小,缩小后的检测框记作缩小检测框;需要注意的是,由于该缩小的操作是以缩小前的检测框的中心为中心,因而缩小后所得到的缩小检测框的中心会与原来的检测框的中心重合。基于上述操作对各个检测框都进行了缩小操作后,即可分别提取各个缩小检测框在待检测图像中所框选的区域,得到各个缩小检测框所分别对应的区域图像。

步骤103,针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值。

在本申请实施例中,将会对每个区域图像进行检测,以判断这些区域图像中哪一区域图像才真实显示有目标物体。此处以任一区域图像为例作出说明:由于本申请所考虑的目标物体有着多种不同的颜色选择,因而,可以以目标物体所能够存在的颜色,也即至少一个预设颜色为检测基础,先去计算所得到的这至少一个预设颜色分别在该区域图像所占的面积中的最大值。为了便于理解,下面以具体实例作出说明:

假定目标物体有如下几种颜色选择:红色、蓝色及黄色。也即,流水线上的目标物体可能为红色,可能为蓝色,也可能为黄色。

随后,对于一区域图像来说,即可计算该区域图像的颜色面积,具体为:计算红色在该区域图像中所占的面积,记作S_R;计算蓝色在该区域图像中所占的面积,记作S_B;计算黄色在该区域图像中所占的面积,记作S_Y;其中,该颜色面积必然不大于该区域图像的总面积;也即,记该区域图像的总面积为S,则S_R+S_B+S_Y≤S。

将S_R、S_B及S_Y中的最大值确定为面积最大值。

在一些实施例中,可以先确定区域图像中的各个像素点所属的颜色,随后基于各个像素点所属的颜色,计算各个预设颜色在上述区域图像中所占的面积,该面积可以直接通过像素点的个数表达,最后对计算所得的面积进行遍历,即可确定面积最大值。这其中,像素点所属的颜色可通过如下方式确定:

获取区域图像中的每个像素点的通道像素值;

获取每个预设颜色的通道像素值的范围;

将上述每个像素点的通道像素值分别与各个预设颜色的通道像素值的范围进行匹配,以确定上述每个像素点所属的颜色。

其中,上述通道像素值指的是预设的颜色空间所对应的颜色通道下的像素值。举例来说,最为典型的颜色空间即为RGB空间,该颜色空间所对应的颜色通道包括R通道、G通道及B通道;那么对于一个像素点来说,所获得的通道像素值具体包括有三个像素值,分别是R通道下的像素值,G通道下的像素值及B通道下的像素值。而对于目标物体来说,考虑到光照及目标物体的姿态会对相机拍摄所得的待检测图像的成像产生影响,因而,可预先配置好各个预设颜色的通道像素值的范围。当然,上述颜色空间也可以是RGB空间外的其它空间,例如YUV空间、HSV空间或HSI空间等,此处不作限定。

举例来说,对于红色,所配置的通道像素值的范围是:R通道下的像素值的范围为R1到R2,G通道下的像素值的范围为G1到G2,B通道下的像素值的范围为B1到B2。

对于蓝色,所配置的通道像素值的范围是:R通道下的像素值的范围为R3到R4,G通道下的像素值的范围为G3到G4,B通道下的像素值的范围为B3到B4。

对于黄色,所配置的通道像素值的范围是:R通道下的像素值的范围为R5到R6,G通道下的像素值的范围为G5到G6,B通道下的像素值的范围为B5到B6。

当某一像素点的像素值落入某一预设颜色的通道像素值的范围内时,可认为该像素点的通道像素值与该预设颜色的通道像素值的范围匹配成功,也即该像素点属于该预设颜色。需要注意的是,不同的预设颜色所对应的通道像素值的范围不会出现重合;也即,不会出现一个像素点的通道像素值落入两个(或以上)不同的预设颜色的通道像素值的范围内的情况。当然,对于无法与任一预设颜色的通道像素值的范围相匹配的像素点来说,可统一归入未知颜色这一类别。由于后续操作均与该未知颜色无关,因而此处无需对属于未知颜色这一类别的像素点做任何处理;也即,本申请实施例并不关心不属于任一预设颜色的像素点。

步骤104,将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像。

在本申请实施例中,上述面积阈值可以是一经验值,例如,可以是检测人员根据目标物体本身的尺寸,以及流水线与拍摄目标物体的相机的相对位置设定一面积阈值,该面积阈值适用于所有的区域图像;或者,上述面积阈值也可以是根据预设的面积比例及区域图像的总面积计算而得,例如,面积阈值=区域图像的总面积×预设的面积比例,每一区域图像分别对应一个面积阈值。此处不对上述面积阈值的设定方式作出限定。

随后,即可将各个区域图像的面积最大值与面积阈值进行比对,将面积最大值大于预设的面积阈值的区域图像确定为候选区域图像;其余的区域图像,也即面积最大值小于或等于预设的面积阈值的区域图像即可被剔除,不再参与后续步骤。需要注意的是,上述候选区域图像的数量可能有多个,此处不对候选区域图像的数量作出限定;并且,若面积阈值为经验值,也即所有的区域图像均对应同一面积阈值,则各个区域图像的面积最大值会与该同一面积阈值进行比对;若面积阈值为根据预设的面积比例及区域图像的总面积计算而得,则每一区域图像会与其所对应的面积阈值进行比对。

步骤105,将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

在本申请实施例中,考虑到拍摄待检测图像的相机通常是在同一位置对流水线进行拍摄,而目标物体在流水线上的位置也相对固定,可预先通过对相机的标定操作,确定出相机所拍摄的图像中目标物体最可能出现的位置点,该位置点可被记作预设位置点。举例来说,检测人员可通过调整相机的默认位置,使得该预设位置点为待检测图像的中心点。基于此,可再计算各个候选区域图像与该预设位置点的距离,将距离最近的候选区域图像确定为目标区域图像,其它候选区域图像则被最终判定为误检或干扰。示例性地,可将候选区域图像的中心点与该预设位置点的距离作为该候选区域图像与该预设位置点的距离;或者,也可遍历计算得到候选区域图像中的各个像素点与该预设位置点的距离,将该距离的最小值作为该候选区域图像与该预设位置点的距离。

由上可见,本申请实施例中,首先通过目标检测模型对待检测图像进行初步的目标检测操作,获得可能包含目标物体的检测框;考虑到目标检测模型可能发生误检,可以基于颜色对各个检测框所分别对应的区域图像进行进一步检测;由于目标物体所能够存在的颜色,也即预设颜色是有限且已知的,因而,对于任一区域图像,均可通过以下方式对其是否为误检的检测框进行初步判断:在至少一个预设颜色所分别在该区域图像所占据的面积中,确定出面积最大值,并将该面积最大值与预设的面积阈值进行比对,当该面积最大值大于该面积阈值时,即可将该区域图像确定为候选区域图像;在所确定的所有候选区域图像中,考虑到产品在流水线上的位置往往是固定的,因而可将距离待检测图像的预设位置点最近的候选区域图像确定为真实显示有目标物体的目标区域图像,实现对流水线上的目标物体的检测。本申请方案受相机对不同颜色的成像效果影响较小,能够进一步减少误检的发生;且上述过程对流水线的背景色的限制较小,可以区分颜色较为接近的两个颜色,减少了更换相机后可能带来的重新训练目标检测模型的大量工作量。

在前文所示实施例的基础上,本申请还提供了一种物体检测方法,主要涉及在检测到目标物体后,对该目标物体所做的进一步处理。参阅图2,本申请实施例中的物体检测方法包括:

步骤201,将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框。

步骤202,确定各个检测框所分别对应的区域图像,其中,任一区域图像的外边界为对应的检测框。

步骤203,针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,其中,上述颜色面积包括至少一个预设颜色分别在上述区域图像中所占的面积,上述预设颜色为上述目标物体能够存在的颜色。

步骤204,将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像。

步骤205,将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

在本申请实施例中,上述步骤201-205分别与步骤101-105相同或相似,此处不作赘述。

步骤206,获取上述目标区域图像的上述面积最大值所对应的预设颜色,记作目标颜色。

在本申请实施例中,当确定了目标区域图像后,可获取该目标区域图像在步骤203中所确定的面积最大值所对应的预设颜色,该预设颜色即为该目标区域图像所真实显示的目标物体的颜色。也即,本步骤中对当前所检测到的目标物体的颜色作出了区分。

举例来说,假定目标物体有如下几种颜色选择:红色、蓝色及黄色。也即,流水线上的目标物体可能为红色,可能为蓝色,也可能为黄色。又假定当前所确定的目标区域图像在步骤203中所确定的面积最大值为S_R;也即,对于该目标区域图像来说,所有的预设颜色中,红色占该目标区域图像的面积最大,那么即可认为该目标区域图像所显示的目标物体的颜色为红色;也即,当前检测到的目标物体的颜色为红色。

步骤207,控制预设的机械臂对上述目标物体进行抓取。

在本申请实施例中,考虑到人工智能技术的快速发展,机器人被广泛地用于辅助人类进行各项工作,尤其在流水线作业中,由于其任务的单一性,仅使用一个机械臂就可以实现高效率的操作,更是具有广泛的应用前景。因而,此处以机械臂替代流水线作业人员的手动工作,可控制机械臂对当前所检测到的目标物体进行抓取。

在一些实施例中,拍摄待检测图像的相机可被安装于一相对于流水线固定的位置,例如在流水线一侧固定架设该相机,相机在空间中的位置全程保持固定。通过预先对该相机进行标定处理,可建立起待检测图像的各个位置点所分别对应的空间位置点的映射关系;基于此,可认为目标区域图像的中心点所对应的空间位置点即为当前所检测到的目标物体在空间中的位置;而机械臂在默认状态下的姿态及位置等参数又是已知的,以此可计算出机械臂与该目标物体的距离,控制机械臂根据该距离实现对该目标物体的抓取。

在一些实施例中,拍摄待检测图像的相机可被安装于机械臂的固定位置,也即,该相机与机械臂相对位姿是固定的。检测人员可预先对机械臂及相机的安装位置进行调整,使得在机械臂的默认状态下,该相机可正对流水线进行拍摄。考虑到这种情况下,相机在空间中的位置会随着机械臂的运动而发生改变,因而,可先调整该机械臂的位置,以使得上述相机所拍摄的实时画面中,该目标物体的中心点与实时画面的预设位置点(例如实时画面的中心点)重合;又由于预先已对相机进行了标定,且目标物体的实际大小是已知的,在“近大远小”的规律下,可基于该目标物体在该实时画面中的大小,判断出机械臂与目标物体的距离,并控制机械臂根据该距离实现对该目标物体的抓取。

步骤208,在抓取到上述目标物体后,控制上述机械臂将上述目标物体分拣至上述目标颜色所对应的处理区域。

在一些实施例中,该流水线上可能需要对不同颜色的目标物体进行不同的处理。例如,在出厂准备阶段,可能需要将目标物体基于不同的颜色分类进行打包装箱。在这种应用场景下,可在机械臂抓取到当前所检测到的目标物体后,进一步控制该机械臂将这一目标物体分拣至目标颜色所对应的处理区域,例如,将红色的目标物体分拣至A区域,将蓝色的目标物体分拣至B区域,将黄色的目标物体分拣至C区域。当然,除了分拣操作外,也可以对不同颜色的目标物体进行其它不同的操作,此处不作限定。

由上可见,本申请实施例中,首先通过目标检测模型对待检测图像进行初步的目标检测操作,获得可能包含目标物体的检测框;考虑到目标检测模型可能发生误检,可以基于颜色对各个检测框所分别对应的区域图像进行进一步检测;由于目标物体所能够存在的颜色,也即预设颜色是有限且已知的,因而,对于任一区域图像,均可通过以下方式对其是否为误检的检测框进行初步判断:在至少一个预设颜色所分别在该区域图像所占据的面积中,确定出面积最大值,并将该面积最大值与预设的面积阈值进行比对,当该面积最大值大于该面积阈值时,即可将该区域图像确定为候选区域图像;在所确定的所有候选区域图像中,考虑到产品在流水线上的位置往往是固定的,因而可将距离待检测图像的预设位置点最近的候选区域图像确定为真实显示有目标物体的目标区域图像,实现对流水线上的目标物体的检测。本申请方案受相机对不同颜色的成像效果影响较小,能够进一步减少误检的发生;且上述过程对流水线的背景色的限制较小,可以区分颜色较为接近的两个颜色,减少了更换相机后可能带来的重新训练目标检测模型的大量工作量。进一步地,还可根据所检测出的目标物体的颜色,通过机械臂对其实现抓取及分拣的操作,实现基于颜色的对目标物体的区分。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文所提供的物体检测方法,本申请实施例还提供了一种物体检测装置,上述物体检测装置可集成于电子设备中,参见图3,本申请实施例中的物体检测装置300包括:

目标检测单元301,用于将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框;

区域图像确定单元302,用于确定各个检测框所分别对应的区域图像,其中,任一区域图像的外边界为对应的检测框;

面积最大值确定单元303,用于针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,其中,上述颜色面积包括至少一个预设颜色分别在上述区域图像中所占的面积,上述预设颜色为上述目标物体能够存在的颜色;

候选区域图像确定单元304,用于将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像;

目标区域图像确定单元305,用于将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

可选地,所述物体检测装置300还包括:

颜色获取单元,用于获取所述目标区域图像的所述面积最大值所对应的预设颜色,记作目标颜色;

抓取控制单元,用于控制预设的机械臂对所述目标物体进行抓取;

分拣控制单元,用于在抓取到所述目标物体后,控制所述机械臂将所述目标物体分拣至所述目标颜色所对应的处理区域。

可选地,所述待检测图像通过固定于所述机械臂上的相机拍摄而得;所述抓取控制单元,具体用于调整所述机械臂的位置,以使得所述相机所拍摄的实时画面中,所述目标物体的中心点与所述实时画面的预设位置点重合;基于所述目标物体在所述实时画面中的大小,判断所述机械臂与所述目标物体的距离;根据所述距离控制所述机械臂对所述目标物体进行抓取。

可选地,所述物体检测装置300包括:

检测框筛选单元,用于若所述目标检测模型所返回的检测框的数量大于预设的检测框数量阈值,则基于预设的非极大值抑制算法对所述目标检测模型所返回的检测框进行筛选;

相应地,所述区域图像确定单元302,具体用于确定筛选后保留的各个检测框所分别对应的区域图像。

可选地,所述区域图像确定单元302,包括:

检测框缩小子单元,用于针对每个检测框,将所述检测框的尺寸按照预设比例缩小,得到缩小检测框,其中,所述缩小检测框的中心与所述检测框的中心重合;

图像提取子单元,用于从所述待检测图像中,分别提取各个缩小检测框在所述待检测图像中所框选的区域,得到各个缩小检测框所分别对应的区域图像。

可选地,所述面积最大值确定单元303,包括:

颜色确定子单元,用于确定所述区域图像中的各个像素点所属的颜色;

面积计算子单元,用于基于各个像素点所属的颜色,计算各个预设颜色在所述区域图像中所占的面积;

面积遍历子单元,用于对计算所得的面积进行遍历,确定面积最大值。

可选地,所述颜色确定子单元,包括:

第一获取子单元,用于获取所述区域图像中的每个像素点的通道像素值,其中,所述通道像素值指的是预设的颜色空间所对应的颜色通道下的像素值;

第二获取子单元,用于获取每个预设颜色的通道像素值的范围;

匹配子单元,用于将所述每个像素点的通道像素值分别与各个预设颜色的通道像素值的范围进行匹配,以确定所述每个像素点所属的颜色。

由上可见,本申请实施例中,首先通过目标检测模型对待检测图像进行初步的目标检测操作,获得可能包含目标物体的检测框;考虑到目标检测模型可能发生误检,可以基于颜色对各个检测框所分别对应的区域图像进行进一步检测;由于目标物体所能够存在的颜色,也即预设颜色是有限且已知的,因而,对于任一区域图像,均可通过以下方式对其是否为误检的检测框进行初步判断:在至少一个预设颜色所分别在该区域图像所占据的面积中,确定出面积最大值,并将该面积最大值与预设的面积阈值进行比对,当该面积最大值大于该面积阈值时,即可将该区域图像确定为候选区域图像;在所确定的所有候选区域图像中,考虑到产品在流水线上的位置往往是固定的,因而可将距离待检测图像的预设位置点最近的候选区域图像确定为真实显示有目标物体的目标区域图像,实现对流水线上的目标物体的检测。进一步地,还可根据所检测出的目标物体的颜色,通过机械臂对其实现抓取及分拣的操作,实现基于颜色的对目标物体的区分。

对应于上文所提供的物体检测方法,本申请实施例还提供了一种电子设备,该电子设备可以集成在机械臂中以实现对机械臂的控制;或者,该电子设备也可以与机械臂外接而实现对机械臂的控制。参见图4,本申请实施例中的电子设备4包括:存储器401,一个或多个处理器402(图4中仅示出一个)及存储在存储器401上并可在处理器上运行的计算机程序。其中:存储器401用于存储软件程序以及模块,处理器402通过运行存储在存储器401的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器402通过运行存储在存储器401的上述计算机程序时实现以下步骤:

将待检测图像输入已训练的目标检测模型中,得到上述已训练的目标检测模型所返回的至少一个预估包含目标物体的检测框;

确定各个检测框所分别对应的区域图像,其中,任一区域图像的外边界为对应的检测框;

针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,其中,上述颜色面积包括至少一个预设颜色分别在上述区域图像中所占的面积,上述预设颜色为上述目标物体能够存在的颜色;

将上述面积最大值大于预设的面积阈值的区域图像确定为候选区域图像;

将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像。

假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,在上述将距离上述待检测图像的预设位置点最近的候选区域图像确定为真实显示有上述目标物体的目标区域图像之后,处理器402通过运行存储在存储器401的上述计算机程序时实现以下步骤:

获取上述目标区域图像的上述面积最大值所对应的预设颜色,记作目标颜色;

控制预设的机械臂对上述目标物体进行抓取;

在抓取到上述目标物体后,控制上述机械臂将上述目标物体分拣至上述目标颜色所对应的处理区域。

在上述第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述待检测图像通过固定于上述机械臂上的相机拍摄而得;上述控制预设的机械臂对上述目标物体进行抓取,包括:

调整上述机械臂的位置,以使得上述相机所拍摄的实时画面中,上述目标物体的中心点与上述实时画面的预设位置点重合;

基于上述目标物体在上述实时画面中的大小,判断上述机械臂与上述目标物体的距离;

根据上述距离控制上述机械臂对上述目标物体进行抓取。

在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,在上述确定各个检测框所分别对应的区域图像之前,处理器402通过运行存储在存储器401的上述计算机程序时实现以下步骤:

若上述目标检测模型所返回的检测框的数量大于预设的检测框数量阈值,则基于预设的非极大值抑制算法对上述目标检测模型所返回的检测框进行筛选;

相应地,上述确定各个检测框所分别对应的区域图像,包括:

确定筛选后保留的各个检测框所分别对应的区域图像。

在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述确定各个检测框所分别对应的区域图像,包括:

针对每个检测框,将上述检测框的尺寸按照预设比例缩小,得到缩小检测框,其中,上述缩小检测框与上述检测框的中心重合;

从上述待检测图像中,分别提取各个缩小检测框在上述待检测图像中所框选的区域,得到各个缩小检测框所分别对应的区域图像。

在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础而提供的第六种可能的实施方式中,上述针对每个区域图像,在计算所得到的颜色面积中,确定面积最大值,包括:

判断上述区域图像中的各个像素点所属的颜色;

基于各个像素点所属的颜色,计算各个预设颜色在上述区域图像中所占的面积;

对计算所得的面积进行遍历,确定面积最大值。

在上述第六种可能的实施方式作为基础而提供的第七种可能的实施方式中,上述确定上述区域图像中的各个像素点所属的颜色,包括:

获取上述区域图像中的每个像素点的通道像素值,其中,上述通道像素值指的是预设的颜色空间所对应的颜色通道下的像素值;

获取每个预设颜色的通道像素值的范围;

将上述每个像素点的通道像素值分别与各个预设颜色的通道像素值的范围进行匹配,以确定上述每个像素点所属的颜色。

应当理解,在本申请实施例中,所称处理器402可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器401可以包括只读存储器和随机存取存储器,并向处理器402提供指令和数据。存储器401的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器401还可以存储设备类型的信息。

由上可见,本申请实施例中,首先通过目标检测模型对待检测图像进行初步的目标检测操作,获得可能包含目标物体的检测框;考虑到目标检测模型可能发生误检,可以基于颜色对各个检测框所分别对应的区域图像进行进一步检测;由于目标物体所能够存在的颜色,也即预设颜色是有限且已知的,因而,对于任一区域图像,均可通过以下方式对其是否为误检的检测框进行初步判断:在至少一个预设颜色所分别在该区域图像所占据的面积中,确定出面积最大值,并将该面积最大值与预设的面积阈值进行比对,当该面积最大值大于该面积阈值时,即可将该区域图像确定为候选区域图像;在所确定的所有候选区域图像中,考虑到产品在流水线上的位置往往是固定的,因而可将距离待检测图像的预设位置点最近的候选区域图像确定为真实显示有目标物体的目标区域图像,实现对流水线上的目标物体的检测。进一步地,还可根据所检测出的目标物体的颜色,通过机械臂对其实现抓取及分拣的操作,实现基于颜色的对目标物体的区分。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。

以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 运动物体检测装置、运动物体检测方法、运动物体检测程序、运动物体跟踪装置、运动物体跟踪方法以及运动物体跟踪程序
  • 检测用信息登录装置、对象物体检测装置、电子设备、检测用信息登录装置的控制方法、对象物体检测装置的控制方法、检测用信息登录装置控制程序、对象物体检测装置控制程序
技术分类

06120112326393