CN116090531A - 一种能对非极大值抑制处理加速的神经网络加速器 - Google Patents
一种能对非极大值抑制处理加速的神经网络加速器 Download PDFInfo
- Publication number
- CN116090531A CN116090531A CN202310072085.3A CN202310072085A CN116090531A CN 116090531 A CN116090531 A CN 116090531A CN 202310072085 A CN202310072085 A CN 202310072085A CN 116090531 A CN116090531 A CN 116090531A
- Authority
- CN
- China
- Prior art keywords
- frame
- maximum suppression
- frames
- candidate
- unit
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/067—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种能对非极大值抑制处理加速的神经网络加速器,所述加速器包括非极大值抑制模块,其中,所述非极大值抑制模块包括:候选边框输入单元,其用于在每种预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框;边框存储单元,其用于存储候选边框单元输入的首个边框以及新目标的边框;边框交并比运算单元,其用于进行交并比运算以得到交并比值;交并比对比单元,其用于将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;边框处理单元,其用于将新目标的边框作为满足预定要求的边框存入边框存储单元,并通知候选边框输入单元输入下一个候选的边框。
Description
技术领域
本发明涉及神经网络加速器领域,具体来说涉及神经网络加速器在图像视觉任务处理中的应用,更具体地说,涉及一种能对非极大值抑制处理加速的神经网络加速器。
背景技术
随着神经网络模型在计算机视觉任务图像处理过程中的部署,以及大规模图像加速卡的迭代与性能提升,图像视觉处理任务的预测准确性与速度相比传统视觉方案有了显著的提升。然而,在执行基于神经网络的视觉任务过程中,仍存在部分算子不兼容的问题,其中,算子是指执行例如池化、卷积等基本运算操作的运算单元,其分为可由特殊运算单元转换为常规基本运算单元的可转换算子和不可由特殊运算单元转换为常规基本运算单元的不可转换算子。
对于可转换算子,现有的方法直接通过神经网络算法对其进行处理(即采用软件的方法实现),常见的例如针对特征图的高斯滤波、针对目标检测中的边框处理以及针对RGB图像转换为YUV图像的运算任务,其中,高斯滤波运算属于经典的卷积运算,其通过对通道大尺寸图像进行处理使其更符合多像素模式下的调度;针对如目标跟踪等任务中的边框后处理任务,由于其包含部分指数运算与多项式计算的结合,故需要添加小规模的查找表以配合运算阵列的流水处理,而边框处理的后续运算属于经典的多项式运算,可转换为多组神经网络流进行部署;针对以图像形式的转换,其转换也可以采用经典的加权乘法与累加运算完成,通过数据的转换将对应权重进行排列直接与RGB数据完成MAC运算,并在多像素处理模式下取得较优的加速效果。
对于不可转换的算子,则需要将其转换到专用的神经网络加速器上才能进行运算的加速,例如目标检测算法中用于边框筛选的非极大值抑制算法(Non-maximumsuppression,NMS),目前业内尚未提出能对其进行加速的神经网络加速器设计。
总的来说,在现有的利用神经网络进行图像视觉任务中,尤其是目标检测的算法中的非极大值抑制算法中,由于部分的算子不兼容问题,神经网络算法的资源利用率不高,因此需要设计专用的神经网络加速器,采用硬件对算法进行加速。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种能对非极大值抑制处理加速的神经网络加速器。
本发明的目的是通过以下技术方案实现的:
根据本发明的第一方面,提供一种能对非极大值抑制处理加速的神经网络加速器,所述加速器包括非极大值抑制模块,其中,所述非极大值抑制模块包括:候选边框输入单元,其用于在每种预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框,所述候选的边框包括边框的位置信息以及类别置信度;边框存储单元,其用于存储候选边框单元输入的首个边框以及新目标的边框;边框交并比运算单元,其用于将候选边框输入单元输入的非首个边框与边框存储单元中当前存储的边框进行交并比运算以得到交并比值;交并比对比单元,其用于将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;边框处理单元,其用于将新目标的边框作为满足预定要求的边框存入边框存储单元,并通知候选边框输入单元输入下一个候选的边框。
在本发明的一些实施例中,非极大值抑制模块包括预设数量的多组边框交并比运算单元和交并比对比单元,每组边框交并比运算单元和交并比对比单元用于将候选边框输入单元输入的非首个边框同时与边框存储单元中当前全部已存的边框进行交并比运算以及将得到的交并比值与预设的交并比阈值进行对比。
在本发明的一些实施例中,所述预设的交并比阈值指示输入的边框是否为新目标的边框,其中,当经过边框交并比运算单元获得的交并比值小于所述预设的交并比阈值时判定输入的边框为新目标的边框并输出第一数值至边框处理单元,否则交并比对比单元判定输入的边框为非新目标的边框并输出第二数值至边框处理单元。
在本发明的一些实施例中,所述边框处理单元被配置为按照以下规则对输入的非首个候选的边框进行处理:当所有存储的边框对应的交并比对比单元均输出第一数值时,将输入的候选的边框存储;当任意存储的边框对应的交并比对比单元输出第二数值时,将输入的候选的边框丢弃。
优选的,对于每种预测类别对应的非极大值抑制模块,当每个非极大值抑制模块中的边框存储单元中存储的边框达到预设数量时停止当前类别的非极大值抑制。
优选的,所述加速器包括多个非极大值抑制模块,每个非极大值抑制模块对多种预测类别中的一种预测类别的候选的边框进行非极大值抑制处理,不同非极大值抑制模块并行进行对应预测类别的非极大值抑制处理。
根据本发明的第二方面,提供一种基于本发明第一方面所述加速器的非极大值抑制处理方法,所述方法包括:S1、将需要进行非极大值抑制的候选的边框按照类别进行分类,并按类别置信度由高到低的顺序进行排序;S2、采用每种预测类别对应的非极大值抑制模块并行对该预测类别进行非极大值抑制,直至所有非极大值抑制模块均完成对应预测类别的非极大值抑制处理,并输出全部非极大值抑制模块的边框存储单元存储的所有边框。
在本发明的一些实施例中,所述步骤S2包括:S21、在当前预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框;S22、将首个边框直接存入边框存储单元中,并将非首个边框与边框存储单元中当前存储的边框进行交并比运算以得到交并比值,以及将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;S23、将新目标的边框存入边框存储单元,并通知候选的边框输入单元输入下一个候选的边框,直至候选的边框输入完毕或者当边框存储单元中存储的边框达到预设的数量时停止当前类别的非极大值抑制处理。
与现有技术相比,本发明的优点在于:通过定制一种能对非极大值抑制进行加速的神经网络加速器对目标检测中非极大值抑制算法进行加速,以降低神经网络任务的处理时延。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的一种能对非极大值抑制处理加速的神经网络加速器中的非极大值抑制模块的结构示意图;
图2为根据本发明实施例的交并比运算示意图;
图3为根据本发明实施例的边框处理示意图;
图4为根据本发明实施例的一种基于神经网络加速器的非极大值抑制处理方法的流程示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如在背景技术部分提到的,在执行基于神经网络的多视觉任务过程中,仍存在部分的算子不兼容问题,并且对于其中的不可转换的算子,需要将其转换到专用的神经网络加速器上进行运算的加速。因此,发明人通过研究设计了一种能对非极大值抑制处理进行加速的神经网络加速器,针对现有的非极大值抑制算法通过硬件进行加速,以提升运算速度。
首先简单介绍一下非极大值抑制算法的基本思想,现有的目标检测算法对于一副图像中的每个目标都会产生数量庞大的待筛选边框,然而,有许多待筛选边框都指向了同一个目标,也就是说存在大量冗余边框,而非极大值抑制算法的目的则在于消除这些冗余框,对于每个目标只保留置信度最高的边框以表达目标的最佳位置。现有的目标检测算法包括以下步骤:
步骤1、对输入的图像进行检测,得到预测多个待筛选的边框,每个待筛选的边框包括该边框所对应的类别和该类别的置信度;
步骤2、根据设定的置信度阈值,移除类别的置信度低于该置信度阈值的边框,得到候选的边框;此步骤可以通过预设的置信度阈值将低置信度的边框剔除,以减少后续非极大值抑制的工作量,置信度阈值可以为0.2、0.25、0.3或者0.4;
步骤3、在不同的类别中,分别对候选的边框进行非极大值抑制处理,移除冗余的边框,得到非极大值抑制的结果;其中,步骤3包括:
步骤31、将当前所有的候选的边框构建候选集合,选取其中置信度最高的边框A添加至输出列表,并将其从候选集合中删除;
步骤32、分别计算当前的候选集合中的各个边框与边框A的交并比(I ntersect ion over Un i on,I oU)值,并将其中交并比值大于预设交并比阈值的边框从候选集合移除(被移除的边框为边框A的冗余边框,没被移除则说明可能是新目标);
步骤33、重复上述过程,直到候选集合为空,并将输出列表中的边框输出。本发明主要通过将上述目标检测算法的步骤3应用到定制的神经网络加速器上以实现对非极大值抑制算法的加速。
优选的,本发明将需要进行非极大值抑制的候选的边框按照类别进行分类,并且每个类别的边框均按照置信度升序或者降序进行排序。应当理解,将需要进行非极大值抑制的候选的边框按照类别进行分类以及排序的过程可以在计算机内执行,也可在加速器内执行,例如在加速器的算力允许的情况下可以在加速器内进行候选的边框的分类以及排序,而在候选的边框的类别以及数量庞大时则可以在计算机内执行候选的边框的分类以及排序,本领域技术人员可以根据实际应用场景进行调整、设置,本发明对此不作任何限制。
为了更好地理解本发明,下面结合具体的实施例以及附图进行说明。
根据本发明的一个实施例,本发明提供一种能对非极大值抑制处理加速的神经网络加速器,该神经网络加速器可以为AS I C芯片、FPGA以及其他形式的集成电路或芯片等硬件形式,本发明对此不做限制。该神经网络加速器包括非极大值抑制模块,所述神经网络加速器可配置多个非极大值抑制模块,每个非极大值抑制模块用于一种预测类别的非极大值抑制,在实际应用中可根据图像中所实际包含的预测类别来选择使用多少个非极大值抑制模块,同时,在实际应用中多个非极大值抑制模块可同时对自身对应的预测类别进行非极大值抑制,以实现非极大值抑制的加速。需要说明的是,本发明对图像包含的预测对象的类别进行了分类,并且为每一种预测类别分别配置一个对应的非极大值抑制模块,然而由于每个预测类别可能包含若干个目标,因此,进一步地,本发明在需要每一种预测类别进行多个目标的非极大值抑制,以检测出多个不同的目标。例如,简化来说,假设一个神经网络的任务是预测一张图像中是否包含有人、车、狗三种类别的目标以及检测出不同目标的位置,其中,人这个类别下又包含有四个不同的人(这四个人属于人这个预测类别下的四个不同的目标),因此本实施例可以使用三个非极大值抑制模块来分别对人、车、狗这三个预测类别进行非极大值抑制,并且需要在人这个预测类别中检测出四个不同目标的人的位置。而现有技术只能依据通用处理器按照神经网络中指定的顺序依次对每个类别进行非极大值抑制,计算效率低,而本发明则可借助多个非极大值抑制模块并行对不同的类别进行非极大值抑制,从而更快地完成非极大值抑制处理,降低神经网络的预测时延,提升用户体验。
为了方便理解,下面以一种预测类别对应的一个非极大值抑制模块所包含的各个单元进行说明,一个非极大值抑制模块的具体结构可参照附图1所示,包括:候选的边框输入单元、边框存储单元、边框交并比运算单元、交并比对比单元和边框处理单元,下面分别对各个单元进行说明。
根据本发明的一个实施例,候选边框输入单元用于在每种预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框(即上文在计算机中或在加速器中按照置信度降序或升序进行排列后的候选的边框),所述候选的边框包括边框的位置信息以及类别置信度。所述边框的位置信息为边框坐标,为便于计算,通常以边框的左上-右下顶点的坐标指示边框信息;应当理解,也可采用其他的表示形式,比如:右上-左下顶点坐标,或者预定的锚框位置和该边框相对预定锚框的偏移位置,本发明对此不作任何限制;所述类别置信度为边框对应于当前类别的类别分类概率,置信度越高,说明该边框越能正确指示目标的位置。需要说明的是,候选边框输入单元将首个置信度最高的候选的边框发送至边框存储单元,并将后续非首个的候选的边框发送至各个边框交并比运算单元。
边框存储单元接收来自候选边框输入单元发送的首个置信度最高的候选的边框以及来自边框处理单元发送的新目标的边框。根据本发明的一个实施例,边框存储单元用于存储候选边框单元输入的首个边框以及新目标的边框。对于每个非极大值抑制模块,直接将当前预测类别的需要进行非极大值抑制的候选的边框中置信度最高的边框(即首个候选的边框)直接存入边框存储单元中。而对于非首个的候选的边框,则需要通过边框处理单元来判断其是否为新目标再将其发送给边框存储单元进行存储。
为了进一步提升计算效率,优选的,每个非极大值抑制模块包括预设数量的多组边框交并比运算单元和交并比对比单元,一组边框交并比运算单元和交并比对比单元对应边框存储单元中当前存储的一个边框。
边框交并比运算单元可以进行改进以在出现新目标时同时进行原有的目标和新目标的边框交并比运算。由此,可以将剩余的候选的边框分别与边框存储单元已存的所有的边框进行交并比运算,以更高效地移除冗余边框;而不是像现有技术一样,需将所有候选的边框中与一个目标的边框冗余的边框移除后,再从剩余的候选边框选出置信度最高的边框作为新目标边框,再将其余所有候选的边框中与该新目标的边框冗余的边框移除,并重复前述步骤。根据本发明的一个实施例,边框交并比运算单元用于将候选边框输入单元输入的非首个边框与边框存储单元中当前存储的边框(可能仅有首个边框;或者有首个边框和至少一个新目标的边框)进行交并比运算以得到交并比值。交并比运算的过程示意可参照附图2,假设两个边框A和B的坐标(左上-右下顶点坐标)分别为:边框A[0,0,2,2],边框B[1,1,3,3],此时交面积为(2-1)*(2-1)=1,并面积为(2-0)*(2-0)+(3-1)*(3-1)-(2-1)*(2-1)=7,此时的交并比=交面积/并面积=1/7。应当理解,计算交并比值的方式并不限定于采用左上-右下顶点坐标来进行计算,也可采用右上-左下顶点坐标,以及其他的方式,本领域技术人员可以按需调整,本发明对此不作任何限制。当前已存储的边框对应的边框交并比运算单元在接收到来自候选边框输入单元发送的非首个的候选的边框后,同时进行交并比值的计算,并将计算结果发送至与其相联的交并比对比单元。
交并比对比单元接收来自与其相联的边框交并比运算单元计算得到的交并比值以判断候选的边框是否为新目标的边框。根据本发明的一个实施例,交并比对比单元用于将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框。所述预设的交并比阈值指示输入的边框是否为新目标的边框,交并比阈值通常可以设置为0.5、0.55或者0.6。进一步地,当两个边框经过计算后的交并比值大于预设的交并比阈值时说明两个边框重叠部分较大,可以判定两个边框属于同一个目标,因此需要舍弃置信度较低的那一个;当两个边框经过计算后的交并比值小于预设的交并比阈值时说明两个边框重叠部分较小,可以判定两个边框不属于同一个目标,在本发明中,则说明当前输入的候选的边框属于新目标的边框。应当理解,交并比阈值可以在初始开始进行非极大值抑制时通过计算机进行设定,并传输至所述加速器,加速器可将其存储至各个非极大值抑制模块中的边框交并比对比单元中以方便后续与经过边框交并比运算单元计算的交并比值进行对比。
优选的,当经过边框交并比运算单元获得的交并比值小于所述预设的交并比阈值时判定输入的边框为新目标的边框并输出第一数值至边框处理单元,否则交并比对比单元判定输入的边框为非新目标的边框并输出第二数值至边框处理单元。在本发明中,每个非极大值抑制模块包括预设数量的多组边框交并比运算单元和交并比对比单元,一组边框交并比运算单元和交并比对比单元对应边框存储单元中当前存储的一个边框,当候选边框输入单元输入新的非首个边框时,其被边框存储单元中当前全部已存的边框各自对应的交并比运算单元和交并比对比单元共享,并行(同时)进行交并比运算以及将得到的交并比值与预设的交并比阈值进行对比,该过程通过并行将输入的非首个边框与每一个已存的边框进行交并比运算与交并比对比,在不同非极大值抑制模块并行进行各个预测类别的非极大值抑制基础上,使得各个非极大值抑制模块能够进一步加速非极大值抑制的整个过程,而现有的非极大值抑制算只能依次将当前候选集合中所有的边框与最新添加至输出列表的一个边框(即前述步骤31中的边框A)进行交并比对比,无法实现并行的交并比对比过程。
边框处理单元接收来自所有交并比对比单元输出的交并比对比结果以判断是否需要存储对应的边框。根据本发明的一个实施例,边框处理单元用于将新目标的边框作为满足预定要求的边框存入边框存储单元,并通知选边框输入单元输入下一个候选的边框。参照附图3所示,在每个非极大值抑制模块中,所述边框处理单元被配置为按照以下规则对输入的非首个候选的边框进行处理:当所有存储的边框对应的交并比对比单元均输出第一数值时,此时说明输入的候选的边框与当前已存储的所有边框均不属于同一目标,属于一个新目标,因此将输入的候选的边框存储;当任意存储的边框对应的交并比对比单元输出第二数值时,此时说明输入的候选的边框与输出第二数值的交并比对比单元所对应的已存边框属于同一目标,因此将输入的候选的边框丢弃。
需要说明的是,为了进一步提升计算效率,也可设置每个类别的最大检出目标数量。比如,每个类别的最大检出目标数量可以等于或者小于所述预设数量。对应的,假设的最大检出目标数量等于所述预设数量,对于每种预测类别对应的非极大值抑制模块,当每个非极大值抑制模块中的边框存储单元中已存储的边框达到预设数量(即附图3中的n)时,由于按照置信度顺序由高到底进行非极大值抑制,因此当边框存储单元中的已存边框达到n时,说明已经检测出了当前类别的n个目标,即使后续仍有未处理的边框,由于其置信度小于当前已存的全部边框,因此不再进行后续的非极大值抑制,并停止当前类别的非极大值抑制。当然,最大检出目标数量也可设为其他数值,如果一个类别的最大检出目标数量设为6,而n为20,则在当边框存储单元中的已存边框达到6时,则停止处理该类别的其余的候选的边框。
根据本发明的一个实施例,本发明提供一种基于所述加速器的非极大值抑制处理方法,参照附图4所示,所述方法包括:S1、将需要进行非极大值抑制的候选的边框按照类别进行分类,并按类别置信度由高到低的顺序进行排序;S2、采用每种预测类别对应的非极大值抑制模块并行对该预测类别进行非极大值抑制,直至所有非极大值抑制模块均完成对应预测类别的非极大值抑制处理,并输出全部非极大值抑制模块的边框存储单元存储的所有边框。所述步骤S2包括:S21、在当前预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框;S22、将首个边框直接存入边框存储单元中,并将非首个边框与边框存储单元中当前存储的边框进行交并比运算以得到交并比值,以及将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;S23、将新目标的边框存入边框存储单元,并通知候选的边框输入单元输入下一个候选的边框,直至候选的边框输入完毕或者当边框存储单元中存储的边框达到预设的数量时停止当前类别的非极大值抑制处理。
综上所述,与现有技术相比,本发明的优点在于:通过定制一种能对非极大值抑制进行加速的神经网络加速器对目标检测中非极大值抑制算法进行加速,以降低神经网络任务的处理时延。进一步地,本发明提供的神经网络加速器中的每个非极大值抑制模块中包含的边框存储单元可以存储当前预测类别下指定数量的目标边框,并通过多个非极大值抑制模块之间的并行运算,以及每个非极大值抑制模块中的多组边框交并比运算单元与交并比对比单元的并行运算,进一步提升运算速度。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种能对非极大值抑制处理加速的神经网络加速器,其特征在于,所述加速器包括非极大值抑制模块,其中,所述非极大值抑制模块包括:
候选边框输入单元,其用于在每种预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框,所述候选的边框包括边框的位置信息以及类别置信度;
边框存储单元,其用于存储候选边框单元输入的首个边框以及新目标的边框;
边框交并比运算单元,其用于将候选边框输入单元输入的非首个边框与边框存储单元中当前存储的边框进行交并比运算以得到交并比值;
交并比对比单元,其用于将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;
边框处理单元,其用于将新目标的边框作为满足预定要求的边框存入边框存储单元,并通知候选边框输入单元输入下一个候选的边框。
2.根据权利要求1所述的加速器,其特征在于,非极大值抑制模块包括预设数量的多组边框交并比运算单元和交并比对比单元,每组边框交并比运算单元和交并比对比单元用于将候选边框输入单元输入的非首个边框同时与边框存储单元中当前全部已存的边框进行交并比运算以及将得到的交并比值与预设的交并比阈值进行对比。
3.根据权利要求2所述的加速器,其特征在于,所述预设的交并比阈值指示输入的边框是否为新目标的边框,其中,当经过边框交并比运算单元获得的交并比值小于所述预设的交并比阈值时判定输入的边框为新目标的边框并输出第一数值至边框处理单元,否则交并比对比单元判定输入的边框为非新目标的边框并输出第二数值至边框处理单元。
4.根据权利要求3所述的加速器,其特征在于,所述边框处理单元被配置为按照以下规则对输入的非首个候选的边框进行处理:
当所有存储的边框对应的交并比对比单元均输出第一数值时,将输入的候选的边框存储;
当任意存储的边框对应的交并比对比单元输出第二数值时,将输入的候选的边框丢弃。
5.根据权利要求4所述的加速器,其特征在于,对于每种预测类别对应的非极大值抑制模块,当每个非极大值抑制模块中的边框存储单元中存储的边框达到预设数量时停止当前类别的非极大值抑制。
6.根据权利要求5所述的加速器,其特征在于,所述加速器包括多个非极大值抑制模块,每个非极大值抑制模块对多种预测类别中的一种预测类别的候选的边框进行非极大值抑制处理,不同非极大值抑制模块并行进行对应预测类别的非极大值抑制处理。
7.一种基于权利要求1-6之一所述加速器的非极大值抑制处理方法,其特征在于,所述方法包括:
S1、将需要进行非极大值抑制的候选的边框按照类别进行分类,并按类别置信度由高到低的顺序进行排序;
S2、采用每种预测类别对应的非极大值抑制模块并行对该预测类别进行非极大值抑制,直至所有非极大值抑制模块均完成对应预测类别的非极大值抑制处理,并输出全部非极大值抑制模块的边框存储单元存储的所有边框。
8.根据权利要求7所述的非极大值抑制处理方法,其特征在于,所述步骤S2包括:
S21、在当前预测类别下按类别置信度由高到低的顺序输入需要进行非极大值抑制处理的候选的边框;
S22、将首个边框直接存入边框存储单元中,并将非首个边框与边框存储单元中当前存储的边框进行交并比运算以得到交并比值,以及将边框交并比运算单元获得的交并比值与预设的交并比阈值进行对比以确定当前输入的边框是否为新目标的边框;
S23、将新目标的边框存入边框存储单元,并通知候选的边框输入单元输入下一个候选的边框,直至候选的边框输入完毕或者当边框存储单元中存储的边框达到预设的数量时停止当前类别的非极大值抑制处理。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序可被处理器执行以实现权利要求7或者8所述方法的步骤。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求7或者8所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310072085.3A CN116090531A (zh) | 2023-01-13 | 2023-01-13 | 一种能对非极大值抑制处理加速的神经网络加速器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310072085.3A CN116090531A (zh) | 2023-01-13 | 2023-01-13 | 一种能对非极大值抑制处理加速的神经网络加速器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116090531A true CN116090531A (zh) | 2023-05-09 |
Family
ID=86206061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310072085.3A Pending CN116090531A (zh) | 2023-01-13 | 2023-01-13 | 一种能对非极大值抑制处理加速的神经网络加速器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116090531A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116596990A (zh) * | 2023-07-13 | 2023-08-15 | 杭州菲数科技有限公司 | 目标检测方法、装置、设备及存储介质 |
-
2023
- 2023-01-13 CN CN202310072085.3A patent/CN116090531A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116596990A (zh) * | 2023-07-13 | 2023-08-15 | 杭州菲数科技有限公司 | 目标检测方法、装置、设备及存储介质 |
CN116596990B (zh) * | 2023-07-13 | 2023-09-29 | 杭州菲数科技有限公司 | 目标检测方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Law et al. | Cornernet: Detecting objects as paired keypoints | |
CN110503112B (zh) | 一种增强特征学习的小目标检测及识别方法 | |
CN109543662B (zh) | 基于区域提议的目标检测方法、系统、装置和存储介质 | |
CN110610166B (zh) | 文本区域检测模型训练方法、装置、电子设备和存储介质 | |
US10049441B2 (en) | Iterative defect filtering process | |
CN105786860B (zh) | 一种数据建模中的数据处理方法及装置 | |
CN110781819A (zh) | 一种图像目标检测方法、系统、电子设备及存储介质 | |
CN110517262B (zh) | 目标检测方法、装置、设备及存储介质 | |
CN113139543B (zh) | 目标对象检测模型的训练方法、目标对象检测方法和设备 | |
CN116090531A (zh) | 一种能对非极大值抑制处理加速的神经网络加速器 | |
CN112906823B (zh) | 目标对象识别模型训练方法、识别方法及识别装置 | |
CN113076992A (zh) | 一种生活垃圾检测方法及装置 | |
CN113435998B (zh) | 贷款逾期预测方法、装置、电子设备及存储介质 | |
CN111242066B (zh) | 大尺寸图像目标检测方法、装置及计算机可读存储介质 | |
JP2019159959A (ja) | 検査システム、識別システム、及び学習データ生成装置 | |
CN115439700B (zh) | 一种图像处理方法、装置和机器可读存储介质 | |
US11500767B2 (en) | Method and device for determining a global memory size of a global memory size for a neural network | |
CN113095515A (zh) | 业务故障信息处理方法及装置 | |
CN114237182B (zh) | 机器人调度方法及系统 | |
KR102285269B1 (ko) | 빅데이터 기반 Geo AI를 활용한 이미지 분석 장치 및 방법 | |
CN115482277A (zh) | 一种社交距离风险预警方法及装置 | |
CN115147405A (zh) | 一种快速新能源电池无损检测方法 | |
KR20220068357A (ko) | 딥러닝 객체 검출 처리 장치 | |
Diaz-Zapata et al. | Yolo-based panoptic segmentation network | |
CN112861708A (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 |