一种YOLO算法的高能效FPGA加速架构

文档序号:32601696发布日期:2022-12-17 16:19阅读:913来源:国知局
一种YOLO算法的高能效FPGA加速架构
一种yolo算法的高能效fpga加速架构
技术领域
1.本发明涉及fpga加速的技术领域,尤其涉及一种yolo算法的高能效fpga加速架构。


背景技术:

2.随着社会逐渐智能化,人工智能成为近几年的热点话题,深度学习是人工智能领域的一个重要研究领域。以卷积神经网络为代表,深度学习在过去的几年中取得了许多成果,比如在目标检测、图像的分割迁移等领域。深度学习算法主要是利用cpu、gpu或者asic(专用集成电路)进行推理运算的。与cpu和gpu相比,fpga具有低功耗、高能效的优点。与asic相比,fpga具有灵活性高、成本低、开发周期短的优点。fpga具有高并行性、可重构性、功耗低的特点,且擅长处理大规模的并行计算,易于在实际场景中使用。在目标检测领域,最具代表的算法有faster r-cnn、ssd、yolo算法。与其他两种算法相比,yolo算法计算速度快、精度更高。yolo算法将目标检测转化为归一化问题,从输入图片到输出结果只需一个阶段,不像其他网络在识别的过程中需要两三个阶段才输出检测结果。作为目标检测领域最主流的检测算法,yolo算法在性能上表现更加优异,得到了业界的认可。
3.目前,fpga加速神经网络的主要研究点集中在三方面,分别是数据的量化方式、硬件加速单元的设计以及数据存储与传输的设计。fpga的资源是有限的,数据量化会减少对fpga的资源的消耗,一些硬件设计架构中并没有考虑到这一点。目前常用的方法是定点量化,将整个网络参数的小数点确定在某一位,在推理过程中小数点的位置不发生改变。神经网络各层的参数特点不同,定点量化会对数据的精度产生很大的影响,使目标检测的精度降低,因此如何权衡数据精度与fpga的资源的耗费是一个关键性的问题。在计算过程中,加速器的计算单元需要和外部存储交换数据,通用的加速器在数据传输上并不能充分发挥fpga并行计算的优势,因此,计算单元的设计中要尽可能的提高计算的并行性,提高总线带宽的实际利用率,充分利用fpga多通道并行传输的优势,否则计算单元与存储系统之间的传输,可能成为整个设计架构的瓶颈。目前大部分的硬件加速器在图像后处理中只考虑了预测框与真实框之间重叠面积这一因素并没有考虑中心坐标与长宽比等因素,因此在实际应用中常常出现识别率低的现象。


技术实现要素:

4.针对现有硬件加速器在目标检测过程中系统功耗高、能效低、延时长以及难以在资源受限场景上部署的技术问题,本发明提出一种yolo算法的高能效fpga加速架构,结合yolov2神经网络的结构特点,具有低功耗、高能效、高精度的特点,降低了目标检测中的功耗,提高目标检测系统的检测速度和精度,适用于移动设备的部署。
5.为了达到上述目的,本发明的技术方案是这样实现的:一种yolo算法的高能效fpga加速架构,包括arm处理器和fpga加速单元,arm处理器通过多路dma通道与fpga加速单元相连;所述arm处理器实现处理数据的加载和通过改进非极大值抑制算法获取目标检测
结果,fpga加速单元实现yolo算法核心运算的硬件加速;所述fpga加速单元包括yolo计算单元、权重缓冲单元、输入缓冲单元和输出缓冲单元,输入缓冲单元和权重缓冲单元的输入端分别通过多路dma通道与arm处理器相连接,输入缓冲单元和权重缓冲单元的输出端均与yolo计算单元的输入端相连接,yolo计算单元的输出端与输出缓冲单元的输入端相连接,输出缓冲单元的输出端通过多路dma通道与arm处理器相连接。
6.优选地,所述arm处理器分别与摄像头、存储器相连接,arm处理器用于将摄像头获取的图像信息保存在存储器中。
7.优选地,yolov2神经网络采用卷积层参数融合方法进行参数融合,yolov2神经网络采用数据动态定点量化方法对各层输入特征图数据、权重以及偏置参数进行量化;所述输入缓冲单元和输出缓冲单元内部至少包含2个可并行工作的存储器体,存储器体与多路dma通道的dma通道相连接。
8.优选地,所述yolo计算单元包括卷积运算单元、池化单元和重排序单元,所述输入缓冲单元的输出端分别与卷积运算单元、池化单元和重排序单元相连接,权重缓冲单元的输出端与卷积运算单元相连接,卷积运算单元、池化单元和重排序单元的输出端均通过多路选择器与输出缓冲单元的输入端相连接。
9.优选地,所述yolov2神经网络的卷积层通过时分复用的方法调用卷积计算单元;所述yolov2神经网络的卷积层包含卷积核的尺寸分别为1
×
1和3
×
3,卷积计算单元内设有1
×
1卷积核和3
×
3卷积核的计算引擎,卷积层通过选择器选择相应的计算引擎。
10.优选地,所述卷积运算单元将输入缓冲单元的特征图以及权重缓冲单元的权重参数在输入通道、输出通道的两个维度上进行展开,使用多个相互独立的乘法器对输入的特征图以及权重进行乘法运算,再使用加法器将所得结果相加后通过多路选择器输入到输出缓冲单元;所述卷积运算单元通过分块策略从片外读取输入特征图以及对应的权重参数。
11.优选地,所述池化单元每个时钟周期从输入缓冲单元中读取数据,进行s
×
s次比较之后,将最大值写入输出缓冲单元中,实现多个通道上的池化计算并行处理,其中,s为池化步长;所述重排序单元每次从输入缓冲单元读取1个像素通过多路选择器写入对应的输出缓冲单元,将k
×
k邻域内的输入像素输出到k
×
k张的输出特征图相同位置;所述数据动态定点量化方法为对yolov2神经网络进行动态16位定点量化,将float32型数据量化为int16定点数据,再根据yolov2神经网络每个卷积层的参数特点,对各层的输入特征图、权重参数以及偏置参数进行量化,找到各层参数最优的数据位宽。
12.优选地,所述卷积层参数融合方法将卷积层与批量归一化层进行融合,将卷积计算与线性变换融合得到新的线性变换则新的卷积核权重为新的偏置参数为其中,w为卷积层的权重参数,b为卷积层的偏置参数,e(x)是输入特征向量x的均值,var(x)是输入特征向量x的方差,γ,β是yolov2神经网络训练阶段的两个缩放因子。
13.优选地,所述多路dma通道包括若干路dma通道,所述权重缓冲单元的输入端通过至少2路dma通道与arm处理器相连接,输入缓冲单元的输入端通过至少2路dma通道与arm处理器相连接,输出缓冲单元的输出端通过至少2路dma通道与arm处理器相连接。
14.优选地,所述改进非极大值抑制算法的实现方法为:通过真实框和预测框的重叠率来判断是否为多余候选框,如果真实框和预测框的重叠率大于70%,再通过中心坐标距离选择最优的候选框;若同时满足重叠率和中心坐标距离的要求,判断真实框与目标框的长宽比满足小于阈值;所述长宽比其中,w
gt
、h
gt
、w、h分别表示真实框与预测框的宽度与高度;所述中心坐标距离s2={([a.x]-[b.x])2+([a.y]-[b.y])2},其中,a.x、a.y、b.x、b.y分别代表两个检测框的横纵坐标。
[0015]
与现有技术相比,本发明的有益效果:针对目前目标检测较热门的yolo算法模型进行加速,将fpga与深度学习方法结合,不但实现了低功耗、高能效、实时性强的目标检测,还具有较高的识别精度。本发明使用了乒乓操作结合多通道传输的设计架构,充分利用了fpga高并行性的特点、展现了流水线结构的思想,降低了数据传输的延时;此外,所有模块共同使用输入缓冲单元和输出缓冲单元,实现了数据的高效复用;在arm处理器中修改了非极大值抑制算法,提高了目标检测精度;最后将检测结果在显示屏上进行可视化,实现的功能较以往的加速器更具有多样性,易与不同的场景相结合。
附图说明
[0016]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]
图1为本发明的结构示意图。
[0018]
图2为图1所示卷积运算单元的结构示意图。
[0019]
图3为本发明乒乓缓冲的数据传输示意图。
[0020]
图4为本发明改进非极大值抑制算法的对比图。
具体实施方式
[0021]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0022]
如图1所示,一种yolo算法的高能效fpga加速架构,以fpga为核心,包括arm处理器1和fpga加速单元2。arm处理器1通过多路dma通道3与fpga加速单元2相连;arm处理器1为核心的控制系统,所述arm处理器1实现数据的处理、加载和通过改进非极大值抑制算法获取目标检测结果并输出。其中arm处理器1中cpu内核的作用是控制整个系统的工作进程,包括指令的下达、处理。数据与内存控制用于保存数据以及控制数据的流向。当接受cpu内核发出的指令时,根据指令进行数据的调度。arm处理器1通过axi总线与fpga加速单元2相连接,axi总线上有多种接口,本系统设计中主要使用了axi_hp接口和axi_gp接口,实现数据的交互和信号的传递。数据的传输主要是通过axi_hp接口,利用dma通道传输将数据送到fpga加速单元2中。全局的控制信号主要通过axi_gp接口,之后利用axi总线上的ctrl_bus与fpga
加速单元2连接。使用改进非极大值抑制算法来筛选多余的候选框;改进非极大值抑制算法中结合了候选框的重叠面积、候选框的中心距离以及图像长宽比等多个因素,来提高检测精度。
[0023]
fpga加速单元2是以fpga为核心的平台架构组成的pl(processing logic)端,实现yolo算法核心运算的计算硬件加速。所述fpga加速单元2包括yolo计算单元21、权重缓冲单元24、输入缓冲单元22和输出缓冲单元23,输入缓冲单元22和权重缓冲单元24的输入端分别通过多路dma通道3与arm处理器1相连接,arm处理器1通过axi总线与多路dma通道3相连接,实现arm处理器1与fpga加速单元2之间数据传输。输入缓冲单元22和权重缓冲单元24的输出端均与yolo计算单元21的输入端相连接,yolo计算单元21的输出端与输出缓冲单元23的输入端相连接,输出缓冲单元23的输出端通过多路dma通道3与arm处理器1相连接。输入缓冲单元22和输出缓冲单元23采用乒乓缓冲的设计方法,与多路dma通道更好地配合,将数据的读取、计算以及写回片外这三部分进行流水线操作,使得传输像素块能够以较大的突发长度进行传输,可以有效提高了总线带宽的实际利用率。利用多个dma通道实现片外存储器与片上存储之间的数据交互;各dma通道相互独立,支持并发读取操作。利用输入缓冲单元和输出缓冲单元支持乒乓操作的特性,使用乒乓操作实现yolo加速计算的过程取数据、数据处理和结果写回三部分的流水化并行处理模式,减少数据传输延时。fpga加速单元2中的配置寄存器给出读写地址,这样就能从对应的地址中读出、写入数据。
[0024]
arm处理器1分别与摄像头4与存储器5相连接,arm处理器1用于将摄像头4获取的图像信息保存在存储器5中。摄像头采用免驱双目摄像头,存储器5为外部存储器,进行片外数据的存储。arm处理器首先通过摄像头获取周围环境信息并保存到存储器中,arm处理器通过axi总线将数据加载到fpga加速单元中。fpga加速单元2计算之后,将结果返回至arm处理器,arm处理器进行目标结果的检测,并将结果写在存储器中,完成一次数据的传输与计算。本发明采用了输入缓冲单元和输出缓冲单元共享、乒乓操作相结合的多通道传输的设计架构,充分利用了fpga高并行性的特点;改进非极大值抑制算法提高了目标测精度。该系统架构具有高能效、实时性强的优点。为了节约fpga片上资源,所有计算模块共用一个输入缓冲单元22和输出缓冲单元23。输入缓冲单元22从片外存储中顺序读取输入图像的像素块,按照行优先顺序保存到缓存中。同样的输出缓冲单元23将各模块的运算结果返回到片外存储,各个模块按照这样的顺序依次执行。
[0025]
作为本发明优选的实施方式,多路dma通道3包括若干路dma通道,所述权重缓冲单元24的输入端通过至少2路dma通道与arm处理器1相连接,从存储器中获取权重数据,并加载到权重缓冲单元24中。输入缓冲单元22的输入端通过至少2路dma通道与arm处理器1相连接,输出缓冲单元23的输出端通过至少2路dma通道与arm处理器1相连接。至少有2路dma通道用于从存储器中获取输入的数据,并加载到输入缓冲单元中;至少有2路dma通道用于从输出缓冲单元中获取数据,并加载到存储器中。上述的dma通道相互独立,支持并发读写操作。各dma通道从存储器中获取数据,并传输到输入缓冲单元,由输入缓冲单元送入yolo计算单元,经过yolo计算单元处理后将结果保存到输出缓冲单元,输出缓冲单元通过dma通道将结果写回存储器。利用输入缓冲单元和输出缓冲单元支持乒乓操作的特性,实现yolo加速计算的过程取数据、数据处理和结果写回三部分的流水化并行处理模式。
[0026]
yolov2神经网络采用卷积层参数融合方法进行参数融合,对yolov2网络模型进行
简化,将原始模型中的卷积层与bn层(批量归一化)进行参数融合。yolov2神经网络采用数据动态定点量化方法对各层输入特征图数据、权重以及偏置参数进行量化;在数据的预处理中使用动态量化技术,根据yolo网络的特点,确定各层参数值,保持了原有的数据精度。所述输入缓冲单元22和输出缓冲单元23内部至少包含2个可并行工作的存储器体,以实现乒乓操作,存储器体与多路dma通道3的dma通道相连接。当一个存储器体用接收一路dma通道从存储器中读取到的数据,yolo计算单元可以并行地从另一个存储器体读取数据。当一个存储体接收从yolo计算单元输出的数据时,一路dma通道可以同时从另一个存储器体读取数据,并写回到外部存储器中。由于yolov2神经网络各层参数不同,系统运行时可根据arm处理器的指令,动态的配置推理过程中各网络层的计算方式。本发明支持乒乓缓冲结合多路dma通道的数据传输模式;采用了卷积层参数融合方法、数据动态定点量化技术以及改进非极大值抑制算法来降低硬件资源需求,降低了系统的功耗,提高检测精度。
[0027]
本发明支持乒乓缓冲结合多dma数据传输模式具体为:输入缓冲单元和输出缓冲单元的内部均有多个存储器体,从而实现乒乓缓冲操作,对加速器内部缓冲管道进行优化。如图3所示,乒乓缓冲器具体为:设置了两个数据缓存区,当其中一个缓冲区接受数据并将数据传送到下一级时,另一个缓冲区继续读取数据,这样两个缓冲区交替进行数据的读写,使数据源源不断地流动,节约了数据传输的时间,对加速器内部缓冲管道进行优化体现了流水线设置的思想。计算的整个流程可以分为三部分,分别是片外读取数据、处理数据、将结果写回到片外。使用乒乓缓冲器后,三部分在时间上可以有重叠,降低了fpga推理运算中的延时。从片外读取特征图的过程中,使用4通道dma通道并行读取,先将数据保存在特征图缓存a,下一个时钟周期保存在特征图缓存b。因为在卷积运算的过程中,每次读取的特征图参数量的大小刚好与单通道传输权重参数量大小相匹配,所以权重使用单通道传输。经过yolo计算单元的计算后,使用双通道dma将结果写回片外存储器。由于axi总线上,各个dma通道相互独立,因此所有通道并发执行。
[0028]
作为本发明优选的实施方式,所述yolo计算单元21包括卷积运算单元211、池化单元212和重排序单元213,所述输入缓冲单元22的输出端分别与卷积运算单元211、池化单元212和重排序单元213相连接,权重缓冲单元24的输出端与卷积运算单元211相连接,卷积运算单元211、池化单元212和重排序单元213的输出端均通过多路选择器25与输出缓冲单元23的输入端相连接;因为计算单元有三个分别是卷积、池化、重排序,多路选择器25是将其中一个计算单元的结果保存在输出单元。
[0029]
所述yolov2神经网络的卷积层通过时分复用的方法调用卷积计算单元211,最终完成所有计算。因为fpga的资源是有限的,所以在设计时要考虑资源的使用情况,时分复用技术的引用,使系统在不同的时间段里使用同一电路结构,节约了fpga资源。所述yolov2神经网络的卷积层包含卷积核的尺寸分别为1
×
1和3
×
3,卷积计算单元211内设有1
×
1卷积核和3
×
3卷积核的计算引擎,卷积层通过选择器选择相应的计算引擎,从而实现适用于不同卷积核的加速引擎。卷积运算时通过选择器选择相应的加速引擎,这时候选择器会将这个加速引擎选通,从而使数据加载到这个加速引擎,完成计算。
[0030]
如图2所示,卷积运算单元使用乘法阵列和加法树相结合的方式进行计算。卷积运算单元211将输入缓冲单元22的特征图以及权重缓冲单元24的权重参数在输入通道、输出通道的两个维度上进行展开,使用多个相互独立的乘法器对输入的特征图以及权重进行乘
法运算,再使用加法器将所得结果相加后通过多路选择器25输入到输出缓冲单元23。每次卷积运算的过程中,多路输入通道和输出通道并行计算。如图2所示,每次卷积运算4路输入通道并行,32路输出通道并行。卷积运算单元211通过分块策略从片外读取输入特征图以及对应的权重参数,将数据保存到输入缓冲单元中,采用分块策略的原因是fpga资源有限不能一次完成所有计算,每次需要从存储器里读取部分数据,所以使用分块策略是每次读取的数据按顺序进行传输。卷积运算单元在输入输出通道方向上进行维度展开,使用分块策略、循环展开、时分复用等优化方式提高卷积计算的并行性,利用乘法阵列结合加法树的形式完成卷积运算,能够同时完成多个乘加法运算,相当于提高了计算的并行度从而提高了计算速度。
[0031]
令cin表示输入通道数,cout表示输出通道数,按照分块策略的规则,在输入通道上cin被分成cin/tn块,输出通道方向上cout被分成cout/tm块。每个通道上原始输入特征图大小为xin
×
yin被分成(xin/txin)
×
(yin/tyin)块,输出通道上输出特征图xout
×
yout被分成(xout/txout)
×
(yout/tyout)块。综上所述可得每层卷积运算需要从片外读取卷积核(cin/tn)
×
(cout/tm)
×
(xout/txout)
×
(yout/tyout)次,需要从片外读取特征图(cin/tn)
×
(xin/txin)
×
(yin/tyin)次,从输出缓冲单元写回到片外存储系统(cout/tm)
×
(xout/txout)
×
(yout/tyout)次,按照上述分块策略数据有序的从存储器中读取数据缓存到输入缓存单元中。
[0032]
对池化运算部分使用循环展开、时分复用的优化方法,生成多个比较器,同时完成各通道上的多个计算。所述池化单元212每个时钟周期从输入缓冲单元22中读取数据,进行s
×
s次比较之后,将最大值写入输出缓冲单元23中,实现多个通道上的池化计算并行处理,其中,s为池化步长。在yolov2神经网络中池化层使用的计算方式是最大池化,数据的传输方式与卷积运算单元的传输方式相同。池化单元的设计主要使用的是比较器,计算的池化步长s为2,因此,池化单元每个时钟周期从输入缓冲单元中读取像素值,比较4次之后,将最大值写入输出缓冲单元中。
[0033]
重排序层的处理过程与最大池化层类似,是对单一输入特征图的像素进行抽样排序。最大池化层输出k
×
k邻域内的最大像素到单一输出特征图。所述重排序单元213设计一个多路选择器,每次从输入缓冲单元22读取1个像素通过多路选择器25写入对应的输出缓冲单元23,将k
×
k邻域内的输入像素输出到k
×
k张的输出特征图相同位置。当k=2时,重排序单元只使用1块输入缓冲单元、4块输出缓冲单元和一个四选一多路选择器,每次从输入缓冲单元读取1个像素分别写入对应的4块输出缓冲单元。
[0034]
作为本发明优选的实施方式,所述数据动态定点量化方法为对yolov2神经网络进行动态16位定点量化,将神经网络训练之后的浮点型参数数据转换成16位定点型数据。yolov2训练之后的权重数据类型是float32,fpga的资源是有限的,浮点型数据会增加fpga资源的消耗,因此将float32型数据量化为int16定点数据,再根据yolov2神经网络每个卷积层的参数特点,对各层的输入特征图、权重参数以及偏置参数进行量化,找到各层参数最优的数据位宽即小数点位置,实现在精度损失不大的前提下压缩数据量的效果。
[0035]
量化后的16位定点数的数值可以表示为其中,bi表示第i位的二进制数,bw表示位宽,fl表示小数的位数(阶码)。由于yolo模型中各层参数特点不同,
定点量化会降低数据精度,所以引入动态16位定点量化的方法,根据每层数据的特点,找到最优的小数点位置,从而确定小数位数。首先是对权重的量化最优的阶码用flq表示,其量化的过程可用公式flq=arg min∑|w
float-w(bw,flq)|表示,其中,w
float
表示某层的任意权重参数原始浮点值,w(bw,flq)表示在给定位宽bw和阶码flq下将原始浮点值w
float
定点化后转换回浮点的新浮点数值。通过此种方法,找到最优阶码flq使得原始权重与定点化后的权重绝对误差和最小。偏置参数的量化与其类似,在此不过多叙述。输入特征图按网络的前向顺序进行量化,使每一层的特征图像素有共同的阶码fl
p
。阶码fl
p
满足以下公式fl
p
=arg min∑|p
float-p(bw,fl
p
)|其中,p
float
表示某层的原输出特征图浮点像素值,p(bw,fl
p
)表示给定位宽bw和阶码fl
p
下定点化后转换回浮点的浮点数值,其余部分与权重参数量化类似。
[0036]
所述卷积层参数融合方法将卷积层与批量归一化层(bn层)进行融合,bn层是一个线性变换,直接将其与对应的卷积计算融合,得到新的权重参数和偏置参数。由于bn层一般跟在卷积计算后,激活函数前,bn层实际是做一个线性变换,在网络前向推断时多了一些层的运算,影响了模型的性能,且占用了更多的内存或者显存空间。卷积的计算可表示为y
conv
=w
·
x+b,w为权重参数,b为偏置,卷积层的输出可以看作bn层的输入,因此可以将其与卷积计算融合,得到新的卷积核权重和偏置参数。将卷积计算与线性变换融合得到新的线性变换则新的卷积核权重为新的偏置参数为其中,w为卷积层的权重参数,b为卷积层的偏置参数,e(x)是输入特征向量x的均值,var(x)是输入特征向量x的方差,γ,β是yolov2神经网络训练阶段的两个缩放因子。
[0037]
作为本发明优选的实施方式,所述改进非极大值抑制算法的实现方法为:通过真实框和预测框重叠程度即重叠率来判断是否为多余候选框,重叠率的范围在0~1之间。预测框和原始框重叠面积越大,证明预测框的预测精度越高。本发明如果重叠率大于70%,再通过候选框的中心坐标距离选择最优的候选框,中心坐标距离可通过下面公式求得,中心坐标距离s的值越小证明两个框的距离越近,为多余框的概率越大,同样采取设定阈值的方式进行计算,阈值为0.1,不满足上述条件即判定为多余的候选框。然而这对于小目标的检测是十分困难的,候选框之间的距离可能很小,阈值不容易确定。因此本发明在设计中进一步进行优化,考虑到在检测过程中真实框与目标框的长宽比在理论上应保持一致性。长宽比的设定是为了解决小目标检测问题,在满足上述两个条件之后进行,直到选出最优预测框为止。满足上述两个条件之后,判断真实框与目标框的长宽比满足阈值小于0.3,w
gt
、h
gt
、w、h分别表示真实框与预测框的宽度与高度;阈值c的值越小证明预测框与真实框越相似,就将此框保留。阈值c这个阈值也可以自己根据不同数据集的训练结果确定。如图4所示,中心坐标距离s2={([a.x]-[b.x])2+([a.y]-[b.y])2},其中,a.x、a.y、b.x、b.y分别代表两个检测框的横纵坐标。
[0038]
原yolo v2算法中仅通过候选框的重叠面积来判断是否为多余框的方法,在同一类事物重叠面积较大的情况下或者有遮挡的物体存在时极容易出现漏检现象,因此引入中心距离差值法通过计算候选框中心坐标距离,来选择最优的候选框。改进非极大值抑制算
法考虑了候选框中心点坐标与长宽比的相似度,利用坐标信息和长宽比剔除多余候选框,提高检测精度。
[0039]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1