基于深度学习的电容定位检测方法、服务器及检测系统转让专利

申请号 : CN201911353811.9

文献号 : CN111141211B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孔令晶周莹黄国伟王辉静

申请人 : 深圳信息职业技术学院

摘要 :

本发明公开了一种基于深度学习的电容定位检测方法,应用于检测系统,包括:将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚点;将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区域;根据所述电容区域进行电容定位检测。本发明还公开了一种服务器及检测系统。本发明通过利用深度学习算法识别出电容关键点并将电容关键点划分到对应的电容区域,提供了一种创新的方法,可以得到对电容位置信息的准确估计,从而基于电容位置信息实现对电容的准确定位。

权利要求 :

1.一种基于深度学习的电容定位检测方法,应用于检测系统,其特征在于,所述基于深度学习的电容定位检测方法包括以下步骤:将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚点;

将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区域;

根据所述电容区域进行电容定位检测;

所述将所述电容关键点划分为多个关键点集合的步骤包括:计算各个所述电容关键点之间的欧式距离;

根据所述欧式距离将所述电容关键点划分为多个关键点集合;

所述电容主体角点包括四个主体角点,所述计算所述电容关键点之间的欧式距离,根据所述欧式距离将所述电容关键点划分为多个关键点集合的步骤包括:将所述四个主体角点、电容左管脚点以及电容右管脚点映射至六类关键点;

将第一类关键点划分为多个关键点集合;

针对第二类关键点至第六类关键点中的每一个待分配的关键点,根据下述步骤依次将所述第二类关键点至第六类关键点分配到所述关键点集合:遍历计算所述待分配关键点与所述关键点集合之间的欧式距离,将所述待分配关键点添加至目标关键点集合中,其中,所述待分配关键点与所述目标关键点集合之间的欧式距离落入预设距离范围中。

2.如权利要求1所述的基于深度学习的电容定位检测方法,其特征在于,所述将电容图像输入所述深度学习网络模型,以识别出多个电容关键点的步骤之前还包括:将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率;

获取所述预测高斯概率与标注的电容关键点的高斯概率的差值,其中,所述标注的电容关键点高斯概率根据所述电容训练图像数据处理得到;

根据所述差值调整所述深度学习网络模型的参数。

3.如权利要求2所述的基于深度学习的电容定位检测方法,其特征在于,所述将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率的步骤包括:将所述电容关键点的位置作为高斯分布的峰值位置;

根据所述峰值位置得到所述电容关键点的预测高斯概率。

4.如权利要求2所述的基于深度学习的电容定位检测方法,其特征在于,所述根据所述差值调整所述深度学习网络的参数的步骤之后还包括:识别所述电容训练图像中的电容主体中心点,并得到所述电容主体中心点的预测高斯概率;

获取所述电容主体中心点的预测高斯概率与标注的电容主体中心点高斯概率的差值,其中,所述标注的电容主体中心点高斯概率根据所述电容训练图像数据处理得到;

根据所述差值调整所述深度学习网络模型的参数。

5.一种服务器,所述服务器包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于深度学习的电容定位检测处理程序,所述基于深度学习的电容定位检测处理程序被所述处理器执行时实现如权利要求1至4中任一项所述的基于深度学习的电容定位检测方法的步骤。

6.一种检测系统,用于实现如权利要求1至4中任一项所述的基于深度学习的电容定位检测方法的步骤,其特征在于,所述检测系统包括嵌入式设备、与所述嵌入式设备连接的摄像头以及机械手,其中,所述摄像头用于拍摄电容图片,所述嵌入式设备用于识别所述电容图片中的电容位置,所述机械手根据所述电容位置抓取电容。

7.一种电容定位检测方法,应用于如权利要求6所述的检测系统,所述电容检测定位的方法包括以下步骤:

控制摄像头拍摄预设区域内的电容图片并发送所述电容图片;

嵌入式设备接收所述电容图片并识别所述电容图片中的电容的位置信息;

