CN113705643A - 一种目标物检测方法、装置以及电子设备 - Google Patents
一种目标物检测方法、装置以及电子设备 Download PDFInfo
- Publication number
- CN113705643A CN113705643A CN202110944044.XA CN202110944044A CN113705643A CN 113705643 A CN113705643 A CN 113705643A CN 202110944044 A CN202110944044 A CN 202110944044A CN 113705643 A CN113705643 A CN 113705643A
- Authority
- CN
- China
- Prior art keywords
- matrix
- detection
- category
- detection frame
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
提供了一种目标物检测方法、装置以及电子设备,该方法通过不同尺寸的检测框遍历图像,其中,图像包括目标物以及背景,提取每个检测框中的图像特征,利用分类模型判断每个检测框中是否存在目标物,得到目标物所属类别及类别概率,并对识别到同一个目标物的多个检测框进行删除,使一个目标物只被一个检测框检测到,进而根据最终保留的检测框,在图像中确定目标物的位置及类别。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种目标物检测方法、装置以及电子设备。
背景技术
图像识别技术是信息时代的一门重要的技术,通过图像识别技术可以实现自动驾驶、指纹识别以及人脸识别等功能。其中,图像由目标物以及除目标物外的背景组成,图像识别技术就是从图像中识别出目标物的位置以及类别,进而实现上述功能。如果识别图像中目标物的位置不准确,会影响后续功能的实现。例如,在自动驾驶领域,对车载摄像头获取到的图像信息进行图像识别,如果对图像中障碍物位置的识别不准确,则会影响车辆的行驶。
因此,如何准确且有效地从图像中识别出目标物的位置,是亟待解决的问题。
发明内容
本申请的目的在于提供一种目标物检测方法、装置以及电子设备。电子设备可通过不同尺寸的检测框遍历图像,得到识别到目标物的检测框,并在识别到同一个目标物的多个检测框中删除多余的检测框。这样,通过最终保留的目标检测框,就可以在图像中确定目标物的位置及类别。
上述目标和其他目标将通过独立权利要求中的特征来达成。进一步的实现方式在从属权利要求、说明书和附图中体现。
第一方面,提供了一种目标物检测方法,包括:获取第一图像,第一图像中包括一个或多个目标物;基于第一图像生成N个检测框,确定各检测框的位置信息、各检测框的类别以及类别概率;其中,检测框的类别为检测框中目标物在多个类别中所属的一个类别,检测框的类别概率为检测框属于该类别的概率;根据各检测框的类别,得到类别矩阵,类别矩阵中的值用于表示N个检测框中每两个检测框之间类别是否相同;根据各检测框的位置信息,得到第一矩阵,第一矩阵中的值用于表示N个检测框中每两个检测框之间的重合程度;根据类别矩阵、第一矩阵以及重合程度阈值,得到目标矩阵;目标矩阵中的值用于表示相同类别的各个检测框之间的重合程度与重合程度阈值的比较结果;比较结果包括第一结果和第二结果;第一结果为重合程度小于重合程度阈值,第二结果为重合程度不小于重合程度阈值;根据目标矩阵,从N个检测框中确定H个目标检测框;H个目标检测框中任一个目标检测框与比目标检测框的类别概率大的每个检测框的比较结果为第一结果;H小于N;根据目标检测框,确定第一图像中一个或多个目标物的位置信息和类别。
实施第一方面提供的方法,电子设备可以根据多个检测框的类别,确定识别到相同类别的目标物的检测框,然后电子设备再根据类别概率和重合程度,在同类别的检测框中,确定与比自身类别概率高的检测框重合程度不高的检测框为目标检测框,进而在识别到同一个目标物的多个检测框中确定目标检测框,用目标检测框表示该目标物的位置与类别更精确。
结合第一方面,在一种可能的实现方式中,根据所述各检测框的位置信息,得到第一矩阵,第一矩阵中的值用于表示所述N个检测框中每两个检测框之间的重合程度,具体包括:根据各检测框的位置信息,得到N个检测框中每两个检测框之间的交集与并集,其中,各检测框的位置信息是根据第一图像建立的坐标系以及各检测框在第一图像中的位置得到的;根据每两个检测框之间的交集与并集的比值得到每两个检测框之间的重合程度;根据每两个检测框之间的重合程度,得到第一矩阵。
实施上述实现方式,电子设备在计算检测框之间的重合程度时,是通过计算两个检测框之间的交集与并集的比值得到的。检测框之间的交并比越大,则说明这两个检测框之间的重合程度高;如果检测框之间交并比越小,则说明这两个检测框之间重合程度低。
结合第一方面,在一种可能的实现方式中,根据类别矩阵、第一矩阵以及重合程度阈值,得到目标矩阵,具体包括:根据类别矩阵与第一矩阵,得到第二矩阵,第二矩阵中的值用于表示相同类别的各个检测框之间的重合程度;根据第二矩阵与所述重合程度阈值,得到目标矩阵。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵后还将生成第二矩阵,第二矩阵可以表示相同类别的各个检测框之间的重合程度,进而可以将不同类别的检测框分开比较,可以防止不同类别的检测框因为相隔太近而被删除的情况。并且,相比于第一矩阵,第二矩阵中数据更少,提高了计算效率。
结合第一方面,在一种可能的实现方式中,类别矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;第一矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间的重合程度。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从大到小排序的结果生成的。
结合第一方面,在一种可能的实现方式中,在根据各检测框的类别,得到类别矩阵之后,该方法还包括:根据类别矩阵得到类别上三角矩阵,类别上三角矩阵为类别矩阵的不包括对角线的值的上三角矩阵。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从大到小排序的结果生成的情况下,类别矩阵需要取上三角矩阵,使得类别上三角矩阵中只包含检测框与比自身类别概率大的检测框之间类别是否相同的结果,并且两个检测框之间类别相同的结果只会保留一个,减少了数据量。
结合第一方面,在一种可能的实现方式中,在根据各检测框的位置信息,得到第一矩阵之后,该方法还包括:根据第一矩阵得到第一上三角矩阵,第一上三角矩阵为第一矩阵的不包括对角线的值的上三角矩阵。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从大到小排序的结果生成的情况下,第一矩阵需要取上三角矩阵。由于任一两个检测框之间的交并比,会在第一矩阵中被记录两次,例如,检测框1和检测框2的交并比,和检测框2与检测框1的交并比表示同一个值。将第一矩阵取上三角后,使得第一上三角矩阵中只包含检测框与比自身类别概率大的检测框之间的重合程度,例如,检测框1的类别概率比检测框2类别概率大,则只会保留检测框2所在列中和检测框1的交并比,而不会保留检测框1所在列中和检测框2的交并比。并且,在一些实现方式中,类别矩阵和第一矩阵可以任意一个矩阵取上三角矩阵即可。
结合第一方面,在一种可能的实现方式中,该方法还包括:当N个检测框中两个检测框之间类别相同时,两个检测框对应在类别矩阵中的值为1;当N个检测框中两个检测框之间类别不同时,两个检测框对应在类别矩阵中的值为0;第一结果在所述目标矩阵中的值为0;第二结果在所述目标矩阵中的值为1。
实施上述实现方式,电子设备在生成类别矩阵时,可以用1和0分别表示检测框之间类别相同与类别不相同;在生成目标矩阵时,可以用1表示检测框之间重合度大于阈值,0表示检测框之间重合度小于阈值。在一些实现方式中,也还可以用任意实数表示检测框之间类别相同,用另一实数表示检测框之间重合度大于阈值。这样,通过目标矩阵可以判断出哪些同类别的检测框之间重合程度较高。
结合第一方面,在一种可能的实现方式中,根据所述目标矩阵,从N个检测框中确定H个目标检测框,具体包括:根据目标矩阵,从N个检测框中确定需要删除的检测框,需要删除的检测框在所述目标矩阵中对应的列的所有值的和不为0;确定N个检测框中除需要删除的检测框外的H个检测框为目标检测框。
实施上述实现方式,电子设备在根据目标矩阵确定需要删除的检测框时,如果检测框存在与比自身类别概率大的检测框的重合程度大于阈值的情况,则该检测框需要删除。进而,使得识别到同一个目标物的检测框被删除,最终用目标检测框来表示图像中的目标物,使同一个目标物只被标注一次,得到的目标物的位置更精确。
结合第一方面,在一种可能的实现方式中,类别矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;第一矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间的重合程度。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从小到大排序的结果生成的。
结合第一方面,在一种可能的实现方式中,在根据各检测框的类别,得到类别矩阵之后,该方法还包括:根据类别矩阵得到类别下三角矩阵,类别下三角矩阵为类别矩阵的不包括对角线的值的下三角矩阵。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从小到大排序的结果生成的情况下,类别矩阵需要取下三角矩阵。进而,使得类别下三角矩阵中只包含检测框与比自身类别概率大的检测框之间类别是否相同的结果,并且两个检测框之间类别相同的结果只会保留一个,减少了数据量。
结合第一方面,在一种可能的实现方式中,在根据各检测框的位置信息,得到第一矩阵之后,该方法还包括:根据第一矩阵得到第一下三角矩阵,第一下三角矩阵为第一矩阵的不包括对角线的值的下三角矩阵。
实施上述实现方式,电子设备在生成类别矩阵和第一矩阵时,是按检测框类别概率从小到大排序的结果生成的情况下,第一矩阵需要取下三角矩阵,进而,使得第一下三角矩阵中只包含检测框与比自身类别概率大的检测框之间的重合程度。且类别矩阵和第一矩阵可以任意一个矩阵取下三角矩阵。
结合第一方面,在一种可能的实现方式中,该方法还包括:当N个检测框中两个检测框之间类别相同时,两个检测框对应在类别矩阵中的值为1;当N个检测框中两个检测框之间类别不同时,两个检测框对应在类别矩阵中的值为0;第一结果在所述目标矩阵中的值为0;第二结果在所述目标矩阵中的值为1。
实施上述实现方式,电子设备在生成类别矩阵时,可以用1和0分别表示检测框之间类别相同与类别不相同;在生成目标矩阵时,可以用1表示检测框之间重合度大于阈值,0表示检测框之间重合度小于阈值。在一些实现方式中,也还可以用任意实数表示检测框之间类别相同,用另一实数表示检测框之间重合度大于阈值。这样,通过目标矩阵可以判断出哪些同类别的检测框之间重合程度较高。
结合第一方面,在一种可能的实现方式中,根据所述目标矩阵,从N个检测框中确定H个目标检测框,具体包括:根据目标矩阵,从N个检测框中确定需要删除的检测框,需要删除的检测框在所述目标矩阵中对应的行的所有值的和不为0;确定N个检测框中除需要删除的检测框外的H个检测框为目标检测框。
实施上述实现方式,电子设备在根据目标矩阵确定需要删除的检测框时,如果检测框存在与比自身类别概率大的检测框的重合程度大于阈值的情况,则该检测框需要删除。进而,使得识别到同一个目标物的检测框被删除,最终用目标检测框来表示图像中的目标物,使同一个目标物只被标注一次,得到的目标物的位置更精确。
第二方面,提供了一种目标物检测装置,包括:获取单元、生成单元以及确定单元:获取单元用于获取第一图像,第一图像中包括一个或多个目标物;生成单元用于基于第一图像生成N个检测框,确定各检测框的位置信息、各检测框的类别以及类别概率;其中,检测框的类别为检测框中目标物在多个类别中所属的一个类别,检测框的类别概率为检测框属于该类别的概率;生成单元还用于根据各检测框的类别,得到类别矩阵,类别矩阵中的值用于表示多个检测框中每两个检测框之间类别是否相同;生成单元还用于根据各检测框的位置信息,得到第一矩阵,第一矩阵中的值用于表示多个检测框中每两个检测框之间的重合程度;生成单元还用于根据类别矩阵、所述第一矩阵以及重合程度阈值,得到目标矩阵;目标矩阵中的值用于表示相同类别的各个检测框之间的重合程度与所述重合程度阈值的比较结果;比较结果包括第一结果和第二结果;第一结果为重合程度小于所述重合程度阈值,第二结果为重合程度不小于重合程度阈值;确定单元用于根据目标矩阵,从N个检测框中确定H个目标检测框;H个目标检测框中任一个目标检测框与比目标检测框的类别概率大的每个检测框的比较结果为第一结果;H小于N;确定单元还用于根据目标检测框,确定第一图像中一个或多个目标物的位置信息和类别。
结合第二方面,在一种可能的实现方式中,根据所述各检测框的位置信息,得到第一矩阵,第一矩阵中的值用于表示所述N个检测框中每两个检测框之间的重合程度,具体包括:根据各检测框的位置信息,得到N个检测框中每两个检测框之间的交集与并集,其中,各检测框的位置信息是根据第一图像建立的坐标系以及各检测框在第一图像中的位置得到的;根据每两个检测框之间的交集与并集的比值得到每两个检测框之间的重合程度;根据每两个检测框之间的重合程度,得到第一矩阵。
结合第二方面,在一种可能的实现方式中,根据类别矩阵、第一矩阵以及重合程度阈值,得到目标矩阵,具体包括:根据类别矩阵与第一矩阵,得到第二矩阵,第二矩阵中的值用于表示相同类别的各个检测框之间的重合程度;根据第二矩阵与所述重合程度阈值,得到目标矩阵。
结合第二方面,在一种可能的实现方式中,类别矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;第一矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间的重合程度。
结合第二方面,在一种可能的实现方式中,在根据各检测框的类别,得到类别矩阵之后,该方法还包括:根据类别矩阵得到类别上三角矩阵,类别上三角矩阵为类别矩阵的不包括对角线的值的上三角矩阵。
结合第二方面,在一种可能的实现方式中,在根据各检测框的位置信息,得到第一矩阵之后,该方法还包括:根据第一矩阵得到第一上三角矩阵,第一上三角矩阵为第一矩阵的不包括对角线的值的上三角矩阵。
结合第二方面,在一种可能的实现方式中,该方法还包括:当N个检测框中两个检测框之间类别相同时,两个检测框对应在类别矩阵中的值为1;当N个检测框中两个检测框之间类别不同时,两个检测框对应在类别矩阵中的值为0;第一结果在所述目标矩阵中的值为0;第二结果在所述目标矩阵中的值为1。
结合第二方面,在一种可能的实现方式中,根据所述目标矩阵,从N个检测框中确定H个目标检测框,具体包括:根据目标矩阵,从N个检测框中确定需要删除的检测框,需要删除的检测框在所述目标矩阵中对应的列的所有值的和不为0;确定N个检测框中除需要删除的检测框外的H个检测框为目标检测框。
结合第二方面,在一种可能的实现方式中,类别矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;第一矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间的重合程度。
结合第二方面,在一种可能的实现方式中,在根据各检测框的类别,得到类别矩阵之后,该方法还包括:根据类别矩阵得到类别下三角矩阵,类别下三角矩阵为类别矩阵的不包括对角线的值的下三角矩阵。
结合第二方面,在一种可能的实现方式中,在根据各检测框的位置信息,得到第一矩阵之后,该方法还包括:根据第一矩阵得到第一下三角矩阵,第一下三角矩阵为第一矩阵的不包括对角线的值的下三角矩阵。
结合第二方面,在一种可能的实现方式中,该方法还包括:当N个检测框中两个检测框之间类别相同时,两个检测框对应在类别矩阵中的值为1;当N个检测框中两个检测框之间类别不同时,两个检测框对应在类别矩阵中的值为0;第一结果在所述目标矩阵中的值为0;第二结果在所述目标矩阵中的值为1。
结合第二方面,在一种可能的实现方式中,根据所述目标矩阵,从N个检测框中确定H个目标检测框,具体包括:根据目标矩阵,从N个检测框中确定需要删除的检测框,需要删除的检测框在所述目标矩阵中对应的列的所有值的和不为0;确定N个检测框中除需要删除的检测框外的H个检测框为目标检测框。
第三方面,提供了一种电子设备,所述电子设备包括:一个或多个处理器和存储器;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,提供了一种包含指令的计算机程序产品,其特征在于,当上述计算机程序产品在电子设备上运行时,使得上述电子设备执行第一方面或第一方面的任意可能的实现方式中的方法。
第五方面,提供一种计算机可读存储介质,包括指令,其特征在于,当上述指令在电子设备上运行时,使得上述电子设备执行第一方面或第一方面的任意可能的实现方式中的方法。
可以理解地,上述第二方面提供的目标物检测装置、第三方面提供的电子设备、第四方面提供的计算机程序产品、第五方面提供的计算机存储介质均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1A-图1C是本申请实施例提供的目标物检测方法的应用场景示意图;
图2是本申请实施例提供的一种目标物检测方法的流程示意图;
图3A-图3G是本申请实施例提供的一种自动驾驶领域的目标物检测方法的示意图;
图4是本申请实施例提供的一种目标检测框生成方法的流程示意图;
图5是本申请实施例提供的一种检测框交并比计算方式的示意图;
图6是本申请实施例提供的目标检测框生成方法在一种实施例下的流程示意图;
图7A-图7B是本申请实施例提供的一种包含多个相同类别的目标物的图像示意图;
图8是本申请实施例提供的目标检测框生成方法在另一种实施例下的流程示意图;
图9为本申请实施例提供的一种目标物检测装置的结构示意图;
图10为本申请实施例提供的一种电子设备的结构示意图;
图11为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。术语“中间”、“左”、“右”、“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
图像识别技术是信息时代的一门重要的技术,其产生目的是让电子设备代替人类去处理大量的图像信息。图像识别技术在众多领域中得到了应用,例如自动驾驶领域的行人及车辆识别;公共安全领域的人脸识别、指纹识别;农业领域的种子识别、食品品质检测;医学领域的心电图识别等。图像包括目标物以及除目标物外的背景,而图像识别技术中最关键的步骤在于电子设备如何从图像中找出目标物,确定目标物的位置并识别出该目标物的类别,进而利用图像中目标物的位置与类别实现上述应用功能。如果识别图像中目标物的位置不准确,会影响后续功能的实现。
例如,图像识别技术应用于自动驾驶领域时,如图1A所示,电子设备通过车载摄像头可以获取到车辆周围的环境图像,通过图像识别技术可以识别到图1A中在box101、box102以及box103范围内存在目标物,且box101处目标物类别为“人”,box102处目标物类别为“车”以及box103处目标物类别为“狗”,除目标物外的图像均为背景。电子设备通过图像识别的结果结合车载雷达或其余车辆传感器的数据,控制车辆行驶,使车辆与box102处车辆保持间距,同时在经过box101处与box103处时减速。如果识别图1A时,未能准确地在图像中识别到box102处的车辆,不控制车辆行驶速度,可能会产生安全事故。
再比如,图像识别技术应用于人脸识别领域时,如图1B所示,电子设备通过摄像头可以获取到包含人脸的图像,该摄像头可以是手机、笔记本等终端上的摄像头,也可以是打卡机、门禁系统等的摄像头。电子设备通过图像识别技术可以从图1B中识别到box104范围内为人脸,除人脸之外的其余图像为背景。将box104范围内提取到的人脸的脸部特征,与数据库中存储的人脸信息进行比对,检索该人脸对应的用户信息,并输出检索到的结果。
在一些实施例中,电子设备在识别到box104处为人脸后,还将进一步识别人脸的局部特征,如图1C所示,识别到box105范围内为眉毛,box106范围内为眼睛,box107范围内为鼻子,box108范围内为嘴巴,获取上述各个范围内的特征,与数据库中存储的人脸的局部特征进行比对,综合各个局部特征的比对结果,得到最终检索到的用户信息,并输出检索到的结果。如果识别图1C时,未能识别到某一局部特征,例如,没有能识别到眼睛所在范围,则在综合各个局部特征的比对结果时,因为少了一个局部特征,识别得到的结果精确度将会下降,甚至根据识别结果检索出错误的用户信息,可能会导致用户无法通过面部解锁手机,或者用户无法打卡、打开门禁等,进而影响用户的正常使用。
为了使电子设备能更精确地在图像中确定目标物的位置与类别,本方案提供了一种目标物检测方法,包括,目标物定位与目标物分类两个过程。其中,目标物定位指使用若干不同尺寸的检测框遍历图片,目标物分类指提取每个检测框中的图像特征,通过图像特征依次判断每个检测框中是否存在目标物,并确定目标物的类别,进而得到图片中所有目标物的位置以及类别。
下面结合图2以及图3A-图3G对本申请实施例提供的目标物检测方法的过程进行详细介绍。图2为本申请实施例提供的目标物检测方法的流程示意图。图3A示例性的给出了在自动驾驶领域,摄像头获取到的一种图像,其中,该图像包括“人”、“狗”和“车”三个目标物,以及其余背景图像。如图3A-图3G所示,图3A-图3G为电子设备通过图像识别,在摄像头获取到的图像中识别出目标物以及确定目标物位置与类别的过程示意图,使得车辆可根据电子设备识别后的结果结合导航仪规划车辆行驶路径。如图2所示,本申请实施例提供的方法可以包括:
S210、电子设备获取图像,并在图像中生成多个检测框。
电子设备通过摄像头等数据采集设备获取图像,在图像中以固定步长设置锚点(anchor),并在每个锚点处生成多个检测框,其中,检测框是以锚点为中心生成的,每个锚点处的多个检测框的尺寸大小都不相同。锚点的固定步长以及检测框的尺寸可以根据图片的尺寸大小以及实际应用场景进行设定。
例如,针对640*480(dpi)图像,可设置步长为16dpi,每个锚点处生成的检测框的基础尺寸为16dpi,32dpi,64dpi,长宽比可选取为0.5,1,2。即根据基础尺寸16dpi,长宽比为0.5,可以得到一个检测框尺寸为8*16(dpi),以此类推,每个锚点处根据上述3种基础尺寸以及3中长宽比,可以生成:8*16(dpi),16*16(dpi),16*8(dpi);16*32(dpi),32*32(dpi),32*16(dpi);32*64(dpi),64*64(dpi),64*32(dpi),共9种不同尺寸的检测框。
应理解,图像中目标物的大小与位置都是未知的,为了使检测框能覆盖到图像中所有的目标物,且检测框中除目标物的背景面积能较小,防止出现检测框选中多个目标物,或者检测框只框选到目标物的一部分,则需要根据图像大小以及应用场景,设定合适的检测框大小,锚点的固定步长设置也可以较小以及每个锚点检测框的尺寸可以较多。
例如,如图3B所示,以检测框box301和检测框box302所示的检测框大小为例,虽然检测框B301框选到了目标物,但是框选到了两个目标物,使检测框box301中的包含两个目标物的特征信息,会影响后续分类的结果,且检测框box301中除了目标物外的背景占检测框box301的面积太大,得出的目标物的位置不够精确。然而,检测框box302又太小,只能框选到目标物的一部分,无法获取到完整的目标物的特征,也会影响目标物分类的结果。
参考图3A所示的图像。电子设备获取到如图3A所示的图像后,如图3C所示,以宽度距离为B,高度距离为W在图中设置了U个锚点,其中,W,B为正数,U为正整数。基于这U个锚点,以每个锚点为中心生成了R个检测框,R为正整数,则可得到在图像不同位置的V个检测框,应理解,V=U*R。示例性地,如图3D所示,图3D以锚点A为例,以锚点A为中心生成了3个检测框:检测框A1、检测框A2以及检测框A3,其中,检测框A1、检测框A2以及检测框A3的形状大小均不相同。
检测框的位置可用下述公式(1)表示:
S220、电子设备提取每个检测框中的图像特征。
电子设备在图像生成多个检测框后,将提取每个检测框中的图像特征,图像特征用于反映图像中物体的颜色特征、纹理特征、形状特征和空间关系特征等等。应理解,针对具体的应用场景,电子设备可以通过不同算法提取图像不同种类的特征,在一些实施例中,电子设备提取的图像特征还可以是多种图像特征的组合。本方案对电子设备提取的图像特征类型不作具体限定。
同样以图3A示出的图像为例进行说明。为了识别图3A中的目标物,电子设备将获取每个检测框中图像的方向梯度直方图(Histogram of Oriented Gradient,HOG)特征,HOG特征是指将检测框中的图像灰度化后,把图像分割为若干个由多个像素组成的单元,然后采集每个单元内像素点的光强梯度或者边缘的方向直方图得到的,进而HOG特征可以通过光强梯度或边缘方向的方向直方图表示图像中物体的外形。
在一些实施例中,还需要对图3A进行人脸识别,为了获取人脸结构特征,电子设备还可以提取哈尔特征(Haar-like features,简称Harr特征),Haar特征可以体现人脸的灰度变化情况,进而反映出人脸的结构特征。例如:脸部的一些特征能由灰度变化情况进行描述,如:眼睛要比脸颊颜色要深,鼻梁两侧比鼻梁颜色要深,嘴巴比周围颜色要深等。
在另一些实施例中,还可以通过局部二值模式(Local Binary Pattern,LBP)特征得到图像的纹理特征,LBP特征是通过将图像划分为不同区域,比较区域内中心像素点的灰度值与其余像素点的灰度值得到的。其中,若其余像素点的灰度值大于中心像素点的灰度值,则该像素点的位置被标记为1,否则为0。这样,可以用区域内的像素点通过比较后的结果,组成的二进制值来表示这个区域,LBP特征即是通过这些二进制值转化为十进制值得到的,并用这个值来反映该区域的纹理信息。
S230、电子设备根据每个检测框中的图像特征对每个检测框中的图像进行识别,得到包含目标物的检测框以及目标物的类别和类别概率。
电子设备得到每个检测框的图像特征后,将利用分类模型根据检测框的图像特征,得到检测框中图像属于各个类别的概率,电子设备将各个类别的概率与阈值δ进行比较,确定检测框中是否包含目标物,以及目标物所属类别class和类别概率score,进而从多个检测框中确定出包含目标物的检测框。
下面对本步骤涉及到的分类模型进行详细介绍。
分类模型可以根据输入图像的图像特征识别出检测框中的图像属于各个类别的概率。常见的分类模型有支持向量机(Support Vector Machine,SVM)模型、决策树模型以及贝叶斯模型等等。分类模型是通过大量带标签的图像对待训练的分类模型进行训练得到的,其中,标签用于表示图像中物体的类别。训练分类模型的过程,具体包括:将已标注图像类别的图像集作为样本集输入待训练的分类模型,待训练的分类模型将识别样本的图像类别并输出,把分类模型的输出的类别识别结果与样本的标签进行对比,并根据对比结果不断调整分类模型的结构参数,直到分类模型输出的识别结果与标签对比的结果达到一定正确率阈值,则可得到训练好的分类模型。
例如,将大量标注类别为“车”、“行人”和“狗”的图像作为样本输入到待训练的分类模型中,待训练的分类模型通过对样本的识别并不断调整内部结构参数,得到训练好的模型。在使用该分类模型时,若输入“车”的图像,分类模型即可得到该图像属于“车”这一类别的概率、属于“人”这一类别的概率以及属于“狗”这一类别的概率,其中,图像属于“车”的概率是最大的。
下面对电子设备将各个类别的概率与阈值进行比较,确定检测框中是否包含目标物,以及目标物所属类别和类别概率进行详细介绍。
电子设备利用分类模型得到每个检测框中图像属于各个类别的概率,检测框boxa的属于各个类别的概率,可用下述公式(2)表示:
sboxa=[sa,1,sa,2,…,sa,C] (2)
其中,C表示类别个数,C为正整数。sa,1表示检测框boxa属于类别1的概率,sa,2表示检测框boxa属于类别2的概率,以此类推。
针对每个检测框,电子设备将把检测框boxa中图像属于各个类别的概率sboxa与阈值δ进行比较,其中,如果存在大于阈值δ的概率,则说明该检测框中存在目标物,且该大于阈值的概率对应的类别即为目标物的类别,该概率即为目标物的类别概率;如果检测框中的图像属于各个类别的概率,都没有大于阈值的,则说明该检测框中的图像不属于任何类别,即不包含目标物,只包含背景。应理解,训练好的分类模型最终得到的目标物的类别是唯一的,也即是说,最多存在一个大于阈值的概率。
最终可从V个检测框中确定包含目标物的N个检测框,该N个检测框都存在属于某一类别的概率大于阈值,该大于阈值的概率即为检测框的类别概率,对应的类别即为检测框的类别。其中,N个检测框的类别概率可用下述公式(3)表示:
score=[score1,score2,…,scoreN] (3)
其中,score1为box1属于各个类别概率[s1,1,s1,2,…,s1,C]中大于阈值δ的概率,即box1的类别概率,对应类别记为class1;score2表示box2的类别概率,对应类别记为class2,以此类推,scoreN表示boxN的类别概率,对应类别记为classN。
S240、电子设备根据包含目标物的检测框对图像中目标物进行标注。
电子设备根据包含目标物的检测框,可以得到图像中目标物的类别与位置,在图像中标注出目标物。进而,电子设备可以利用标注出目标物的图像进行进一步数据处理,例如,在自动驾驶领域,可根据图像中是否存在行人、是否有车辆等信息控制车辆减速甚至刹车。
应理解,为了使检测框能覆盖到不同位置、不同尺寸的目标物,锚点的固定步长将会被设置为较小的数值,且每个锚点检测框的尺寸也会设置较多。因此,电子设备得到包含目标物的检测框时,会存在多个不同检测框识别到同一目标物,不利于后续进行图像分割等操作。为了避免在图像中多次标注同一目标物,电子设备还需要在多个识别到同一个目标物的检测框中确定一个检测框,即从N个包含检测框中确定H个检测框,确保同一个目标物只被一个检测框标注。其中,关于电子设备如何在识别到同一目标物的多个检测框中确定一个检测框的具体实现过程将在下文结合示例进行详细介绍。
同样以图3A示出的图像为例进行说明。电子设备基于图3A得到的所有包含目标物的检测框,如图3F所示,其中,box1、box2以及box3检测到的目标物为同一目标物;box4、box5以及box6检测到的目标物为同一目标物;box7、box8以及box9检测到的目标物为同一目标物。电子设备需要从多个识别到同一个目标物的检测框中确定一个检测框,最终确定图像中目标物个数为3个,分别被box1、box4和box7检测到,并对目标物进行如图3G所示标注。电子设备对图像中目标物进行标注后,将基于该标注信息,控制车辆减速,保持车辆与前方车辆的间距。
综上所述,通过检测框遍历待识别图片,提取每个检测框中的图像特征,利用分类模型可以得到每个检测框中是否存在目标物,并得到目标物属于不同类别的概率,进而可以确定目标物的位置以及类别。
下面对上述步骤S240中电子设备如何在识别到同一目标物的多个检测框中确定一个检测框的具体实现方式进行详细介绍。
为了解决同一目标物被多个检测框识别到的问题,本方案提供了一种实现方式,通过计算检测框之间的交并比,再将利用类别矩阵,得到只包含相同类别的检测框的交并比矩阵,进而通过只包含相同类别的检测框的交并比,直接判断对应检测框是否删除,进而在识别到目标物的多个检测框中确定出目标检测框。如图4所示,该实现方式具体包括以下步骤:
S410、将检测框按检测框中目标物所属类别概率进行排序。
电子设备将所有检测框中目标物对应的类别概率从大到小进行排序,得到对应检测框的排序。
示例性地,若将所有检测框中目标物对应的类别概率进行排序后的结果为{score1,score2,…,scoreN},则表示box1的类别概率score1最大,boxN的类别概率scoreN最小,则对应检测框的排序为{box1,box2,…boxN}。
S420、计算检测框之间的交并比矩阵,得到检测框之间的重合程度。
电子设备根据检测框的按类别概率排序后的结果依次计算交并比,得到交并比矩阵M,其中,矩阵M中的数值Mij表示从大到小进行排序后的第i个检测框与第j个检测框的交并比,交并比为两个检测框间交集与并集的比值,用于表示两个检测框之间的重合程度。
应理解,如果检测框之间的交并比越大,则说明这两个检测框之间的重合程度高;如果检测框之间交并比越小,则说明这两个检测框之间重合程度低。其中,交并比最大为1,表示两个检测框完全重合;交并比最小为0,表示两个检测框没有重合的部分。
下面对如何得到交并比矩阵M进行详细介绍。其中,矩阵M可以用公式(4)表示为:
其中,M11表示类别概率最大的检测框与自身的交并比,M1N表示类别概率最大的检测框与类别概率最小的检测框的交并比,以此类推。
下面对两个检测框之间交并比Mij的计算方式进行说明,如公式(5)所示:
其中,1≤i≤N,1≤j≤N。Area(boxi)与Area(boxj)分别表示从大到小进行排序后第i个检测框与第j个检测框的面积大小,下面以Area(boxi)为例对检测框面积大小的计算方式进行说明,Area(boxi)的计算方式如下公式(6)所示:
Area(boxi)=Max(0,[(boxi[2]-boxi[0])*(boxi[3]-boxi[1])]) (6)
Inner(boxi,boxj)表示从大到小进行排序后第i个检测框和第j个检测框相交的面积大小,Inner(boxi,boxj)的计算方式可以用公式(7)表示:
Max函数表示在两个数值之间取最大的数值,Min函数表示两个数值之间取最小的数值。
因此,如图5所示,当第i个检测框与第j个检测框相交时,Xi,j与Yi,j为正数;当第i个检测框与第j个检测框不相交时,Xi,j,Yi,j为负数。则当第i个检测框与第j个检测框相交时,Inner(boxi,boxj)则可得到两者相交面积大小,如果第i个检测框与第j个检测框不相交,则Inner(boxi,boxj)大小为0。
S430、根据每个检测框的类别,得到类别矩阵以及类别上三角矩阵。
电子设备将所有检测框按类别概率进行排序后,根据每个检测框的类别得到类别矩阵L,类别矩阵L中的数值Lij表示排序后第i个检测框与第j个检测框类别是否相同,其中,若检测框i与检测框j类别相同,则Lij为1;若第i个检测框与第j个检测框类别不同,则Lij为0。得到类别矩阵L后,还将类别矩阵L取不包含对角线的上三角矩阵,得到类别上三角矩阵Ltriu。
下面对类别矩阵L的计算进行说明。
类别矩阵L中的值Lij的计算方式可通过下述公式(8)得到:
其中,class[i]表示第i个目标物检测框的类别,class[j]表示第j个目标物检测框的类别。
在一些实施例中,类别矩阵L可以用任意实数表示检测框之间类别相同。也即是说,类别矩阵L中的数值Lij表示第i个检测框与第j个检测框类别是否相同,其中,若第i个检测框与第j个检测框类别相同,则Lij为z,其中,z为任意实数,但若第i个检测框与第j个检测框类别不同,Lij为0。
举例来说,若检测框安类别概率进行排序后的顺序为:检测框1、检测框2、检测框3,且检测框1与检测框2属于同一类别,检测框3属于另一个类别,则类别矩阵可用公式(9)表示:
下面对类别矩阵取类别上三角矩阵进行说明。
电子设备根据矩阵L得到矩阵L不包括对角线的上三角矩阵Ltriu,具体计算方式如公式(10)所示:
也即是说,矩阵Ltriu可以用公式(11)表示为:
在一些实施例中,可以不根据类别矩阵L得到类别上三角矩阵Ltuiu,若不得到类别上三角矩阵Ltriu,电子设备需要根据交并比矩阵M得到交并比上三角矩阵Mtriu。也即是说,交并比矩阵M与类别矩阵L任意一个取上三角矩阵即可。
举例来说,检测框1和检测框2的交并比,和检测框2与检测框1的交并比表示同一个值,即M12与M21是相同的,将交并比矩阵取上三角后,使得交并比上三角矩阵中只包含检测框与比自身类别概率大的检测框之间的重合程度。例如,检测框1的类别概率比检测框2类别概率大,则只会保留检测框2所在列中和检测框1的交并比M12,而不会保留检测框1所在列中和检测框2的交并比M21。这样,可以防止相同的数据被记录两次,减少了后续计算量。
S440、根据交并比矩阵与类别上三角矩阵,确定需要删除的检测框。
电子设备根据交并比矩阵与类别上三角矩阵,得到分类处理后的交并比上三角矩阵,其中,分类处理后的交并比上三角矩阵中只包含相同类别的检测框之间的交并比。再将分类处理后的交并比矩阵中每个数据与交并比阈值α进行比较,得到目标矩阵D,根据目标矩阵D确定需要删除的检测框,得到在N个中保留的H个目标检测框,H小于N。
下面对目标矩阵D的生成过程进行详细描述。
电子设备根据交并比矩阵M与类别上三角矩阵Ltriu,得到分类处理后的交并比上三角矩阵Ptriu,矩阵Ptriu中只包含相同类别的检测框之间的交并比,其中,Ptriu中的数据可通过下述公式(12)计算得到:
也即是说,Ptriu矩阵中第i行第j列的数据,为Mtriu和Ltriu中第i行第j列的数据相乘后的结果。
在一些实施例中,也可以根据交并比上三角矩阵Mtriu与类别矩阵L,得到分类处理后的交并比上三角矩阵Ptriu,也即是说,交并比矩阵与类别矩阵任意一个矩阵为上三角矩阵,得到的分类处理后的交并比矩阵也为上三角矩阵。
电子设备再将矩阵Ptriu中每个数据与交并比阈值α进行比较,得到目标矩阵D,其中,若分类处理后的交并比矩阵Ptriu中第i行第j列的数据大于交并比阈值α的数据,则目标矩阵D在第i行第j列的数据Dij记为1,反之,Dij记为0。目标矩阵D的计算方式如下公式(13)所示:
在一些实施例中,目标矩阵D可以用任意实数表示矩阵中的数据大于阈值。也即是说,分类处理后的交并比矩阵Ptriu中第i行第j列的数据大于交并比阈值α的数据时,则目标矩阵D在第i行第j列的数据Dij记为t,t可以为任意实数,反之,Dij还是记为0。
应理解,分类处理后的交并比矩阵Ptriu中第i行第j列的数据大于交并比阈值α,还可以表示为分类处理后的交并比矩阵Ptriu中第i行第j列的数据小于交并比阈值β其中,α与β为反比例关系。
下面对根据目标矩阵D确定需要删除的检测框进行详细描述。
电子设备将目标矩阵D每一列数据相加,若该列数据相加后的结果不为0,则说明目标矩阵D该列对应的检测框存在与同一类别的其余检测框重合程度较高的情况,该检测框需要删除。目标矩阵D每一列数据相加后得到的结果MaxV(D:j)可以用下述公式(14)表示。
其中,D:j表示第j列的所有值。MaxV(D:j)函数表示计算目标矩阵D第j列中所有的元素的和。
在一些实施例中,还可以将目标矩阵D每一列数据相加后得到的结果MaxV(D:j)为0的对应的检测框标记为1,其余列的检测框标记为0,则电子设备将保留标记为1的检测框,舍去标记为0的检测框。其中,根据MaxV(D:j)对检测框进行标记可以用公式(15)表示为:
其中,Ki表示的是第i个检测框是否需要保留,当Ki为1时,表示需要保留,为0时,表示舍弃。
举例来说,在同一类别的检测框中,若类别概率最大的检测框(检测框1)与类别概率第二的检测框(检测框2)之间的交并比大于阈值,则说明这两个检测框位置特别接近,重合面积较大,又因为检测框1的类别概率大于检测框2的类别概率,交并比矩阵保留的是上三角矩阵,则检测框1和检测框2交并比是以M12进行记录的,进而,删去的检测框是检测框2。
在一些实施例中,在将矩阵Ptriu中每个数据与交并比阈值α进行比较,得到目标矩阵D时,还可以将交并比大于交并比阈值α的两个检测框对应在目标矩阵进行标记,标记可以为任意实数。在目标矩阵D中,若某列数据中存在标记,则该列对应的检测框将会在图像中舍去。
在一些实施例中,若在步骤S410中,检测框是按检测框中目标物所属类别概率从小到大进行排序的,那么在步骤S420中,则需要根据交并比矩阵得到交并比矩阵的下三角矩阵,或者,在步骤S430中,则需要根据类别矩阵得到类别矩阵的下三角矩阵。进而,在步骤S440中,分类处理后的交并比矩阵P为下三角矩阵,目标矩阵D也为下三角矩阵,在根据目标矩阵D确认需要删除的检测框时,是根据目标矩阵D每列数据中是否存在大于交并比阈值α的标志确定的,若目标矩阵D中存在大于交并比阈值α的标志,则该标志所在列对应的检测框将被舍去,或者将目标矩阵D每一列数据相加,若该列数据相加后的结果不为0,则该列对应的检测框将删除。
综上所述,上述实现方式通过计算检测框之间的交并比,再将利用类别矩阵,得到只包含相同类别的检测框的交并比矩阵,进而通过只包含相同类别的检测框的交并比,直接判断对应检测框是否删除。该实现方式即通过类别矩阵来区分各个类别,防止了两个不同类别的检测框因为重合程度较高,而被错误地舍去的情况,提高了精确度,又不需要多次计算不同类别的检测框的交并比,并且直接通过相同类别的检测框的交并比判断对应检测框是否删除,节省了计算时间。
下面结合图3F对图4所示实现方式,进行举例说明。如图6所示该实现方式包括:
S610、将检测框按检测框中目标物所属类别概率进行排序。
电子设备根据每个检测框中的图像特征对每个检测框中的图像进行识别后,共得到识别到目标物的9个检测框,{box1,box2,…box9},对应的类别概率为{score1,score2,…,score9},其中,box1,box2以及box3中目标物属于类别1;box4,box5以及box6中目标物属于类别2;box7,box8以及box9中目标物属于类别3。
示例性地,电子设备将这9个检测框按类别概率大小从大到小进行排序后的结果为{score1,score2,…,score9},则对应检测框的排序也为{box1,box2,…box9},下面也将以该排序结果进行举例说明。
S620、计算检测框之间的交并比矩阵M′,得到检测框之间的重合程度。
根据检测框的按类别概率排序后的结果依次计算交并比,得到交并比矩阵M′,交并比矩阵的计算方式可参考上述步骤S420,此处不再赘述。应理解,共9个检测框,则交并比矩阵M′为9*9的矩阵。
S630、根据每个检测框的相同类别检测框,得到类别矩阵L′以及类别上三角矩阵L′triu。
若检测框类别相同,则类别矩阵L′对应数值为1,则可得到类别矩阵L′以及类别上三角矩阵L′triu。因为box1,box2以及box3中目标物属于类别class1;box4,box5以及box6中目标物属于类别class2;box7,box8以及box9中目标物属于类别class3,则类别上三角矩阵L′triu可用表1进行表示,其中,表1只示出了类别上三角矩阵L′对角线以上的数据。应理解,在上三角矩阵中,对角线以及对角线以下的数据均为0。下面也将采用表格形式示出矩阵中的数据。
表1
box<sub>1</sub> | box<sub>2</sub> | box<sub>3</sub> | box<sub>4</sub> | box<sub>5</sub> | box<sub>6</sub> | box<sub>7</sub> | box<sub>8</sub> | box<sub>9</sub> | |
box<sub>1</sub> | \ | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>2</sub> | \ | \ | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>3</sub> | \ | \ | \ | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>4</sub> | \ | \ | \ | \ | 1 | 1 | 0 | 0 | 0 |
box<sub>5</sub> | \ | \ | \ | \ | \ | 1 | 0 | 0 | 0 |
box<sub>6</sub> | \ | \ | \ | \ | \ | \ | 0 | 0 | 0 |
box<sub>7</sub> | \ | \ | \ | \ | \ | \ | \ | 1 | 1 |
box<sub>8</sub> | \ | \ | \ | \ | \ | \ | \ | \ | 1 |
box<sub>9</sub> | \ | \ | \ | \ | \ | \ | \ | \ | \ |
S640、根据交并比上三角矩阵M′triu与类别上三角矩阵L′triu,确定需要删除的检测框。
电子设备根据交并比上三角矩阵M′triu与类别上三角矩阵L′triu,得到分类处理后的交并比矩阵P′triu,其中,分类处理后的交并比矩阵中只包含相同类别的检测框之间的交并比。下面以表2示出了上三角矩阵P′triu。
表2
box<sub>1</sub> | box<sub>2</sub> | box<sub>3</sub> | box<sub>4</sub> | box<sub>5</sub> | box<sub>6</sub> | box<sub>7</sub> | box<sub>8</sub> | box<sub>9</sub> | |
box<sub>1</sub> | \ | M<sub>1,2</sub> | M<sub>1,3</sub> | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>2</sub> | \ | \ | M<sub>2,3</sub> | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>3</sub> | \ | \ | \ | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>4</sub> | \ | \ | \ | \ | M<sub>4,5</sub> | M<sub>4,6</sub> | 0 | 0 | 0 |
box<sub>5</sub> | \ | \ | \ | \ | \ | M<sub>5,6</sub> | 0 | 0 | 0 |
box<sub>6</sub> | \ | \ | \ | \ | \ | \ | 0 | 0 | 0 |
box<sub>7</sub> | \ | \ | \ | \ | \ | \ | \ | M<sub>7,8</sub> | M<sub>7,9</sub> |
box<sub>8</sub> | \ | \ | \ | \ | \ | \ | \ | \ | M<sub>8,9</sub> |
box<sub>9</sub> | \ | \ | \ | \ | \ | \ | \ | \ | \ |
电子设备再将矩阵P′triu中每个数据与交并比阈值α进行比较,得到目标矩阵D′,其中,若分类处理后的交并比矩阵中第i行第j列的数据大于交并比阈值α的数据,则目标矩阵D′在第i行第j列的数据记为1。再将目标矩阵D′每一列数据相加得到MaxV′(D:′j)。
示例性地,{M1,2,M1,3,M2,3,M4,5,M4,6,M5,6,M7,8,M7,9,M8,9}均大于交并比阈值α,则目标矩阵D′为下表3所示:
表3
box<sub>1</sub> | box<sub>2</sub> | box<sub>3</sub> | box<sub>4</sub> | box<sub>5</sub> | box<sub>6</sub> | box<sub>7</sub> | box<sub>8</sub> | box<sub>9</sub> | |
box<sub>1</sub> | \ | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>2</sub> | \ | \ | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>3</sub> | \ | \ | \ | 0 | 0 | 0 | 0 | 0 | 0 |
box<sub>4</sub> | \ | \ | \ | \ | 1 | 1 | 0 | 0 | 0 |
box<sub>5</sub> | \ | \ | \ | \ | \ | 1 | 0 | 0 | 0 |
box<sub>6</sub> | \ | \ | \ | \ | \ | \ | 0 | 0 | 0 |
box<sub>7</sub> | \ | \ | \ | \ | \ | \ | \ | 1 | 1 |
box<sub>8</sub> | \ | \ | \ | \ | \ | \ | \ | \ | 1 |
box<sub>9</sub> | \ | \ | \ | \ | \ | \ | \ | \ | \ |
MaxV′(D′<sub>:j</sub>) | 0 | 1 | 2 | 0 | 1 | 2 | 0 | 1 | 2 |
则得到了box1,box4以及box7对应列的值为0,则说明box1,box4以及box7在所属类别中概率较高,且同类别下其余检测框与其重合程度较高,则如图3G保留box1,box4以及box7。
综上所述,本实现方式在通过计算检测框之间的交并比,再将利用类别矩阵,得到只包含相同类别的检测框的交并比矩阵,进而通过只包含相同类别的检测框的交并比,判断对应检测框是否删除,使得一个目标物只保留了一个检测框。
上述示例以图像中目标物分别属于不同类别,对图4所示实现方式进行了举例说明。下面结合图7A中不同目标物属于同一类别的情况,对图4所示实现方式进行了举例说明。如图8所示该实现方式包括:
S810、将检测框按检测框中目标物所属类别概率进行排序。
电子设备根据每个检测框中的图像特征对每个检测框中的图像进行识别后,共得到识别到目标物的6个检测框,{box10,box11,…box15},对应的类别概率为{score10,score11,…,score15},其中,{box10,box11,…box15}中目标物都属于类别class1。
电子设备将这6个检测框按类别概率大小从大到小进行排序后的结果为{score10,score13,score11,score14,score12,score15},则对应检测框的排序也为{box10,box13,box11,box14,box12,box15},下面也将以该排序结果进行举例说明。
S820、计算检测框之间的交并比矩阵M″,得到检测框之间重合程度。
根据检测框的按类别概率排序后的结果依次计算交并比,得到交并比矩阵M″,交并比矩阵的计算方式可参考上述步骤S420,此处不再赘述。
S830、根据每个检测框的相同类别检测框,得到类别矩阵L″以及类别上三角矩阵L″triu。
若检测框类别相同,则类别矩阵L″对应数值为1,则可得到类别矩阵L″以及类别上三角矩阵L″triu。因为{box10,box11,…box15}中目标物都属于类别1,则类别上三角矩阵L″triu如下表4所示。
表4
box<sub>10</sub> | box<sub>13</sub> | box<sub>11</sub> | box<sub>14</sub> | box<sub>12</sub> | box<sub>15</sub> | |
box<sub>10</sub> | \ | 1 | 1 | 1 | 1 | 1 |
box<sub>13</sub> | \ | \ | 1 | 1 | 1 | 1 |
box<sub>11</sub> | \ | \ | \ | 1 | 1 | 1 |
box<sub>14</sub> | \ | \ | \ | \ | 1 | 1 |
box<sub>12</sub> | \ | \ | \ | \ | \ | 1 |
box<sub>15</sub> | \ | \ | \ | \ | \ | \ |
S840、根据交并比上三角矩阵M″triu与类别上三角矩阵L″triu,确定需要删除的检测框。
电子设备根据交并比上三角矩阵M″triu与类别上三角矩阵L″triu,得到分类处理后的交并比矩阵P″triu,其中,分类处理后的交并比矩阵中只包含相同类别的检测框之间的交并比。下面以表5示出了上三角矩阵P″triu。
表5
box<sub>10</sub> | box<sub>13</sub> | box<sub>11</sub> | box<sub>14</sub> | box<sub>12</sub> | box<sub>15</sub> | |
box<sub>10</sub> | \ | M<sub>10,13</sub> | M<sub>10,11</sub> | M<sub>10,14</sub> | M<sub>10,12</sub> | M<sub>10,15</sub> |
box<sub>13</sub> | \ | \ | M<sub>13,11</sub> | M<sub>13,14</sub> | M<sub>13,12</sub> | M<sub>13,15</sub> |
box<sub>11</sub> | \ | \ | \ | M<sub>11,14</sub> | M<sub>11,12</sub> | M<sub>11,15</sub> |
box<sub>14</sub> | \ | \ | \ | \ | M<sub>14,12</sub> | M<sub>14,15</sub> |
box<sub>12</sub> | \ | \ | \ | \ | \ | M<sub>12,15</sub> |
box<sub>15</sub> | \ | \ | \ | \ | \ | \ |
电子设备再将矩阵P″triu中每个数据与交并比阈值α进行比较,得到目标矩阵D″,其中,若分类处理后的交并比矩阵中第i行第j列的数据大于交并比阈值α的数据,则目标矩阵D″在第i行第j列的数据记为1。再将目标矩阵D″每一列数据相加得到MaxV″(D″:j)。
其中,{M10,11,M10,12,M11,12,M13,14,M13,15,M14,15}均大于交并比阈值α,而box10、box11和box12中任意一个检测框和box13、box14和box15中任意一个检测框都没有重合,因此,{M10,13,M10,14,M10,15,M11,13,M11,14,M11,15,M12,13,M12,14,M12,15}均为0,则目标矩阵D″以及MaxV″(D″:j)为下表6所示:
表6
box<sub>10</sub> | box<sub>13</sub> | box<sub>11</sub> | box<sub>14</sub> | box<sub>12</sub> | box<sub>15</sub> | |
box<sub>10</sub> | \ | 0 | 1 | 0 | 1 | 0 |
box<sub>13</sub> | \ | \ | 0 | 1 | 0 | 1 |
box<sub>11</sub> | \ | \ | \ | 0 | 1 | 0 |
box<sub>14</sub> | \ | \ | \ | \ | 0 | 1 |
box<sub>12</sub> | \ | \ | \ | \ | \ | 0 |
box<sub>15</sub> | \ | \ | \ | \ | \ | \ |
MaxV″(D″<sub>:j</sub>) | 0 | 0 | 1 | 1 | 2 | 2 |
则得到了box10,box13对应列的值为0,则说明该图中存在两个相同类别的目标物,如图7B保留box10,box13。
综上所述,本实现方式在通过计算检测框之间的交并比,再将利用类别矩阵,得到只包含相同类别的检测框的交并比矩阵,进而通过只包含相同类别的检测框的交并比,判断对应检测框是否删除,使得一个目标物只保留了一个检测框。
为了使电子设备能更精确地在图像中确定目标物的位置与类别,如图9所示,本方案提供了一种目标物检测装置,该装置包括获取单元910、生成单元920以及确定单元930:
获取单元910用于获取第一图像,所述第一图像中包括一个或多个目标物;
生成单元920用于基于所述第一图像生成N个检测框,确定各检测框的位置信息、各检测框的类别以及类别概率;其中,检测框的类别为检测框中目标物在多个类别中所属的一个类别,检测框的类别概率为检测框属于该类别的概率;
生成单元920还用于根据所述各检测框的类别,得到类别矩阵,所述类别矩阵中的值用于表示所述多个检测框中每两个检测框之间类别是否相同;
生成单元920还用于根据所述各检测框的位置信息,得到第一矩阵,所述第一矩阵中的值用于表示所述多个检测框中每两个检测框之间的重合程度;
生成单元920还用于根据所述类别矩阵、所述第一矩阵以及重合程度阈值,得到目标矩阵;所述目标矩阵中的值用于表示相同类别的各个检测框之间的重合程度与所述重合程度阈值的比较结果;所述比较结果包括第一结果和第二结果;所述第一结果为所述重合程度小于所述重合程度阈值,所述第二结果为所述重合程度不小于所述重合程度阈值;
确定单元930用于根据所述目标矩阵,从所述N个检测框中确定H个目标检测框;所述H个目标检测框中任一个目标检测框与比所述目标检测框的类别概率大的每个检测框的比较结果为所述第一结果;所述H小于所述N。
确定单元930还用于根据所述目标检测框,确定所述第一图像中所述一个或多个目标物的位置信息和类别。
综上所述,上述目标物检测装置通过计算检测框之间的交并比,再将利用类别矩阵,得到只包含相同类别的检测框的交并比矩阵,进而通过只包含相同类别的检测框的交并比,直接判断对应检测框是否删除。该实现方式即通过类别矩阵来区分各个类别,防止了两个不同类别的检测框因为重合程度较高,而被错误地舍去的情况,提高了精确度,又不需要多次计算不同类别的检测框的交并比,并且直接通过相同类别的检测框的交并比判断对应检测框是否删除,节省了计算时间。
下面介绍本申请实施例中涉及的电子设备1000。
该电子设备1000可以是手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personaldigital assistant,PDA)或专门的照相机(例如单反相机、卡片式相机)等,本申请对该电子设备的具体类型不作任何限制。
参见图10,图10示出了本申请实施例提供的示例性电子设备1000的结构示意图。
电子设备1000可以包括处理器1010,外部存储器接口1020,内部存储器1021,通用串行总线(universal serial bus,USB)接口1030,充电管理模块1040,电源管理模块1041,电池1042,天线1,天线2,移动通信模块1050,无线通信模块1060,音频模块1070,扬声器1070A,受话器1070B,麦克风1070C,耳机接口1070D,传感器模块1080,按键1090,马达1091,指示器1092,摄像头1093,显示屏1094,以及用户标识模块(subscriber identificationmodule,SIM)卡接口1095等。其中传感器模块1080可以包括压力传感器1080A,陀螺仪传感器1080B,气压传感器1080C,磁传感器1080D,加速度传感器1080E,距离传感器1080F,接近光传感器1080G,指纹传感器1080H,温度传感器1080J,触摸传感器1080K,环境光传感器1080L,骨传导传感器1080M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备1000的具体限定。在本申请另一些实施例中,电子设备1000可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器1010可以包括一个或多个处理单元,例如:处理器1010可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是电子设备1000的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
在一些实施例中,控制器或GPU等处理器1010,可以用于对获取到的图像进行目标物检测,包括:使用若干不同尺寸的检测框遍历图片,提取每个检测框中的图像特征,通过图像特征依次判断每个检测框中是否存在目标物,并确定目标物的类别,进而得到图片中所有目标物的位置以及类别。在另一些实施例中,控制器或GPU等处理器1010,还可以在有多个检测框识别到同一个目标物的情况下,通过计算检测框之间的交并比,在识别到同一个目标物的多个检测框中删除多余的检测框。
处理器1010中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器1010中的存储器为高速缓冲存储器。该存储器可以保存处理器1010刚用过或循环使用的指令或数据。如果处理器1010需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器1010的等待时间,因而提高了系统的效率。
在一些实施例中,处理器1010可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备1000的结构限定。在本申请另一些实施例中,电子设备1000也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
在一些实施例中,电子设备1000的天线1和移动通信模块1050耦合,天线2和无线通信模块1060耦合,使得电子设备1000可以通过无线通信技术与网络以及其他设备通信。
电子设备1000通过GPU,显示屏1094,以及应用处理器等实现显示功能。在本申请的一些实施例中,显示屏1094中显示有系统当前输出的界面内容。例如,界面内容为即时通讯应用提供的界面。电子设备1000可以通过ISP,摄像头1093,视频编解码器,GPU,显示屏1094以及应用处理器等实现拍摄功能。
ISP用于处理摄像头1093反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头1093中。
摄像头1093用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备1000可以包括1个或N个摄像头1093,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备1000在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。视频编解码器用于对数字视频压缩或解压缩。电子设备1000可以支持一种或多种视频编解码器。这样,电子设备1000可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备1000的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
电子设备1000可以通过音频模块1070,扬声器1070A,受话器1070B,麦克风1070C,耳机接口1070D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
压力传感器1080A用于感受压力信号,可以将压力信号转换成电信号。陀螺仪传感器1080B可以用于确定电子设备1000的运动姿态。加速度传感器1080E可检测电子设备1000在各个方向上(一般为三轴)加速度的大小。距离传感器1080F,用于测量距离。
在一些实施例中,处理器1010接收到图像,该图像可以是摄像头1093拍摄得到的,也可以是其他数据采集设备拍摄并通过移动通信模块1050或无线通信模块1060发送给处理器1010的,显示器1094可以显示该图像。处理器1010还将识别图像中的目标物的类别与位置,并将识别后的结果通过显示器1094显示。
在一些实施例中,本申请实施例中涉及的电子设备还可以是部署在边缘环境或者云环境的计算设备1100。
其中,边缘环境具体可以是边缘环境中的一个边缘计算设备或运行在一个或者多个边缘计算设备上的软件系统。边缘环境指在地理位置上距离用于采集图像的终端较近的,用于提供计算、存储、通信资源的边缘计算设备集群,比如位于道路两侧的边缘计算一体机,区县级别的边缘服务器。
云环境是云计算模式下利用基础资源向用户提供云服务的实体。云环境包括云数据中心和云服务平台,所述云数据中心包括云服务提供商拥有的大量基础资源(包括计算资源、存储资源和网络资源),云数据中心包括的计算资源可以是大量的计算设备(例如服务器),比如云数据中心的裸金属服务器。
图11是本申请提供的一种计算设备1100的结构示意图。如图11所示,计算设备1100包括:处理器1110、通信接口1120以及存储器1130。其中,处理器1110、通信接口1120以及存储器1130可以通过内部总线1140相互连接,也可通过无线传输等其他手段实现通信。本申请实施例以通过总线1140连接为例,总线1140可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。总线1140可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器1110可以由至少一个通用处理器构成,例如中央处理器(CentralProcessing Unit,CPU),或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(Application-Specific Integrated Circuit,ASIC)、可编程逻辑器件(ProgrammableLogic Device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(ComplexProgrammable Logic Device,CPLD)、现场可编程门阵列(Field-Programmable GateArray,FPGA)、通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。处理器1110执行各种类型的数字存储指令,例如存储在存储器1130中的软件或者固件程序,它能使计算设备1100提供多种服务。
存储器1130用于存储程序代码,并由处理器1110来控制执行,以执行上述实施例中目标物检测方法的处理步骤。程序代码可以获取图像,通过不同尺寸的检测框遍历图像,提取每个检测框中的图像特征,判断每个检测框中是否存在目标物,并得到目标物所属类别及类别概率,进而在图像中确定目标物的位置及类别
需要说明的是,本实施例可以是通用的物理服务器实现的,例如,ARM服务器或者X86服务器,也可以是基于通用的物理服务器结合NFV技术实现的虚拟机实现的,虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,本申请不作具体限定。
存储器1130可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器1130也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器1130还可以包括上述种类的组合。存储器1130可以存储有程序代码,具执行图2实施例中的S210-步骤S240及其可选步骤,以及图4实施例中的S410-步骤S440及其可选步骤,这里不再进行赘述。
通信接口1120可以为有线接口(例如以太网接口),可以为内部接口(例如高速串行计算机扩展总线(Peripheral Component Interconnect express,PCIe)总线接口)、有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他设备或模块进行通信。
需要说明的,图11仅仅是本申请实施例的一种可能的实现方式,实际应用中,计算设备1100还可以包括更多或更少的部件,这里不作限制。关于本申请实施例中未示出或未描述的内容,可参见前述图2以及图4实施例中的相关阐述,这里不再赘述。
应理解,图11所示的计算设备还可以是至少一个服务器构成的计算机集群,本申请不作具体限定。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在处理器上运行时,图2以及图4所示的方法流程得以实现。
本申请实施例还提供一种计算机程序产品,当计算机程序产品在处理器上运行时,图2所示的方法流程得以实现。
上述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
Claims (17)
1.一种目标物检测方法,其特征在于,包括:
获取第一图像,所述第一图像中包括一个或多个目标物;
基于所述第一图像生成N个检测框,确定各检测框的位置信息、各检测框的类别以及类别概率;其中,检测框的类别为检测框中目标物在多个类别中所属的一个类别,检测框的类别概率为检测框属于该类别的概率;
根据所述各检测框的类别,得到类别矩阵,所述类别矩阵中的值用于表示所述N个检测框中每两个检测框之间类别是否相同;
根据所述各检测框的位置信息,得到第一矩阵,所述第一矩阵中的值用于表示所述N个检测框中每两个检测框之间的重合程度;
根据所述类别矩阵、所述第一矩阵以及重合程度阈值,得到目标矩阵;所述目标矩阵中的值用于表示相同类别的各个检测框之间的重合程度与所述重合程度阈值的比较结果;所述比较结果包括第一结果和第二结果;所述第一结果为所述重合程度小于所述重合程度阈值,所述第二结果为所述重合程度不小于所述重合程度阈值;
根据所述目标矩阵,从所述N个检测框中确定H个目标检测框;所述H个目标检测框中任一个目标检测框与比所述目标检测框的类别概率大的每个检测框的比较结果为所述第一结果;所述H小于所述N;
根据所述目标检测框,确定所述第一图像中所述一个或多个目标物的位置信息和类别。
2.根据权利要求1所述的方法,其特征在于,所述根据所述各检测框的位置信息,得到第一矩阵,所述第一矩阵中的值用于表示所述N个检测框中每两个检测框之间的重合程度,具体包括:
根据所述各检测框的位置信息,得到所述N个检测框中每两个检测框之间的交集与并集,其中,所述各检测框的位置信息是根据所述第一图像建立的坐标系以及各检测框在所述第一图像中的位置得到的;
根据所述每两个检测框之间的交集与并集的比值得到所述每两个检测框之间的重合程度;
根据所述每两个检测框之间的重合程度,得到所述第一矩阵。
3.根据权利要求1-2任一所述的方法,其特征在于,所述根据所述类别矩阵、所述第一矩阵以及重合程度阈值,得到目标矩阵,具体包括:
根据所述类别矩阵与所述第一矩阵,得到第二矩阵,所述第二矩阵中的值用于表示相同类别的各个检测框之间的重合程度;
根据所述第二矩阵与所述重合程度阈值,得到目标矩阵。
4.根据权利要求1-3任一所述的方法,其特征在于,
所述类别矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;
所述第一矩阵中第i行第j列的值用于表示按类别概率从大到小排序后,第i个检测框与第j个检测框之间的重合程度。
5.根据权利要求4所述的方法,其特征在于,在所述根据所述各检测框的类别,得到类别矩阵之后,所述方法还包括:
根据所述类别矩阵得到类别上三角矩阵,所述类别上三角矩阵为所述类别矩阵的不包括对角线的值的上三角矩阵。
6.根据权利要求4-5任一所述的方法,其特征在于,在根据所述各检测框的位置信息,得到第一矩阵之后,所述方法还包括:
根据所述第一矩阵得到第一上三角矩阵,所述第一上三角矩阵为所述第一矩阵的不包括对角线的值的上三角矩阵。
7.根据权利要求5-6任一所述的方法,其特征在于,所述方法还包括:
当所述N个检测框中两个检测框之间类别相同时,所述两个检测框对应在所述类别矩阵中的值为1;
当所述N个检测框中两个检测框之间类别不同时,所述两个检测框对应在所述类别矩阵中的值为0;
所述第一结果在所述目标矩阵中的值为0;
所述第二结果在所述目标矩阵中的值为1。
8.根据权利要求7所述的方法,其特征在于,所述根据所述目标矩阵,从所述N个检测框中确定H个目标检测框,具体包括:
根据所述目标矩阵,从所述N个检测框中确定需要删除的检测框,所述需要删除的检测框在所述目标矩阵中对应的列的所有值的和不为0;
确定所述N个检测框中除所述需要删除的检测框外的H个检测框为所述目标检测框。
9.根据权利要求1-3任一所述的方法,其特征在于,
所述类别矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间类别是否相同,其中,i和j属于整数,且1≤i≤N,1≤j≤N;
所述第一矩阵中第i行第j列的值用于表示按类别概率从小到大排序后,第i个检测框与第j个检测框之间的重合程度。
10.根据权利要求9所述的方法,其特征在于,在所述根据所述各检测框的类别,得到类别矩阵之后,所述方法还包括:
根据所述类别矩阵得到类别下三角矩阵,所述类别下三角矩阵为所述类别矩阵的不包括对角线的值的下三角矩阵。
11.根据权利要求9-10任一所述的方法,其特征在于,在根据所述各检测框的位置信息,得到第一矩阵之后,所述方法还包括:
根据所述第一矩阵得到第一下三角矩阵,所述第一下三角矩阵为所述第一矩阵的不包括对角线的值的下三角矩阵。
12.根据权利要求10-11任一所述的方法,其特征在于,所述方法还包括:
当所述N个检测框中两个检测框之间类别相同时,所述两个检测框对应在所述类别矩阵中的值为1;
当所述N个检测框中两个检测框之间类别不同时,所述两个检测框对应在所述类别矩阵中的值为0;
所述第一结果在所述目标矩阵中的值为0,所述第二结果在所述目标矩阵中的值为1。
13.根据权利要求12所述的方法,其特征在于,所述根据所述目标矩阵,从所述N个检测框中确定H个目标检测框,具体包括:
根据所述目标矩阵,从所述N个检测框中确定需要删除的检测框,所述需要删除的检测框在所述目标矩阵中对应的列的所有值的和不为0;
确定所述N个检测框中除所述需要删除的检测框外的H个检测框为所述目标检测框。
14.一种目标物检测装置,包括:获取单元、生成单元以及确定单元:
所述获取单元用于获取第一图像,所述第一图像中包括一个或多个目标物;
所述生成单元用于基于所述第一图像生成N个检测框,确定各检测框的位置信息、各检测框的类别以及类别概率;其中,检测框的类别为检测框中目标物在多个类别中所属的一个类别,检测框的类别概率为检测框属于该类别的概率;
所述生成单元还用于根据所述各检测框的类别,得到类别矩阵,所述类别矩阵中的值用于表示所述多个检测框中每两个检测框之间类别是否相同;
所述生成单元还用于根据所述各检测框的位置信息,得到第一矩阵,所述第一矩阵中的值用于表示所述多个检测框中每两个检测框之间的重合程度;
所述生成单元还用于根据所述类别矩阵、所述第一矩阵以及重合程度阈值,得到目标矩阵;所述目标矩阵中的值用于表示相同类别的各个检测框之间的重合程度与所述重合程度阈值的比较结果;所述比较结果包括第一结果和第二结果;所述第一结果为所述重合程度小于所述重合程度阈值,所述第二结果为所述重合程度不小于所述重合程度阈值;
所述确定单元用于根据所述目标矩阵,从所述N个检测框中确定H个目标检测框;所述H个目标检测框中任一个目标检测框与比所述目标检测框的类别概率大的每个检测框的比较结果为所述第一结果;所述H小于所述N;
所述确定单元还用于根据所述目标检测框,确定所述第一图像中所述一个或多个目标物的位置信息和类别。
15.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器和存储器;
所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行如权利要求1-13中任一项所述的方法。
16.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
17.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110944044.XA CN113705643B (zh) | 2021-08-17 | 2021-08-17 | 一种目标物检测方法、装置以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110944044.XA CN113705643B (zh) | 2021-08-17 | 2021-08-17 | 一种目标物检测方法、装置以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113705643A true CN113705643A (zh) | 2021-11-26 |
CN113705643B CN113705643B (zh) | 2022-10-28 |
Family
ID=78653070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110944044.XA Active CN113705643B (zh) | 2021-08-17 | 2021-08-17 | 一种目标物检测方法、装置以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113705643B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115035186A (zh) * | 2021-12-03 | 2022-09-09 | 荣耀终端有限公司 | 目标对象标记方法和终端设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130016877A1 (en) * | 2011-07-15 | 2013-01-17 | International Business Machines Corporation | Multi-view object detection using appearance model transfer from similar scenes |
CN107844750A (zh) * | 2017-10-19 | 2018-03-27 | 华中科技大学 | 一种水面全景图像目标检测识别方法 |
CN108009473A (zh) * | 2017-10-31 | 2018-05-08 | 深圳大学 | 基于目标行为属性视频结构化处理方法、系统及存储装置 |
CN109977943A (zh) * | 2019-02-14 | 2019-07-05 | 平安科技(深圳)有限公司 | 一种基于yolo的图像目标识别方法、系统和存储介质 |
CN110738125A (zh) * | 2019-09-19 | 2020-01-31 | 平安科技(深圳)有限公司 | 利用Mask R-CNN选择检测框的方法、装置及存储介质 |
CN110929560A (zh) * | 2019-10-11 | 2020-03-27 | 杭州电子科技大学 | 融合目标检测与跟踪的视频半自动目标标注方法 |
CN111461221A (zh) * | 2020-04-01 | 2020-07-28 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种面向自动驾驶的多源传感器融合目标检测方法和系统 |
CN111898659A (zh) * | 2020-07-16 | 2020-11-06 | 北京灵汐科技有限公司 | 一种目标检测方法及系统 |
CN112164097A (zh) * | 2020-10-20 | 2021-01-01 | 南京莱斯网信技术研究院有限公司 | 一种船舶视频检测样本采集方法 |
CN112711972A (zh) * | 2019-10-26 | 2021-04-27 | 上海海思技术有限公司 | 一种目标检测方法及装置 |
CN112749590A (zh) * | 2019-10-30 | 2021-05-04 | 上海高德威智能交通系统有限公司 | 目标检测方法、装置、计算机设备和计算机可读存储介质 |
-
2021
- 2021-08-17 CN CN202110944044.XA patent/CN113705643B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130016877A1 (en) * | 2011-07-15 | 2013-01-17 | International Business Machines Corporation | Multi-view object detection using appearance model transfer from similar scenes |
CN107844750A (zh) * | 2017-10-19 | 2018-03-27 | 华中科技大学 | 一种水面全景图像目标检测识别方法 |
CN108009473A (zh) * | 2017-10-31 | 2018-05-08 | 深圳大学 | 基于目标行为属性视频结构化处理方法、系统及存储装置 |
CN109977943A (zh) * | 2019-02-14 | 2019-07-05 | 平安科技(深圳)有限公司 | 一种基于yolo的图像目标识别方法、系统和存储介质 |
CN110738125A (zh) * | 2019-09-19 | 2020-01-31 | 平安科技(深圳)有限公司 | 利用Mask R-CNN选择检测框的方法、装置及存储介质 |
CN110929560A (zh) * | 2019-10-11 | 2020-03-27 | 杭州电子科技大学 | 融合目标检测与跟踪的视频半自动目标标注方法 |
CN112711972A (zh) * | 2019-10-26 | 2021-04-27 | 上海海思技术有限公司 | 一种目标检测方法及装置 |
CN112749590A (zh) * | 2019-10-30 | 2021-05-04 | 上海高德威智能交通系统有限公司 | 目标检测方法、装置、计算机设备和计算机可读存储介质 |
CN111461221A (zh) * | 2020-04-01 | 2020-07-28 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种面向自动驾驶的多源传感器融合目标检测方法和系统 |
CN111898659A (zh) * | 2020-07-16 | 2020-11-06 | 北京灵汐科技有限公司 | 一种目标检测方法及系统 |
CN112164097A (zh) * | 2020-10-20 | 2021-01-01 | 南京莱斯网信技术研究院有限公司 | 一种船舶视频检测样本采集方法 |
Non-Patent Citations (3)
Title |
---|
HASITH KARUNASEKERA 等: "Multiple Object Tracking With Attention to Appearance, Structure,Motion and Size", 《IEEE ACCESS》 * |
孙宸 等: "基于广义霍夫变换的多目标跟踪算法", 《中国体视学与图像分析》 * |
李琪 等: "短道速滑场景下的多目标跟踪与运动仿真", 《系统仿真学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115035186A (zh) * | 2021-12-03 | 2022-09-09 | 荣耀终端有限公司 | 目标对象标记方法和终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113705643B (zh) | 2022-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107871130B (zh) | 图像处理 | |
US8792722B2 (en) | Hand gesture detection | |
US8750573B2 (en) | Hand gesture detection | |
CN108388879B (zh) | 目标的检测方法、装置和存储介质 | |
CN111931764B (zh) | 一种目标检测方法、目标检测框架及相关设备 | |
WO2022021029A1 (zh) | 检测模型训练方法、装置、检测模型使用方法及存储介质 | |
CN112348778B (zh) | 一种物体识别方法、装置、终端设备及存储介质 | |
WO2024001123A1 (zh) | 基于神经网络模型的图像识别方法、装置及终端设备 | |
WO2023284182A1 (en) | Training method for recognizing moving target, method and device for recognizing moving target | |
KR20210137213A (ko) | 이미지 처리 방법 및 장치, 프로세서, 전자 기기, 저장 매체 | |
CN114049512A (zh) | 模型蒸馏方法、目标检测方法、装置及电子设备 | |
CN113159024A (zh) | 一种基于改进YOLOv4的车牌识别技术 | |
WO2024077781A1 (zh) | 基于卷积神经网络模型的图像识别方法、装置及终端设备 | |
CN113269010B (zh) | 一种人脸活体检测模型的训练方法和相关装置 | |
US20220198224A1 (en) | Face recognition method, terminal device using the same, and computer readable storage medium | |
CN112541394A (zh) | 黑眼圈及鼻炎识别方法、系统及计算机介质 | |
CN113705643B (zh) | 一种目标物检测方法、装置以及电子设备 | |
CN114332993A (zh) | 人脸识别方法、装置、电子设备及计算机可读存储介质 | |
WO2020244076A1 (zh) | 人脸识别方法、装置、电子设备及存储介质 | |
EP4332910A1 (en) | Behavior detection method, electronic device, and computer readable storage medium | |
WO2023273227A1 (zh) | 指甲识别方法、装置、设备及存储介质 | |
CN115546845A (zh) | 一种多视角牛脸识别方法、装置、计算机设备及存储介质 | |
CN112446311A (zh) | 对象重识别方法、电子设备、存储介质及装置 | |
CN112232124A (zh) | 人群态势分析方法、视频处理装置及具有存储功能的装置 | |
CN111507421A (zh) | 一种基于视频的情感识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230911 Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New Area, Pudong New Area, Shanghai Patentee after: Shanghai Glory Smart Technology Development Co.,Ltd. Address before: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee before: Honor Device Co.,Ltd. |