CN113474785A - 提取处理方法及相关产品 - Google Patents
提取处理方法及相关产品 Download PDFInfo
- Publication number
- CN113474785A CN113474785A CN201980091553.3A CN201980091553A CN113474785A CN 113474785 A CN113474785 A CN 113474785A CN 201980091553 A CN201980091553 A CN 201980091553A CN 113474785 A CN113474785 A CN 113474785A
- Authority
- CN
- China
- Prior art keywords
- score
- extraction
- scores
- extractions
- overlapping
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- 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/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
提供了一种目标检测的提取处理方法及相关产品,该方法包括:根据所有提取的分数的统计特性,确定分数阈值;从所有提取中选择分数高于分数阈值的提取;对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取,这样降低了选择提取的时间复杂度,提高了用于抑制的提取的选择效率,从而提高了提取处理效率和目标检测效率。
Description
技术领域
本公开涉及目标检测技术领域,尤其涉及一种目标检测的提取处理方法及相关产品。
背景技术
区域提取方法和基于区域的卷积神经网络(region-based convolutionalneural network,R-CNN)的成功推动了目标检测的最新进展,R-CNN演变为快速R-CNN,并进一步演变为faster R-CNN。faster R-CNN目标检测系统由两个模块组成,一个模块是深度全卷积网络,其通过引入区域提取网络(region proposal network,RPN)来提取区域,第二个模块是使用提取区域的快速R-CNN检测器。
在faster R-CNN中,将图像输入卷积神经网络(convolutional neural network,CNN)得到该图像的特征图,并且RPN进一步利用该特征图生成一系列矩形区域提取。RPN生成的区域提取经常在同一个目标上重叠,并且为了找到所有具有高分(分数>阈值)的非重叠(交并比(intersection over union ratio,IoU))提取,一种叫做非极大值抑制(non-maximum suppression,NMS)的算法用于目标检测神经网络,其中分数是检测是目标的概率,并且阈值是任何检测被视为包含目标的最小概率值。在目前的技术中,使用NMS查找所有非重叠提取的方法,通常包括两个步骤:根据它们的分数对所有提取进行排序,并从得分最高的框开始,不断去除分数较低的框和与得分较高的重叠高的框,这是耗时的,不适合那些对实时性能要求较高的环境。
提供该背景信息是为了揭示申请人认为可能与本公开相关的信息。不一定要承认也不应解释为任何前述信息构成针对本公开的现有技术。
发明内容
有鉴于此,为了克服上述问题,本公开提供了一种提取处理方法及相关产品。
前述和其他目的由独立权利要求的主题实现。从从属权利要求、说明书和附图,进一步的实施方式是显而易见的。
本公开的第一方面涉及一种提取处理方法,包括:
根据所有提取的分数的统计特性确定分数阈值;
从所有分数中选择分数高于分数阈值的提取;和
对所选择的提取进行抑制以得到具有高分数的所有非重叠提取。
本公开的第二方面涉及一种提取处理装置,包括:
存储器,配置为存储程序指令,和
处理器,配置为执行存储在存储器中的程序指令,以执行:
根据所有提取的分数的统计特性确定分数阈值;
从所有分数中选择分数高于分数阈值的提取;和
对所选择的提取进行抑制以得到具有高分数的所有非重叠提取。
本公开的第三方面涉及一种片上系统,包括:
存储器,配置为存储程序指令;和
处理器,配置为执行所述程序指令以执行:
根据所有提取的分数的统计特性确定分数阈值;
从所有提取中选择分数高于分数阈值的提取;和
对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取。
本公开的第四方面涉及一种目标检测系统,包括:
提取生成器,配置为根据目标的图像生成提取,其中每个提取生成有分数;
根据第二方面的提取处理装置,配置为处理提取生成器生成的所有提取,以输出具有高分数的非重叠提取;和
目标检测器,配置为根据提取处理装置输出的具有高分数的非重叠提取检测目标。
本公开提供的用于目标检测的提取处理方法及相关产品,通过根据所有提取的分数的统计特性确定分数阈值,并选择分数高于所确定的分数阈值的提取,可以丢弃大量的提取,并且可以有效地进行抑制以得到具有高分数的所有非重叠提取,从而提高提取处理效率,减少诸如faster R-CNN的目标检测系统中的时间复杂度和消耗,使得目标检测系统可以在诸如自动驾驶的环境中满足更高的实时性能要求。
附图说明
附图用于提供对本公开的进一步理解,构成说明书的一部分,与以下具体实施例一起用于解释本公开,但不应解释为对本公开的限制。
图1为说明现有技术中RPN的示意图。
图2是根据本公开实施例的用于目标检测的提取处理方法的流程示意图。
图2A是所有提取的分数的分布示意图。
图3是根据本公开实施例的用于目标检测的提取处理方法的另一流程示意图。
图3A是根据本公开实施例的寄存器阵列的示意图。
图4是根据本公开实施例的用于目标检测的提取处理方法的又一流程示意图。
图5是根据本公开实施例的用于目标检测的提取处理装置的示意图。
图6是根据本公开实施例的用于目标检测的提取处理装置的另一示意图。
图7是根据本公开实施例的片上系统的示意图。
图8是根据本公开实施例的片上系统的另一示意图。
图9是根据本公开实施例的目标检测系统的示意图。
具体实施方式
在下面的描述中,参考了附图,这些附图形成了本公开的一部分,并且通过说明的方式示出了本公开的实施例的特定方面或在其中可以使用本公开的实施例的特定方面。应当理解,本公开的实施例可以用于其他方面并且包括图中未描绘的结构或逻辑变化。因此,以下详细描述不应被视为限制意义,并且本公开的范围由所附权利要求限定。
图1为说明现有技术中RPN的示意图。RPN用于提取生成并且是faster R-CNN中用于目标检测的关注点。以faster R-CNN为例,如图1所示,为了生成区域提取,一小网络滑在CNN输出的卷积特征图上方,并且该小网络将卷积特征图的n×n空间窗口作为输入。每个滑动窗口映射到中间层中的较低维特征(例如,256-d)。这个特征被送入两个滑动的全连接层——框回归层(reg)和框分类层(cls)。在每个滑动窗口,同时预测多个区域提取。例如,如图1所示,在每个滑动窗口,生成最多k个区域提取(k个锚框,如图1所示,k为大于1的整数),因此,cls层输出为每个提取估计目标或非目标的概率的2k个分数,并且reg层输出k个框(提取)的4k个坐标。
对于一张图片,可能会生成数以万计的锚框(提取),且一些RPN提取相互高度重叠。为了减少冗余,通常基于它们的cls分数对提取区域采用NMS。使用NMS查找所有非重叠提取,通常包括两个步骤:首先,根据它们的分数对所有提取进行排序,其次,从得分最高的框开始,不断去除具有较低分数且与较高分数的框高重叠的框。使用NMS的方法的伪代码如下所示:
假设所有提取的数量为n,排序后使用的最高提取的数量为t,分数高的非重叠提取的数量为m,在使用NMS的方法中:排序的时间复杂度为O(nlog(n)),抑制的时间复杂度为O(m×t),NMS方法的时间复杂度为O(nlog(n))+O(m×t)。并且由于m、n和t的值可以很大,使用NMS查找具有高分数的所有非重叠提取是实时执行的瓶颈。此外,如果提取正在流式传输,排序可能需要n2时间,使情况变得更糟。神经网络中有数百万的提取,NMS的计算时间可以达到毫秒到秒的范围,无法满足更高的实时性能要求,例如自动驾驶的环境。
本公开的实施例提供了一种目标检测的提取处理方法,例如使用fast R-CNN,此处不做限定。
图2是根据本公开的实施例的用于目标检测的提取处理方法的流程示意图。如图2所示,用于目标的提取处理方法可以包括以下步骤:
步骤101,根据所有提取的分数的统计特性确定分数阈值;
步骤102,从所有分数中选择分数高于分数阈值的提取;和
步骤103,对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
在一些实施例中,步骤101包括:确定所有提取的分数的分数平均值;确定所有提取的分数的分数标准差;以及根据所述分数平均值和分数阈值确定分数阈值。
在一些实施例中,根据分数平均值和分数阈值确定分数阈值,包括:通过使用以下等式确定分数阈值:
θ=μ+β×σ。
上述等式中,θ为分数阈值,μ为分数平均值,σ为分数标准差,β为分数因子,其基于待选择用于抑制的分数最高的提取的百分比来确定。并且在一些实施例中,β的值在2.5~3的范围内。
由于所有提取中超过95%的提取对应于背景,因此可以安全地预期大多数分数(与背景相关)以负(-ve)数为中心和极少数分数(与真实(ground truth)目标相关联)以某个正(+ve)数为中心。在它们之间预计是一平滑且连续的分数分布。所以分数的分布可以被认为是两个高斯的总和,如图2A所示:一个峰值较大,以负分数为中心,另一个峰值较小,以正分数为中心。
由于与正确(true)-ve提取相比与具有正确+ve提取对应的高斯通常非常小,因此上述两个高斯的和可以安全地假定与对应于正确-ve提取的高斯相同,而正确正提取位于该高斯的右侧尾部。这可以使用如图2A所示的典型设计示例来说明。
通过利用具有高斯分布的所有提取的分数的统计特性,可以从所有提取中抽取或选择最高分数(例如,用于抑制的前t个分数提取)。使用分布的平均值(μ)和标准差(σ),通过仅保留分数高于给定分数阈值θ(由μ+β×σ得出)的提取,可以容易地选择前t个提取(例如,所有提取的前约1.5%)。在这里,β是根据抑制阶段所需的最高分数提取的百分比凭经验估计的。在一些实施例中,β值在2.5~3的范围内产生良好的结果。
在一些实施例中,首先将所有提取(即,n个提取)的分数流入硬件中,例如处理器,但不限于此,并根据所有提取的分数,计算分数平均值和分数标准差,进一步根据分数平均值和分数标准差以及β值确定分数阈值。该过程可以流水线化以在每个时钟周期处理一批新数据,并且最坏情况复杂度为O(n)。之后所有的提取再次流入,这次通过将每个提取的分数与确定的分数阈值进行比较,忽略/抛弃/丢弃分数较低的提取,从而选择分数高于确定的分数阈值的提取,并且该选择在时间复杂度O(n)内。与使用NMS时排序的时间复杂度为O(nlog(n))相比,时间复杂度显着降低,尤其是当所有提取的数量(n)非常大时。
步骤101和102的伪代码的示例而非限制如下所示:
根据本实施例提供的用于目标检测的提取处理方法,通过根据所有提取的分数的统计特性确定分数阈值,并从所有分数中选出分数高于分数阈值的提取,减少了用于选择提取的时间复杂度,从而提高了选择用于抑制的提取的效率,由此提高了提取处理的效率。
图3是根据本公开实施例的提取处理方法的另一流程示意图。如图3所示,提取处理方法可能包括以下步骤:
步骤201,根据所有提取的分数的统计特性确定分数阈值;
步骤202,从所有分数中选择分数高于分数阈值的提取;和
步骤203,通过使用寄存器阵列对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
步骤201和步骤202分别与步骤101和步骤102类似,在此不再赘述。步骤203是上述步骤103的一实施示例。在步骤203中,采用硬件寄存器阵列对所选择的提取进行未排序抑制。
在一些实施例中,寄存器阵列是新颖的O(1)插入/删除寄存器阵列,但不限于此。在一些实施例中,寄存器阵列中的每个寄存器连接到两个相邻的寄存器,并且在每个单元中存储的所选择的提取的一提取的分数高于一个相邻的寄存器并且低于另一个相邻的寄存器。在一些实施例中,寄存器阵列中的每个寄存器包括控制逻辑、指令端口和多个输入端口。在一些实施例中,寄存器阵列中的每个寄存器包括3个输入端口。
图3A是根据本公开实施例的寄存器阵列的示意图。寄存器阵列具有存储数据的单元。在一些实施例中,这些单元(寄存器)是具有嵌入其中的控制逻辑的复杂寄存器。这些单元有3个输入端口,通过这些端口,它们可以接收数据来存储(例如,前一个单元中的数据、下一个单元中的数据、新数据)。在一些实施例中,每个单元中的数据是所选择的提取中的一个提取的分数。这些单元还具有一指令端口,使用该指令端口,外部控制逻辑使它们能够捕获和存储来自3个输入端口之一的输入。
如图3A所示,寄存器阵列中的寄存器单元呈链状连接,阵列中的每个寄存器单元具有3个输入端口:第一输入端口(prev_cell_data)通过它接收来自其前一个单元的数据,第二输入端口(next_cell_data)通过它接收来自其下一个单元的数据,和第三输入端口(new_data)通过它插入新数据;每个寄存器单元具有指令端口来接收指令。所有单元的指令端口连接到例如控制总线(标记为单元指令的粗线,如图3A所示)来接收指令,并且所有单元的第三输入端口连接到例如数据总线(标记为数据的另一条粗线,如图3A所示)来接收新数据。
在一些实施例中,每个单元连接到两个相邻单元,(1)具有较高分数的前一个单元和(2)具有较低分数的下一个单元。在一些实施例中,每个时钟周期,寄存器阵列中的单元可以从3个源接收数据,即,(1)通过第一输入端口从前一个单元接收数据,(2)通过第二输入端口从下一个单元接收数据,和(3)通过第三输入端口从数据总线插入新数据。
在一些实施例中,每个单元能够执行以下操作:插入新数据、保持当前数据和删除当前数据。
在一些实施例中,当单元通过其第三输入端口(new_data端口)从数据总线插入新数据时,下一个单元通过注册来自其第一输入端口(prev_cell_data端口)的数据来接收存储在该单元中的数据,并且前一个单元本身保存来自前一时钟周期的数据。通过向至少一个下一个单元多播插入指令,实现O(1)列表插入。在这个阶段,上游的所有前一个单元都被多播一个保存数据的指令,这个单元得到一个插入新数据的指令,下游的所有下一个单元都被多播一个从其前一个单元接收数据的指令。
在一些实施例中,当单元正在保存当前数据时,可以通过注册存储在其自身中的当前数据来实现保存当前数据。这不会改变存储在寄存器阵列中的数据。在一些实施例中,遍及阵列中的所有单元多播用于保存当前数据的指令。
在一些实施例中,当单元正在删除当前数据时,该单元通过注册来自第二输入端口(next_cell_data端口)的数据来接收存储在其下一个单元中的数据。通过将该指令多播到下游的所有下一个单元,实现O(1)列表删除。在此阶段,该单元上游的所有前一个单元获得保存数据的指令。
在一些实施例中,可以在步骤203中通过使用如上所述的寄存器阵列来抑制在步骤201中选择的提取,以获得具有高分数的所有非重叠提取。
为了详细说明通过使用寄存器阵列进行步骤203中的抑制,以步骤202输出有3个被选择的提取(prop.1、prop.2和prop.3)为例,并且例如,该prop.1至prop.3以未排序的顺序分别计分为0.6、0.5和0.7。需要说明的是,对于其他数量的所选择的提取,且它们的每一个被预测有其他分数,步骤203中的抑制仍然可以适用,在此不做限定。在一些实施例中,对于prop.1,可以通过执行插入新数据的操作将prop.1的分数0.6存储到寄存器阵列的一单元中;对于prop.2,首先确定prop.2的分数0.5低于prop.1的分数,然后判断prop.2和prop.1之间的IoU比值是否高于IoU阈值(例如,0.7,在目前技术的目标检测系统中经常采用,但不限于此),当prop.2和prop.1之间的IoU比值高于IoU阈值时,prop.2可被丢弃,否则,可以通过执行插入新数据的操作将prop.2的分数存入寄存器阵列的下一个单元中;对于prop.3,首先确定prop.3的分数0.7高于prop.1的分数,然后判断prop.1和prop.3之间的IoU比值是否高于IoU阈值,当prop.1和prop.3的IoU比值高于IoU阈值时,可以通过执行删除当前数据的操作来丢弃寄存器单元中存储的prop.1,并且通过执行插入新数据的操作将prop.3存储到寄存器阵列中,否则可将prop.3的分数存入存储prop.1的单元的前一个单元中。而当前一个单元不为空时,将prop.3的分数存入存储prop.1的单元的前一个单元的操作,可以通过以下方式实现:指示存储prop.1的单元的下一个单元接收来自其前一个单元的数据,并指示存储prop.1的单元接收新数据,即prop.3的分数。
根据本实施例公开的提取处理方法,采用硬件寄存器阵列对未排序的所选择的提取进行抑制,进一步降低了时间复杂度。本实施例公开的提取处理方法的时间复杂度,对于选择后的m个提取和t个最终提取,由下式给出:
时间复杂度=O(选择)+O(排序抑制),和
排序抑制时间复杂度=O(m×t)×O(插入/删除)。
随着提出的硬件寄存器阵列,对列表的插入和删除可以在常数时间内进行,排序抑制的最坏情况时间复杂度可得到:
排序抑制时间复杂度=O(m×t)。
随着选择和抑制中的建议改变,提取处理可以在硬件加速器(例如深度学习加速器,但不限于此)上非常有效地执行,最坏情况复杂度为O(n)+O(m×t)。由于自定义硬件可以优化到最低级别的应用,以实现时钟周期的最小浪费,因此建议的硬件在性能上可以高几个数量级。对于n大的复杂神经网络,现有技术中使用NMS的提取层独自就可能需要几秒钟,而使用本实施例的提取处理方法,通过使用采用硬件寄存器阵列的选择和未排序抑制,提取层可仅需要几毫秒,显着提高了提取处理效率。
图4是根据本公开实施例的提取处理方法的又一流程示意图,如图4所示,提取处理方法包括以下步骤:
步骤301,根据所有提取的分数的统计特性确定分数阈值;
步骤302,从所有分数中选出分数高于分数阈值的提取;和
步骤303,通过使用寄存器阵列对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
步骤301和步骤302分别与步骤101和步骤102类似,在此不再赘述。步骤303是上述步骤103的另一实施例。在步骤303中,采用抑制算法对所选择的提取进行未排序抑制。
在一些实施例中,所述抑制算法是非极大值抑制算法(NMS),但不限于此。以NMS为例说明对所选择的提取的未排序抑制,需要说明的是,对于其他抑制算法,这里仍然可以应用。通过使用NMS,先对所选择的提取进行排序,然后对排序后的所选择的提取进行抑制,来执行对未排序抑制的实施,排序和抑制可以参考相关技术的公开,例如“https://github.com/bharatsingh430/soft-nms”,在此不再赘述。
根据本实施例公开的提取处理方法,通过根据所有提取的分数的统计特性确定分数阈值,并从所有分数中选择分数高于分数阈值的提取,减少选择提取的时间复杂度,因此提高了待用于抑制的提取的选择效率,这将导致提取处理效率的提高。
图5是根据本公开实施例的提取处理装置的示意图。如图5所示,提取处理装置400包括存储器401和处理器402,其中所述存储器401配置为存储程序指令,所述处理器402配置为执行存储器中存储的程序指令,以执行:根据所有提取的分数的统计特性确定分数阈值;从所有分数中选择分数高于分数阈值的提取;和对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
在一些实施例中,所述处理器402还配置为执行存储在存储器中的程序指令,以执行:确定所有提取的分数的分数平均值;确定所有提取的分数的分数标准差;以及根据所述分数平均值和分数阈值确定分数阈值。
在一些实施例中,所述处理器402还配置为执行存储在存储器中的程序指令,以执行:通过使用以下等式确定分数阈值:
θ=μ+β×σ。
在上述等式中,θ为分数阈值,μ为分数均值,σ为分数标准差,β为分数因子,其基于待选择用于抑制的分数最高的提取的百分比来确定。在一些实施例中,β的值在2.5~3的范围内。
这里描述的提取处理装置配置为实现图2所示的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
在一些实施例中,所述处理器402还配置为执行存储在存储器中的程序指令,以执行:通过使用抑制算法对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。在一些实施例中,所述抑制算法是非极大值抑制算法。
如此,这里描述的提取处理装置配置为实现参考图4的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
图6是根据本公开实施例的提取处理装置500的另一示意图。如图6所示,所述提取处理装置400包括如上所述的存储器401、处理器402,还包括寄存器阵列403。
在一些实施例中,寄存器阵列403配置为抑制所选择的提取以得到具有高分数的所有非重叠提取;处理器402,还配置为执行存储在存储器中的程序指令,以执行:使用寄存器阵列403对所选择的提取进行抑制,得到具有高分数的所有非重叠提取。
在一些实施例中,所述寄存器阵列403为新颖的O(1)插入/删除寄存器阵列,寄存器阵列403中的每个寄存器包括控制逻辑、指令端口和多个输入端口。在一些实施例中,寄存器阵列中的每个寄存器包括3个输入端口。
这里描述的提取处理装置配置为实现图3所示的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
图7是根据本公开实施例的片上系统的示意图。如图7所示,片上系统600,包括存储器601和处理器602,存储器601配置为存储程序指令;处理器602配置为执行所述程序指令,以执行:根据所有提取的分数的统计特性确定分数阈值;从所有提取中选择分数高于分数阈值的提取;并对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
在一些实施例中,处理器602还配置为执行存储在存储器中的程序指令,以执行:确定所有提取的分数的分数平均值;确定所有提取分数的分数标准差;以及根据分数均值和分数阈值确定分数阈值。
在一些实施例中,处理器602还配置为执行存储在存储器中的程序指令,以执行:通过使用以下等式确定分数阈值:
θ=μ+β×σ。
在上述等式中,θ为分数阈值,μ为分数均值,σ为分数标准差,β为分数因子,其基于待选择用于抑制的分数最高的提取的百分比来确定。在一些实施例中,β的值在2.5~3的范围内。
这里描述的片上系统配置为实现参考图2的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
在一些实施例中,所述处理器602还配置为执行存储在存储器601中的程序指令,以执行:通过使用抑制算法对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。在一些实施例中,所述抑制算法是非极大抑制算法。
因此,本文描述的片上系统配置为实现参考图4的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
图8是根据本公开实施例的片上系统的另一示意图。如图8所示,片上系统700包括如上所述的存储器601和处理器602,还包括寄存器阵列603。
在一些实施例中,寄存器阵列603配置为对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取;处理器602,还配置为执行存储在存储器中的程序指令,以执行:使用寄存器阵列603对所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
在一些实施例中,所述寄存器阵列603为新颖的O(1)插入/删除寄存器阵列,寄存器阵列603中的每个寄存器包括控制逻辑、指令端口和多个输入端口。在一些实施例中,寄存器阵列中的每个寄存器包括3个输入端口。
本文描述的提取处理装置配置为实现参考图3的方法实施例,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
图9是根据本公开实施例的目标检测系统的示意图。如图9所示,目标检测系统800包括提取生成器801、提取处理装置802和目标检测器803,其中所述提取生成器801配置为根据目标的图像生成提取,其中生成的每个提取生成有分数;提取处理装置802配置为对提取生成器801生成的所有提取进行处理,以输出具有高分数的非重叠提取;并且目标检测器803配置为根据提取处理装置802输出的具有高分数的非重叠提取检测目标。
所述提取生成器801可以是,例如用于目标检测的faster R-CNN系统中的RPN,但不限于此,所述目标检测器803可以是,例如fast R-CNN,但不限于此,并且所述提取处理装置802可以为上述提取处理装置400和500,遵循类似的实现原理,产生类似的技术效果,在此不再赘述。
例如,应当理解的是,与所描述的方法相关的公开也可以适用于被配置为执行该方法的相应设备或系统,反之亦然。例如,如果描述了一个或多个特定的方法步骤,则对应的设备可以包括一个或多个单元,例如功能单元,以执行所描述的一个或多个方法步骤(例如,一个单元执行一个或多个步骤,或多个单元中的每个执行多个步骤中的一个或多个),即使这样的一个或多个单元未明确描述或在图中说明。另一方面,例如,如果基于一个或多个单元来描述特定设备,例如功能单元,相应的方法可包括执行一个或多个单元的功能的一个步骤(例如,一个步骤执行一个或多个单元的功能,或多个步骤的每个执行多个单元的一个或更多个的功能),即使这样的一个或多个步骤未明确描述或在图中说明。此外,应当理解的是,除非另外特别指出,否则本文描述的各种示例性实施例和/或方面的特征可以彼此组合。
本公开说明书和权利要求书以及上述附图中的“第一”、“第二”等术语,旨在区分不同的目标,而不是为了限定特定的顺序。
本公开实施例中的“和/或”等术语仅用于描述关联目标之间的关联,表示可能存在三种关系,例如A和/或B可以表示存在仅A、A和B以及仅B。
术语“一”或“一”并非旨在指定一个或单个元件,而是在适当的情况下可用于表示多个元件。
将进一步理解的是,当在本说明书中使用时,术语“包含”、“包括”、“具有”及其变体指定所述特征、步骤、操作、元件和/或组件的存在,但是不排除存在或添加一个或多个其他特征、步骤、操作、元件、组件和/或它们的组。相反,当在本说明书中使用时,术语“由……组成”指定所述特征、步骤、操作、元件和/或组件,并且排除附加特征、步骤、操作、元件和/或组件。
在本公开的实施例中,诸如“示例性”或“例如”等表述用于表示示例或实例的说明。在本公开的实施例中,描述为“示例性”或“例如”的任何实施例或设计方案不应被解释为优先于或有利于其他实施例或设计方案。特别地,“示例性”或“例如”的使用旨在以特定方式呈现相关概念。
在一个或多个示例中,所描述的功能可以在硬件、软件、固件或其任何组合中实现。如果以软件实现,则这些功能可以作为一个或多个指令或代码存储在或传输在计算机可读介质上并由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其对应于诸如数据存储介质之类的有形介质,或者通信介质,包括例如根据通信协议便于将计算机程序从一个地方转移到另一个地方的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质或(2)诸如信号或载波的通信介质。数据存储介质可以是可由一台或多台计算机或一个或多个处理器访问,以检索用于实现本公开中描述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。
作为示例而非限制,此类计算机可读存储介质可包括随机存取存储器(randomaccess memory,RAM)、只读存储器(read-only memory,ROM)、电可擦除可编程ROM(electrically erasable programmable ROM,EEPROM)、光盘ROM(compact disc ROM,CD-ROM)或其他光盘存储、磁盘存储或其他磁存储设备、闪存或任何其他可用于以指令或数据结构的形式存储所需程序代码并可通过电脑访问的介质。此外,任何连接都被恰当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(digitalsubscriber line,DSL)或无线技术,如红外线、无线电和微波,从网站、服务器或其他远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或无线技术,如红外线、无线电和微波,都包含在介质的定义中。然而,应当理解的是,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他瞬态介质,而是针对非瞬态、有形存储介质。本文使用的磁盘和光盘包括压缩盘(compact disc,CD)、激光盘、光盘、数字多功能盘(digital versatile disc,DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘则使用激光以光学方式复制数据。上述的组合也应包括在计算机可读介质的范围内。
指令可由一个或多个处理器执行,例如一个或多个数字信号处理器(digitalsignal processor,DSP)、通用微处理器、专用集成电路(application specificintegrated circuit,ASIC)、现场可编程逻辑阵列(field programmable logic array,FPGA)或其他等效的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可指代任何前述结构或适合于实现本文所描述的技术的任何其他结构。此外,在一些方面,本文描述的功能可以在被配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入组合编解码器中。此外,这些技术可以在一个或多个电路或逻辑元件中完全实现。
本公开的技术可以在多种设备或装置中实现,包括无线手持机、集成电路(integrated circuit,IC)或一组IC(例如,芯片组)。本公开中描述了各种组件、模块或单元以强调被配置为执行所公开的技术的设备的功能方面,但不一定需要由不同的硬件单元来实现。相反,如上所述,各种单元可以在编解码器硬件单元中结合或由包括如上所述的一个或多个处理器的互操作硬件单元的集合,连同合适的软件和/或固件一起提供。
应当理解,当元件或组件在本文中被称为“连接到”或“耦合到”另一个元件或组件时,它可以连接或耦合到另一个元件或组件,或也可能存在中间元件或组件。相反,当一个元件或组件被称为“直接连接到”或“直接耦合到”另一个元件或组件,它们之间不存在中间元件或组件。
虽然本文参考说明性实施例描述了本发明,但是该描述并不旨在被解释为限制性的。相反,说明性实施例的目的是使本领域技术人员更好地理解本发明的精神。为了不模糊本发明的范围,省略了众所周知的工艺和制造技术的许多细节。在参考描述后,说明性实施例以及其他实施例的各种修改对于本领域技术人员来说将是显而易见的。因此,所附权利要求旨在涵盖任何此类修改。
此外,本发明的优选实施例的一些特征可以在没有其他特征的相应使用的情况下利用。因此,前述描述应被认为仅是对本发明原理的说明,而不是对其进行限制。本领域技术人员将理解落入本发明范围内的上述实施例的变化。因此,本发明不限于以上讨论的特定实施例和说明,而是由以下权利要求及其等效物限制。
Claims (25)
1.一种提取处理方法,包括:
根据所有提取的分数的统计特性确定分数阈值;
从所有所述分数中选择分数高于所述分数阈值的提取;和
对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取。
2.根据权利要求1所述的方法,其中,所述根据所有提取的分数的统计特性确定分数阈值,包括:
确定所述所有提取的分数的分数平均值;
确定所述所有提取的分数的分数标准差;和
根据所述分数平均值和所述分数阈值确定所述分数阈值。
3.根据权利要求2所述的方法,其中,根据所述分数平均值和所述分数阈值确定所述分数阈值,包括:
使用以下等式确定所述分数阈值:
θ=μ+β×σ,
其中θ为所述分数阈值,μ为所述分数平均值,σ为所述分数标准差,β为分数因子,其基于待选择用于抑制的分数最高的提取的百分比来确定。
4.根据权利要求3所述的方法,其中,β的值在2.5~3的范围内。
5.根据权利要求1所述的方法,其中,所述对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取包括:
通过使用寄存器阵列来抑制所述所选择的提取,以得到所述具有高分数的所有非重叠提取。
6.根据权利要求1所述的方法,其中,所述寄存器阵列是新颖的O(1)插入/删除寄存器阵列。
7.根据权利要求5所述的方法,其中,所述寄存器阵列中的每个寄存器与两个相邻的寄存器相连,并且每个单元中存储的所述所选择的提取的一提取的分数高于一个相邻的寄存器并且低于另一个相邻的寄存器。
8.根据权利要求5所述的方法,其中,所述寄存器阵列中的每个寄存器包括控制逻辑、指令端口和多个输入端口。
9.根据权利要求8所述的方法,其中,所述寄存器阵列中的每个寄存器包括3个输入端口。
10.根据权利要求1所述的方法,其中,所述对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取包括:
通过使用抑制算法对所述所选择的提取进行抑制,以得到具有高分数的所有非重叠提取。
11.根据权利要求10的方法,其中,所述抑制算法是非极大值抑制算法。
12.一种提取处理装置,包括:
存储器,配置为存储程序指令,和
处理器,配置为执行存储在所述存储器中的所述程序指令,以执行:
根据所有提取的分数的统计特性确定分数阈值;
从所有所述分数中选择分数高于所述分数阈值的提取;和
对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取。
13.根据权利要求12所述的装置,其中,所述处理器还被配置为执行存储在所述存储器中的所述程序指令,以执行:
确定所述所有提取的分数的分数平均值;
确定所述所有提取的分数的分数标准差;和
根据所述分数平均值和所述分数阈值确定所述分数阈值。
14.根据权利要求13所述的装置,其中,所述处理器还被配置为执行存储在所述存储器中的所述程序指令,以执行:
使用以下等式确定所述分数阈值:
θ=μ+β×σ,
其中θ为所述分数阈值,μ为所述分数平均值,σ为所述分数标准差,β为分数因子,其基于待选择用于抑制的分数最高的提取的百分比来确定。
15.根据权利要求14所述的装置,其中,β的值在2.5~3的范围内。
16.根据权利要求12所述的装置,还包括:
寄存器阵列,配置为由所述处理器使用以抑制所述所选择的提取,以得到所述具有高分数的所有非重叠提取;和
所述处理器还配置为执行存储在所述存储器中的所述程序指令,以执行:
通过使用所述寄存器阵列来抑制所述所选择的提取,以得到所述具有高分数的所有非重叠提取。
17.根据权利要求16所述的装置,其中,所述寄存器阵列是新颖的O(1)插入/删除寄存器阵列。
18.根据权利要求16所述的装置,其中,所述寄存器阵列中的每个寄存器包括控制逻辑、指令端口和多个输入端口。
19.根据权利要求18所述的装置,其中,所述寄存器阵列中的每个寄存器包括3个输入端口。
20.根据权利要求12所述的装置,其中,所述处理器还配置为执行存储在所述存储器中的所述程序指令,以执行:
通过使用抑制算法对所选择的所述提取进行抑制,以得到具有高分数的所有非重叠提取。
21.根据权利要求20的装置,其中,所述抑制算法是非极大值抑制算法。
22.一种片上系统,包括:
存储器,配置为存储程序指令;和
处理器,配置为执行所述程序指令以执行:
根据所有提取的分数的统计特性确定分数阈值;
从所有所述提取中选择分数高于所述分数阈值的提取;和
对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取。
23.根据权利要求22所述的片上系统,其中,所述片上还包括:
寄存器阵列,配置为对所选择的所述提取进行抑制以得到具有高分数的所有非重叠提取。
24.根据权利要求22所述的片上系统,其中,所述处理器还配置为执行存储在所述存储器中的所述程序指令,以执行:
通过使用抑制算法对所选择的所述提取进行抑制,以得到具有高分数的所有非重叠提取。
25.一种目标检测系统,包括:
提取生成器,配置为根据目标的图像生成提取,其中每个提取生成有分数;
根据权利要求12所述的提取处理装置,配置为处理所述提取生成器生成的所有提取,以输出具有高分数的非重叠提取;和
目标检测器,配置为根据所述提取处理装置输出的所述具有高分数的非重叠提取检测目标。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/079884 WO2020191668A1 (en) | 2019-03-27 | 2019-03-27 | Proposal processing method and related products |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113474785A true CN113474785A (zh) | 2021-10-01 |
CN113474785B CN113474785B (zh) | 2023-10-27 |
Family
ID=72606315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980091553.3A Active CN113474785B (zh) | 2019-03-27 | 2019-03-27 | 用于目标检测的区域提取处理方法及相关产品 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10909417B2 (zh) |
CN (1) | CN113474785B (zh) |
WO (1) | WO2020191668A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019210801A1 (de) * | 2019-07-22 | 2021-01-28 | Robert Bosch Gmbh | Verfahren, Vorrichtung, Computerprogramm und maschinenlesbares Speichermedium zur Detektion eines Objekts |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106056101A (zh) * | 2016-06-29 | 2016-10-26 | 哈尔滨理工大学 | 用于人脸检测的非极大值抑制方法 |
CN107729808A (zh) * | 2017-09-08 | 2018-02-23 | 国网山东省电力公司电力科学研究院 | 一种用于输电线路无人机巡检的图像智能采集系统及方法 |
CN108537222A (zh) * | 2018-04-13 | 2018-09-14 | 湖南阳光电力科技有限公司 | 一种用于电力仪表的图像识别方法及系统 |
CN109101897A (zh) * | 2018-07-20 | 2018-12-28 | 中国科学院自动化研究所 | 水下机器人的目标检测方法、系统及相关设备 |
CN109284669A (zh) * | 2018-08-01 | 2019-01-29 | 辽宁工业大学 | 基于Mask RCNN的行人检测方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9443164B2 (en) * | 2014-12-02 | 2016-09-13 | Xerox Corporation | System and method for product identification |
US10810462B2 (en) * | 2015-12-01 | 2020-10-20 | Intel Corporation | Object detection with adaptive channel features |
US10318848B2 (en) * | 2015-12-15 | 2019-06-11 | Qualcomm Incorporated | Methods for object localization and image classification |
US9858496B2 (en) * | 2016-01-20 | 2018-01-02 | Microsoft Technology Licensing, Llc | Object detection and classification in images |
US10467458B2 (en) * | 2017-07-21 | 2019-11-05 | Altumview Systems Inc. | Joint face-detection and head-pose-angle-estimation using small-scale convolutional neural network (CNN) modules for embedded systems |
US10713794B1 (en) * | 2017-03-16 | 2020-07-14 | Facebook, Inc. | Method and system for using machine-learning for object instance segmentation |
US11120314B2 (en) * | 2017-04-07 | 2021-09-14 | Intel Corporation | Joint training of neural networks using multi scale hard example mining |
US10366301B1 (en) * | 2017-05-02 | 2019-07-30 | Ambarella, Inc. | Block based non-maximum suppression |
CN108460336A (zh) * | 2018-01-29 | 2018-08-28 | 南京邮电大学 | 一种基于深度学习的行人检测方法 |
US11592818B2 (en) * | 2018-06-20 | 2023-02-28 | Zoox, Inc. | Restricted multi-scale inference for machine learning |
WO2020006554A1 (en) * | 2018-06-29 | 2020-01-02 | Geomni, Inc. | Computer vision systems and methods for automatically detecting, classifing, and pricing objects captured in images or videos |
-
2019
- 2019-03-27 WO PCT/CN2019/079884 patent/WO2020191668A1/en active Application Filing
- 2019-03-27 CN CN201980091553.3A patent/CN113474785B/zh active Active
- 2019-05-10 US US16/409,750 patent/US10909417B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106056101A (zh) * | 2016-06-29 | 2016-10-26 | 哈尔滨理工大学 | 用于人脸检测的非极大值抑制方法 |
CN107729808A (zh) * | 2017-09-08 | 2018-02-23 | 国网山东省电力公司电力科学研究院 | 一种用于输电线路无人机巡检的图像智能采集系统及方法 |
CN108537222A (zh) * | 2018-04-13 | 2018-09-14 | 湖南阳光电力科技有限公司 | 一种用于电力仪表的图像识别方法及系统 |
CN109101897A (zh) * | 2018-07-20 | 2018-12-28 | 中国科学院自动化研究所 | 水下机器人的目标检测方法、系统及相关设备 |
CN109284669A (zh) * | 2018-08-01 | 2019-01-29 | 辽宁工业大学 | 基于Mask RCNN的行人检测方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2020191668A1 (en) | 2020-10-01 |
US20200311466A1 (en) | 2020-10-01 |
CN113474785B (zh) | 2023-10-27 |
US10909417B2 (en) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230014783A1 (en) | Processing for multiple input data sets | |
US8583896B2 (en) | Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain | |
CN103984776B (zh) | 一种识别重复图片的方法、图片搜索去重方法及其装置 | |
CN107633023B (zh) | 一种图像去重方法和装置 | |
WO2021237570A1 (zh) | 影像审核方法及装置、设备、存储介质 | |
CN110765860A (zh) | 摔倒判定方法、装置、计算机设备及存储介质 | |
CN110910422A (zh) | 目标跟踪方法、装置、电子设备和可读存储介质 | |
CN108881947A (zh) | 一种直播流的侵权检测方法及装置 | |
CN110688524A (zh) | 视频检索方法、装置、电子设备及存储介质 | |
CN112749726B (zh) | 目标检测模型的训练方法、装置、计算机设备和存储介质 | |
US10769784B2 (en) | Image analyzing method and electrical device | |
Wang et al. | Aspect-ratio-preserving multi-patch image aesthetics score prediction | |
CN111046847A (zh) | 一种视频处理方法、装置、电子设备以及介质 | |
US11275997B1 (en) | Weight loading in an array | |
CN111639230B (zh) | 一种相似视频的筛选方法、装置、设备和存储介质 | |
CN110827292A (zh) | 一种基于卷积神经网络的视频实例分割方法及设备 | |
CN113887615A (zh) | 图像处理方法、装置、设备和介质 | |
CN110135428B (zh) | 图像分割处理方法和装置 | |
CN115344805A (zh) | 素材审核方法、计算设备及存储介质 | |
CN112966754B (zh) | 样本筛选方法、样本筛选装置及终端设备 | |
CN113474785A (zh) | 提取处理方法及相关产品 | |
US11334358B2 (en) | Hardware accelerator having reconfigurable instruction set and reconfigurable decoder | |
CN116188118B (zh) | 基于ctr预测模型的目标推荐方法及装置 | |
US20220129270A1 (en) | Method and system for topk operation | |
CN113705666B (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 |