所述嵌入式设备将所述电容的位置信息发送给机械手;

机械手根据所述电容的位置信息抓取电容。

8.一种介质,其特征在于,所述介质上存储有基于深度学习的电容定位检测的处理程序,所述基于深度学习的电容定位检测的处理程序被处理器执行时实现如权利要求1至4中任一项所述的基于深度学习的电容定位检测方法的步骤。

说明书 :

基于深度学习的电容定位检测方法、服务器及检测系统

技术领域

[0001] 本发明涉及计算机技术领域,尤其涉及一种基于深度学习的电容定位检测方法、服务器及检测系统。

背景技术

[0002] 随着机械手臂近些年来的发展和普及,它已逐步开始替代传统的人类劳动力,以其准确、安全、和低成本的方式在工业领域得到越来越广泛的应用。利用机械手臂系统进行
电容抓取是工业领域的一项重要应用,该系统通过运行于嵌入式计算设备上的电容关键点
定位算法对电容进行关键区域检测与定位,进而能够对电容进行抓取。
[0003] 能否对电容实现准确的抓取,电容的关键区域定位检测是非常关键的工作。而传统方式更多是依靠人工辅助抓取电容或者使用深度相机作为输入信息来定位电容关键点,
这使得成本过高,不利于大规模部署和提高生产效率。
[0004] 上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

发明内容

[0005] 本发明的主要目的在于提供一种基于深度学习的电容定位检测方法、服务器及检测系统,旨在解决现有技术中抓取电容效率低的技术问题。
[0006] 为实现上述目的,本发明提供一种基于深度学习的电容定位检测方法,所述基于深度学习的电容定位检测方法包括如下步骤:
[0007] 将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚点;
[0008] 将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区域;
[0009] 根据所述电容区域进行电容定位检测。
[0010] 可选地,所述将所述电容关键点划分为多个关键点集合的步骤包括:
[0011] 计算各个所述电容关键点之间的欧式距离;
[0012] 根据所述欧式距离将所述电容关键点划分为多个关键点集合。
[0013] 可选地,所述电容主体角点包括四个主体角点,所述计算所述电容关键点之间的欧式距离,根据所述欧式距离将所述电容关键点划分为多个关键点集合的步骤包括:
[0014] 将所述四个主体角点、电容左管脚点以及电容右管脚点映射至六类关键点;
[0015] 将第一类关键点划分为多个关键点集合;
[0016] 针对第二类关键点至第六类关键点中的每一个待分配的关键点,根据下述步骤依次将所述第二类关键点至第六类关键点分配到所述关键点集合:
[0017] 遍历计算所述待分配关键点与所述关键点集合之间的欧式距离,将所述待分配关键点添加至目标关键点集合中,其中,所述待分配关键点与所述目标关键点集合之间的欧
式距离落入预设距离范围中。
[0018] 可选地,所述将电容图像输入所述深度学习网络模型,以识别出多个电容关键点的步骤之前还包括:
[0019] 将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率;
[0020] 获取所述预测高斯概率与标注的电容关键点的高斯概率的差值,其中,所述标注的电容关键点高斯概率根据所述电容训练图像数据处理得到;
[0021] 根据所述差值调整所述深度学习网络模型的参数。
[0022] 可选地,所述将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率的步骤包括:
[0023] 将所述电容关键点的位置作为高斯分布的峰值位置;
[0024] 根据所述峰值位置得到所述电容关键点的预测高斯概率。
[0025] 可选地,所述根据所述差值调整所述深度学习网络的参数的步骤之后还包括:
[0026] 识别所述电容训练图像中的电容主体中心点,并得到所述电容主体中心点的预测高斯概率;
[0027] 获取所述电容主体中心点的预测高斯概率与标注的电容主体中心点高斯概率的差值,其中,所述标注的电容主体中心点高斯概率根据所述电容训练图像数据处理得到;
[0028] 根据所述差值调整所述深度学习网络模型的参数。
[0029] 此外,为实现上述目的,本发明还提供一种服务器,该服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于深度学习的电容定位检测处理程
序,所述基于深度学习的电容定位检测处理程序被所述处理器执行时实现如上所述的基于
深度学习的电容定位检测方法的步骤。
[0030] 此外,为实现上述目的,本发明还提供一种定位检测系统,所述定位检测系统包括嵌入式设备、与所述嵌入式设备连接的摄像头以及机械手,其中,所述摄像头用于拍摄电容
图片,所述嵌入式设备用于识别所述电容图片中的电容位置,所述机械手根据所述电容位
置抓取电容。
[0031] 此外,为实现上述目的,本发明还提供一种电容定位检测方法,应用于如上所述的定位检测系统,所述电容检测定位的方法包括以下步骤:
[0032] 控制摄像头拍摄预设区域内的电容图片并发送所述电容图片;
[0033] 嵌入式设备接收所述电容图片并识别所述电容图片中的电容的位置信息;
[0034] 所述嵌入式设备将所述电容的位置信息发送给机械手;
[0035] 机械手根据所述电容的位置信息抓取电容。
[0036] 此外,为实现上述目的,本发明还提出一种介质,所述介质上存储有基于深度学习的电容定位检测处理程序,所述基于深度学习的电容定位检测处理程序被处理器执行时实
现如上所述的基于深度学习的电容定位检测方法的步骤。
[0037] 本发明实施例提出的一种基于深度学习的电容定位检测方法、服务器和可读计算机存储介质,本发明通过利用深度学习算法识别出电容关键点并将电容关键点划分到对应
的电容区域,提供了一种创新的方法,可以得到对电容位置信息的准确估计,从而基于电容
位置信息实现对电容的准确定位。

附图说明

[0038] 图1是本发明实施例方案涉及的服务器结构示意图;
[0039] 图2为本发明基于深度学习的电容定位检测方法第一实施例的流程示意图;
[0040] 图3为本发明基于深度学习的电容定位检测方法第一实施例中电容关键点示意图;
[0041] 图4为本发明基于深度学习的电容定位检测方法第一实施例中步骤S20细化步骤流示意图;
[0042] 图5为本发明基于深度学习的电容定位检测方法第一实施例中参考距离示意图;
[0043] 图6为本发明基于深度学习的电容定位检测方法第一实施例中欧式距离与参考距离比较示意图;
[0044] 图7为本发明基于深度学习的电容定位检测方法第二实施例的流程示意图;
[0045] 图8为本发明基于深度学习的电容定位检测方法第二实施例中的高斯概率分布图;
[0046] 图9为本发明基于深度学习的电容定位检测方法第三实施例的流程示意图;
[0047] 图10为本发明的检测系统结构示意图;
[0048] 图11为本发明的电容定位检测方法的步骤流程示意图。
[0049] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0050] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0051] 本发明实施例的主要解决方案是:将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚
点;将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区
域;根据所述电容区域进行电容定位检测。
[0052] 本发明通过利用深度学习算法识别出电容关键点并将电容关键点划分到对应的电容区域,提供了一种创新的方法,可以得到对电容位置信息的准确估计,从而基于电容位
置信息实现对电容的准确定位。
[0053] 如图1所示,图1是本发明实施例方案涉及的服务器的结构示意图。
[0054] 如图1所示,该服务器可以包括:处理器1001,例如CPU,通信总线1002,存储器1003。其中,通信总线1002用于实现这些组件之间的连接通信。存储器1003可以是高速RAM
存储器,也可以是稳定的存储器(non‑volatile memory),例如磁盘存储器。存储器1003可
选的还可以是独立于前述处理器1001的存储装置。
[0055] 本领域技术人员可以理解,图1中示出的服务器的结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0056] 如图1所示,作为一种计算机存储介质的存储器1003中可以包括操作系统和基于深度学习的电容关键点定位检测处理程序。
[0057] 在图1所示的装置中,处理器1001可以用于调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,并执行以下操作:
[0058] 将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚点;
[0059] 将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区域;
[0060] 根据所述电容区域进行电容定位检测。
[0061] 进一步地,处理器1001可以调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,还执行以下操作:
[0062] 计算各个所述电容关键点之间的欧式距离;
[0063] 根据所述欧式距离将所述电容关键点划分为多个关键点集合。
[0064] 进一步地,处理器1001可以调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,还执行以下操作:
[0065] 将所述四个主体角点、电容左管脚点以及电容右管脚点映射至六类关键点;
[0066] 将第一类关键点划分为多个关键点集合;
[0067] 针对第二类关键点至第六类关键点中的每一个待分配的关键点,根据下述步骤依次将所述第二类关键点至第六类关键点分配到所述关键点集合:
[0068] 遍历计算所述待分配关键点与所述关键点集合之间的欧式距离,将所述待分配关键点添加至目标关键点集合中,其中,所述待分配关键点与所述目标关键点集合之间的欧
式距离落入预设距离范围中。
[0069] 进一步地,处理器1001可以调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,还执行以下操作:
[0070] 将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率;
[0071] 获取所述预测高斯概率与标注的电容关键点的高斯概率的差值,其中,所述标注的电容关键点高斯概率根据所述电容训练图像数据处理得到;
[0072] 根据所述差值调整所述深度学习网络模型的参数。
[0073] 进一步地,处理器1001可以调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,还执行以下操作:
[0074] 将所述电容关键点的位置作为高斯分布的峰值位置;
[0075] 根据所述峰值位置得到所述电容关键点的预测高斯概率。
[0076] 进一步地,处理器1001可以调用存储器1003中存储的基于深度学习的电容关键点定位检测处理程序,还执行以下操作:
[0077] 识别所述电容训练图像中的电容主体中心点,并得到所述电容主体中心点的预测高斯概率;
[0078] 获取所述电容主体中心点的预测高斯概率与标注的电容主体中心点高斯概率的差值,其中,所述标注的电容主体中心点高斯概率根据所述电容训练图像数据处理得到;
[0079] 根据所述差值调整所述深度学习网络模型的参数。
[0080] 参照图2,本发明第一实施例提供一种基于深度学习的电容定位检测方法,所述方法包括:
[0081] 步骤S10,将电容图像输入深度学习网络模型,以识别出多个电容关键点,其中,所述电容关键点包括电容主体角点、电容左管脚点以及电容右管脚点;
[0082] 如图3所示,针对每个电容共定义了6个关键点:4个主体角点(图3中1~4),1个左管脚(图3中的5)以及1个右管脚(图3中的6)。
[0083] 步骤S20,将所述电容关键点划分为多个关键点集合,并获取各个所述关键点集合对应的电容区域;
[0084] 由于一张电容图片中往往包含了多个电容,从一张电容图片可以识别出多类电容关键点,即包含多个主体角点、多个左管脚点以及多个右管脚点。为了最终获得电容图片中
的每一个电容的定位信息,需要将上述多类电容关键点进行关键点集合的划分,即识别出
哪四个主体角点、哪个左管脚以及哪个右管脚属于一个电容,将属于同一个电容的四个主
体角点、左管脚以及右管脚划分到一个关键点集合。
[0085] 在本实施例中,通过计算各个电容关键点之间的欧式距离,根据欧式距离将识别出的电容关键点划分为多个关键点集合。如图4所示,具体步骤包括:
[0086] 步骤S201,将所述四个主体角点、电容左管脚点以及电容右管脚点映射至六类关键点;
[0087] 电容一般为矩形体,其主体角点为矩形体的四个角点。在本步骤中,不对映射的顺序进行限定,即可以将四个角点依次映射为第一类关键点、第二类关键点、第三类关键点至
第四类关键点,左管脚点映射为第五类关键点,右管脚点映射为第六类关键点,也可以先将
左管脚点和右管脚点分别映射为第一类关键点、第二类关键点,再将四个角点依次映射为
第三类至第六类关键点。需要说明的是,映射的顺序决定了候选步骤中计算关键点之间的
欧式距离的顺序。
[0088] 步骤S202,将第一类关键点划分为多个关键点集合;
[0089] 作为关键点集合划分的初始步骤,先将第一类关键点中的每一个关键点都作为一个关键点集合,即此时每个关键点集合中只包括一个第一类关键点。
[0090] 步骤S203,针对第二类关键点至第六类关键点中的每一个待分配的关键点,根据下述步骤依次将所述第二类关键点至第六类关键点分配到所述关键点集合:
[0091] 针对每一个待分配关键点,遍历计算所述待分配关键点与所述关键点集合之间的欧式距离,将所述待分配关键点添加至目标关键点集合中,其中,所述待分配关键点与所述
目标关键点集合之间的欧式距离落入预设距离范围中。
[0092] 在根据第一类关键点确定了初始的关键点集合后,需要依次将第二类关键点、第三类关键点、第四类关键点、第五类关键点以及第六类关键点添加到对应的关键点集合,即
最终每一个关键点集合都包含六个不同种类的关键点,这六个关键点是属于同一个电容
的。
[0093] 以四个角点(左上角点、左下角点、右上角点以及右下角点)依次映射为第一类至第四类关键点,左管脚点和右管脚点依次映射为第五类关键点和第六类关键点为例说明关
键点集合的添加过程:
[0094] 1、假设每类关键点的数目均为N,将第一类关键点即左上角点划分为N个关键点集合后,遍历计算每一个第二类关键点即左下角点与每一个左上角点之间的欧式距离,总共
得到N*N个欧式距离。即对于每一个仅包含一个左上角点的关键点集合,可以计算得到N个
与左下角点之间的欧式距离d12,将d12与预设的距离范围Len12进行比较,将处于预设的距
离范围Len12内的d12所关联的左下角点添加到该关键点集合。
[0095] 其中,预设的距离范围Len12通过下述方法计算得到:由于电容的体积是可以预先得知的,那么可以得到属于一个电容的六类关键点之间的距离参考值,例如图5所示,左上
角点与左下角点之间距离参考值为r12,左上角点与右上角点之间距离参考值为r13,左上
角点与右下角点之间距离参考值为r14,左上角点与左管脚点之间的距离参考值为r15,左
上角点与右管脚点之间的距离参考值为r16,左下角点与右下角点之间距离参考值为r24,
左下角点与右上角点之间的距离参考值为r23,右上角点与右下角点之间距离参考值为
r34,右上角点与左管脚点之间距离参考值为r35,右上角点与右管脚点之间距离参考值为
r36,左管脚点与右管脚点之间距离参考值为r56,左管脚点与左上角点之间距离参考值为
r15。考虑到测量和估计误差,可将表征左上角点与左下角点之间距离范围的Len12的值设
为[r12‑A,r12+A],其中,A为允许的误差值,基于理论推算并根据仿真得到。
[0096] 图6为一个简单的示例,图6中有两个电容,可以计算得到两个d12,通过将两个d12分别与预设距离范围r12比较,显然图中右边的d12是不在预设距离范围r12内的,左边的
d12在预设距离范围内。
[0097] 2、此时每个关键点集合中有两类关键点,即左上角点和左下角点。为了确定各个第三类关键点属于哪一个电容,即属于哪一个关键点集合,需要遍历计算各个第三类关键
点与各个关键点集合中的所有关键点之间的欧式距离,即对于每一个第三类关键点即右上
角点,得到N个右上角点与左上角点之间的欧式距离d13以及N个右上角点与左下角点之间
的欧式距离d23。类似地,基于预先知道的电容的体积可以得到的r13和r23,得到表征右上
角点与左上角点之间距离范围的Len13为[r13‑A,r13+A],表征右上角点与左下角点之间的
距离范围的Len23为[r23‑A,r23+A]。对于每一个右上角点,将其所所计算得到的N组d13、
d23分别与Len13、Len23进行比较,将d13处于Len13范围内并且d23处于Len23范围内的右上
角点添加到对应的关键点集合。
[0098] 3、此时每个关键点集合中有三类关键点,即左上角点、左下角点以及右上角点。对于剩下的第四类关键点(右下角点)、第五类关键点(左管脚点)以及第六类关键点(右管脚
点),采用与上述步骤2中类似的方法将其一一添加到对应的关键点集合。其中,添加右下角
点时,用于比较的距离范围包括:表征右下角点与左上角点之间距离范围的Len14为[r14‑
A,r14+A],表征右下角点与左下角点之间的距离范围的Len24为[r24‑A,r24+A],表征右下
角点与右上角点之间的距离范围的Len34为[r34‑A,r34+A];添加左管脚点时,用于比较的
距离范围包括:表征左管脚点与左上角点之间距离范围的Len15为[r15‑A,r15+A],表征左
管脚点与右上角点之间的距离范围的Len35为[r35‑A,r35+A];添加右管脚点时,用于比较
的距离范围包括:表征右管脚点与左上角点之间距离范围的Len16为[r16‑A,r16+A],表征
右管脚点与右上角点之间的距离范围的Len36为[r36‑A,r36+A],表征右管脚点与左管脚点
之间的距离范围的Len56为[r56‑A,r56+A]。
[0099] 需要说明的是,上述步骤仅是给出关键点集合添加的一种示例,添加过程中所用于比较的距离范围的个数以及具体数值并不进行限定,即对比较次序的改变以及对距离范
围的调整均属于同等变换的方案,均属于本专利的保护范围。
[0100] 在本步骤中得到的每一个电容关键点集合对应着一个电容区域,而每一个电容区域对应着一个电容。
[0101] 步骤S30,根据所述电容区域进行电容定位检测。
[0102] 当深度学习网络模型从电容图片中识别出电容关键点时,就获得了电容关键点所在的像素的坐标信息,在进一步将各个电容关键点一一划分至对应的关键点集合,即找到
属于同一个电容的一组电容关键点,此时可以根据每一组电容关键点所在的像素的坐标信
息得到对应的一个电容所在区域的像素的坐标信息,检测为完整电容坐标信息,则可以根
据完整电容坐标信息准确地定位电容的位置。
[0103] 在本实施例中,通过利用深度学习算法识别出电容关键点并将电容关键点划分到对应的电容区域,提供了一种创新的方法,可以得到对电容位置信息的准确估计,从而基于
电容位置信息实现对电容的准确定位。
[0104] 进一步的,参照图7,本发明第二实施例基于第一实施例提供一种基于深度学习的电容定位检测方法,本实施例在步骤S10之前还包括:
[0105] 步骤S40,将电容训练图像数据输入所述深度学习网络模型,以得到电容关键点的预测高斯概率;
[0106] 用于电容定位检测的深度学习网络模型构建所需的电容训练图像数据将在自然光下采集,采集的每张图片中电容的数目可多达上百个。为了检测更加精准,建议采集上万
张图片,这样可以提高模型的精准度,增加模型的泛化能力。在电容图片中,每个电容呈现
了4种不同的姿势,即:引脚朝上、引脚朝下、引脚平躺以及引脚倾斜。
[0107] 因为对于平躺姿势的电容,能够看到整个电容的形状,更加直观,简单。所以本专利主要针对平躺姿势的电容进行识别与检测,通过构建深度学习网络模型得到准确的电容
关键点定位检测模型。
[0108] 基于采集的电容训练图像,首先使用数据标注工具将图(1)(c)中所采集到的数据进行加载,其次利用鼠标人为地对图片上的6个关键点(即4个主体角点、1个左管脚、1个右
管脚)进行标注。6个关键点会随之自动生成相应的坐标值(x,y),而另一个关键点,即主体
中心点将通过其他关键点的位置自动计算并生成其坐标值。
[0109] 在本步骤中,将电容训练图像数据输入所述深度学习网络模型,可以预测得到电容训练图像中的电容对应多类关键点的位置,其中,电容关键点包括电容四个主体角点、电
容左管脚点以及电容右管脚点。
[0110] 对于上述每一类电容关键点,可以将该电容关键点的位置作为高斯分布的峰值位置,根据峰值位置得到该电容关键点的高斯概率。具体为,将电容关键点位置所在的坐标值
对应着高斯分布最大的概率值,以电容关键点位置坐标为圆心向外延伸,在延伸方向上的
位置所在的坐标值所对应的高斯分布的概率值不断下降,直至趋近于高斯分布的两个边缘
概率值。如图8所示,越深代表高斯分布的峰值位置,颜色越淡越趋近于高斯分布的两个边
缘。
[0111] 步骤S50,获取所述预测高斯概率与标注的电容关键点的高斯概率的差值,其中,所述标注的电容关键点高斯概率根据所述电容训练图像数据处理得到;
[0112] 在本步骤中,根据预测高斯概率与标注的电容关键点的高斯概率构建代价函数,如下式所示:
[0113]
[0114] 其中,Ft为t训练阶段的代价函数,p代表着第p类电容关键点,z代表着电容图像上的像素坐标,Z代表着整个图像平面, 代表t训练阶段第p类电容关键点在图像坐标z
处的概率,为深度学习模型预测处的高斯概率值, 代表t训练阶段第p类电容关键点
在图像坐标z处的标注高斯概率值,标注的高斯概率根据电容训练图像数据处理得到,具体
地,可以将电容关键点的位置作为高斯分布的峰值位置,根据峰值位置得到电容关键点的
预测高斯概率。
[0115] 需要说明的是,可以有多个训练阶段,即上述t的取值可以大于等于1。
[0116] 步骤S60,根据所述差值调整所述深度学习网络模型的参数。
[0117] 在本实施例中,通过将电容关键点的位置作为高斯分布的峰值位置,根据该峰值位置构造代价函数,得以在训练过程中得到深度学习网络模型的最优参数,以采用该深度
学习网络模型从电容图像中对电容进行准确高效的定位。
[0118] 进一步的,参照图9,本发明第三实施例基于第二实施例提供一种基于深度学习的电容定位检测方法,本实施例在步骤S60之后还包括:
[0119] 步骤S70,识别所述电容训练图像中的电容主体中心点,并得到所述电容主体中心点的预测高斯概率;
[0120] 在本步骤中,将电容训练图像输入经过训练的深度学习网络模型,在识别出包含四个主体角点、左管脚点以及右管脚点的六类电容关键点之外,还额外识别出电容主体中
心点。类似地,将电容主体中心点的位置作为高斯分布的峰值位置,根据峰值位置得到电容
主体中心点的高斯概率,即电容主体中心点的预测高斯概率。
[0121] 步骤S80,获取所述电容主体中心点的预测高斯概率与标注的电容主体中心点高斯概率的差值,其中,所述标注的电容主体中心点高斯概率根据所述电容训练图像数据处
理得到;
[0122] 在获得了电容主体中心点的预测高斯概率后,可以计算得到预测高斯概率与标注的电容中心点的高斯概率之间的差值。
[0123] 步骤S90,根据所述差值调整所述深度学习网络模型的参数。
[0124] 根据上个步骤得到的预测高斯概率与标注的电容中心点的高斯概率之间的差值后,可以根据该差值构造深度学习网络模型的代价函数,然后运用后向传播算法调整深度
学习网络模型的参数。
[0125] 在本实施例中,通过在训练过程中增加对电容主体中心点的预测,可以进一步提高深度学习网络模型识别电容关键点的准确率。
[0126] 本发明还提供一种服务器,所述服务器包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于深度学习的电容定位检测处理程序,所述基于深度学习
的电容定位检测处理程序被所述处理器执行时实现所述的基于深度学习的电容定位检测
方法的步骤。
[0127] 如图10所示,本发明还提供一种检测系统,所述检测系统包括嵌入式设备20、与所述嵌入式设备连接的摄像头10以及机械手30,其中,所述摄像头10用于拍摄电容图片,所述
嵌入式设备20用于识别所述电容图片中的电容位置,所述机械手30根据所述电容位置抓取
电容。嵌入式设备、摄像头以及机械手之间均以有线或无线的方式进行网络通信的连接。
[0128] 在检测系统所采用的嵌入式设备计算资源比较充足时,可以直接在嵌入式设备中训练深度学习网络模型。在检测系统所采用的嵌入式设备的计算资源较为有限时,例如采
用的嵌入式设备为Nvidia Jetson TK1,Jetson TK1是Nvidia的一款嵌入式Linux开发平
台,采用了Tegra K1 SOC(单芯片CPU+GPU+ISP),该设备的内存(2GB)与计算资源非常有限,
本专利所构建的检测系统中的深度学习网络模型将在上述服务器上进行训练,而电容定位
检测处理软件将会部署在嵌入式设备Jetson TK1上。
[0129] 进一步地,在嵌入式设备的内存资源有限,不能加载整个检测模型时,如果要将训练好的检测模型移植于嵌入式设备上,有限的内存资源与计算资源使得移植工作面临了巨
大的挑战(诸如无法处理原始的高分辨率图像)。为了能够应对上述挑战,可以采用一些措
施来减少测试和应用对嵌入式设备内存的需求。例如采用SVD(奇异值分解)压缩全连接层
参数,该方法同样可以减少检测模型对嵌入式设备的内存需求;或者缩小输入图像的尺寸
以便用于模型微调与测试。
[0130] 需要说明的是,为了训练更好的参数,在深度学习网络模型训练时可以采用多阶段的训练方式,此时对显存与计算资源消耗大,但是由于训练任务运行于服务器上,完全可
以满足资源的需求。
[0131] 本发明还提供一种电容定位检测方法,应用于如上所述的检测系统,如图11,所述电容检测定位的方法包括以下步骤:
[0132] 步骤S100,控制摄像头拍摄预设区域内的电容图片并发送所述电容图片;
[0133] 在本步骤中,预设区域是指待定位抓取的电容所在的区域。例如,本专利的应用场景可以是使用在生产线上,例如机械手将电容抓取了之后插在电路板上,从而减少人力成
本。此时,预设区域为生产线上放置电容的区域。
[0134] 步骤S110,嵌入式设备接收所述电容图片并识别所述电容图片中的电容的位置信息;
[0135] 嵌入式设备上的电容定位检测处理软件从电容图片中识别出电容关键点,再根据电容关键点进行电容关键点集合的划分以及电容区域的映射,最终可以得到电容图片中各
个电容的二维坐标位置信息。
[0136] 步骤S120,所述嵌入式设备将所述电容的位置信息发送给机械手;
[0137] 在本步骤中,嵌入式设备将电容关键点二维坐标位置信息转换为机械手臂所使用的三维坐标,以实现机械手臂对电容的抓取。
[0138] 步骤S130,机械手根据所述电容的位置信息抓取电容。
[0139] 通过在检测系统中部署本发明所提供的电容定位检测方法,在应用于产线上的机械手抓取电容时,可以极大的的提高生产线的生产效率。
[0140] 此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有基于深度学习的电容定位检测处理程序,所述基于深度学习的电容定位检测处理
程序被处理器执行时实现所述的基于深度学习的电容定位检测方法的步骤。
[0141] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而
且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有
的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该
要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0142] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0143] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下
前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做
出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个
存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,
计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0144] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技
术领域,均同理包括在本发明的专利保护范围内。