CN110705588B - 基于通道重排的轻量级目标检测模型及目标检测方法 - Google Patents
基于通道重排的轻量级目标检测模型及目标检测方法 Download PDFInfo
- Publication number
- CN110705588B CN110705588B CN201910814115.7A CN201910814115A CN110705588B CN 110705588 B CN110705588 B CN 110705588B CN 201910814115 A CN201910814115 A CN 201910814115A CN 110705588 B CN110705588 B CN 110705588B
- Authority
- CN
- China
- Prior art keywords
- image data
- convolution operation
- group
- perform
- loss
- 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.)
- Active
Links
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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于通道重排的轻量级目标检测模型及目标检测方法。所述模型包括:第一运算单元,用于对输入图像执行至少一次卷积运算,并输出第一图像数据;第二运算单元,用于将第一图像数据分为第一组图像数据和第二组图像数据,并对第一组图像数据执行池化运算,对第二组图像数据执行至少一次卷积运算,并输出第二图像数据;通道重排单元,用于对第二图像数据进行通道重排,输出第三图像数据;第三运算单元,用于将第三图像数据分为第三组图像数据和第四组图像数据,并对第三组图像数据执行至少一次卷积运算后与第四组图像数据张量拼接,输出第四图像数据;第四运算单元,用于对第四图像数据执行至少一次卷积运算,输出第五图像数据。
Description
技术领域
本发明涉及图像识别技术领域,尤其涉及一种基于通道重排的轻量级目标检测模型及目标检测方法。
背景技术
随着深度学习技术的发展,安防、机载、星载等目标检测的应用对目标检测的处理速度提出了新的要求。受限于平台的计算资源,通过低计算复杂度算法实现高速目标检测能力,成为目标检测的发展方向。
相关技术中,采用卷积神经网络作为目标检测网络。然而,卷积神经网络的实时性差、速度慢,且为了提高性能,卷积神经网络引入了数量过多的参数,导致网络占用过多资源,影响网络的运行速度。
发明内容
本发明实施例提供一种基于通道重排的轻量级目标检测模型及目标检测方法,用以解决现有技术中卷积神经网络在完成目标检测时速度慢的问题。
一方面,本发明实施例提出一种基于通道重排的轻量级目标检测模型,包括:
第一运算单元,用于对含有目标的输入图像执行至少一次卷积运算,并输出第一图像数据;
第二运算单元,用于将所述第一图像数据分为第一组图像数据和第二组图像数据,并对所述第一组图像数据执行池化运算,对所述第二组图像数据执行至少一次卷积运算,并输出第二图像数据;
通道重排单元,用于对所述第二图像数据进行通道重排,输出第三图像数据;
第三运算单元,用于将所述第三图像数据分为第三组图像数据和第四组图像数据,并对所述第三组图像数据执行至少一次卷积运算后与所述第四组图像数据张量拼接,输出第四图像数据;
第四运算单元,用于对所述第四图像数据执行至少一次卷积运算,输出第五图像数据。
根据本发明的一些实施例,所述第一运算单元包括:
第一卷积运算子单元,用于对所述含有目标的输入图像依次执行卷积运算、池化运算,并输出第一预处理图像数据;
第二卷积运算子单元,用于对所述第一预处理图像数据依次执行卷积运算、池化运算,并输出第一图像数据。
根据本发明的一些实施例,所述第二运算单元包括:
第一分组子单元,用于将所述第一图像数据分为所述第一组图像数据和所述第二组图像数据;
第一池化子单元,用于对所述第一组图像数据执行池化运算,并输出第二预处理图像数据;
第三卷积运算子单元,用于对所述第二组图像数据依次执行卷积运算和池化运算,或用于对所述第二组图像数据执行分组卷积运算,并输出第三预处理图像数据;
第四卷积运算子单元,用于对所述第三预处理图像数据依次执行卷积运算和池化运算,或用于对所述第三预处理图像数据执行分组卷积运算,并输出第四预处理图像数据;
第五卷积运算子单元,用于对所述第四预处理图像数据依次执行卷积运算和池化运算,或用于对所述第四预处理图像数据执行分组卷积运算,并输出第五预处理图像数据;
第一张量拼接单元,用于将所述第二预处理图像数据与所述第五预处理图像数据张量拼接,并输出所述第二图像数据。
进一步的,所述第三卷积运算子单元、所述第四卷积运算子单元和所述第五卷积运算子单元均执行分组卷积运算;
所述第三卷积运算子单元,用于将所述第二组图像数据分为两组图像数据,并对该两组图像数据分别执行卷积运算;
所述第四卷积运算子单元,用于将所述第三预处理图像数据分为八组图像数据,并对该八组图像数据分别执行卷积运算;
所述第五卷积运算子单元,用于将所述第四预处理图像数据分为两组图像数据,并对该两组图像数据分别执行卷积运算。
根据本发明的一些实施例,所述通道重排单元,用于:
将执行池化运算后的第一组图像数据分为预设组第一待排通道;
将执行至少一次卷积运算后的第二组图像数据分为预设组第二待排通道;
将所述预设组第二待排通道依次插入相邻两组所述第一待排通道之间,输出所述第三图像数据。
根据本发明的一些实施例,所述第三运算单元包括:
第二分组子单元,用于将所述第三图像数据分为第三组图像数据和第四组图像数据;
第六卷积运算子单元,用于对所述第三组图像数据执行卷积运算或分组卷积运算,并输出第六预处理图像数据;
第七卷积运算子单元,用于对所述第六预处理图像数据执行卷积运算或分组卷积运算,并输出第七预处理图像数据;
第八卷积运算子单元,用于对所述第七预处理图像数据执行卷积运算或分组卷积运算,并输出第八预处理图像数据;
第二张量拼接单元,用于对所述第四组图像数据和所述第八预处理图像数据执行张量拼接,并输出所述第四图像数据。
根据本发明的一些实施例,至少一个卷积运算包括深度可分离卷积。
根据本发明的一些实施例,所述模型,还包括:
损失计算单元,用于根据所述第五图像数据,检测所述目标检测模型的定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失。
进一步的,所述模型还包括:
调整单元,用于根据所述损失计算单元的检测值,调整所述第一运算单元、所述第二运算单元、所述第三运算单元、所述第四运算单元中的至少一个,以使所述损失计算单元的检测值趋于平衡。
另一方面,本发明实施例还提出一种基于通道重排的轻量级目标检测方法,所述目标检测方法用于基于通道重排的轻量级目标检测模型,所述方法包括:
将样本输入所述目标检测模型;
根据定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失,调整所述目标检测模型,直至所述定位框中心点的损失、所述定位框宽度的损失、所述定位框高度的损失、所述定位框面积的损失和所述预测类别的损失的加权和趋于平衡;
将含有目标的输入图像输入所述目标检测模型,以识别所述目标的类别并在所述输入图像中定位所述目标。
采用本发明实施例,通过第二运算单元和第三运算单元对图像数据进行分组运算,可以减少目标检测模型的参数,从而可以减低目标检测模型的计算量、减小目标检测模型的存储空间,进而可以提高目标检测模型的运算速率。另外,通过通道重排单元还可以对第二运算单元输出的数据进行通道重排,从而可以提高数据之间的交互性,进而可以提高目标检测模型的检测性能。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例中基于通道重排的轻量级目标检测模型的结构示意图;
图2是本发明实施例中基于通道重排的轻量级目标检测模型的结构示意图;
图3是本发明实施例中基于通道重排的轻量级目标检测方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
随着深度学习技术的发展,目标检测网络日益成熟,在目标检测的准确率、召回率上达到了很高的精度。然而在安防、机载、星载目标检测等应用中,要求目标检测以更高的速度运行,比如机载、星载应用要能够进行大幅图像目标检测处理,安防应用要进行多路目标检测处理,这些应用都对目标检测的处理速度提出了更高的要求。考虑到平台的计算资源的限制,低计算复杂度算法成为实现高速目标检测能力的主要发展方向。
相关技术中,采用卷积神经网络完成目标检测,但在实际检测过程中,存在如下问题:
1)网络层数过多导致计算量过大。许多卷积神经网络为了提高性能,引入数量过多的参数,导致网络占用过多资源,影响网络的运行速度。
2)在特殊应用场景下目标检测速度慢的问题。在许多场景下,要求目标检测任务的实时性,如果网络处理图片的速度过慢,则不具备这一能力。
3)通道重排算法实现方法较为复杂、时间复杂度高的问题。
为了解决上述技术问题中的至少一个,一方面,本发明实施例提出一种基于通道重排的轻量级目标检测模型1,如图1所示,目标检测模型1包括:第一运算单元10、第二运算单元20、通道重排单元60、第三运算单元30和第四运算单元40。
其中,第一运算单元10用于对含有目标的输入图像执行至少一次卷积运算,并输出第一图像数据。第二运算单元20用于将第一图像数据分为第一组图像数据和第二组图像数据,并对第一组图像数据执行池化运算,对第二组图像数据执行至少一次卷积运算,并输出第二图像数据。
通道重排单元60用于对第二图像数据进行通道重排,输出第三图像数据。第三运算单元30用于将第三图像数据分为第三组图像数据和第四组图像数据,并对第三组图像数据执行至少一次卷积运算后与第四组图像数据张量拼接,输出第四图像数据。第四运算单元40用于对第四图像数据执行至少一次卷积运算,输出第五图像数据。
采用本发明实施例,通过第二运算单元20和第三运算单元30对图像数据进行分组运算,可以减少目标检测模型1的参数,从而可以减低目标检测模型1的计算量、减小目标检测模型1的存储空间,进而可以提高目标检测模型1的运算速率。另外,通过通道重排单元60还可以对第二运算单元20输出的数据进行通道重排,从而可以提高数据之间的交互性,进而可以提高目标检测模型1的检测性能。
在上述实施例的基础上,进一步提出各变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。
根据本发明的一些实施例,第一运算单元10可以包括:第一卷积运算子单元110和第二卷积运算子单元120。第一卷积运算子单元110用于对含有目标的输入图像依次执行卷积运算、池化运算,并输出第一预处理图像数据。第二卷积运算子单元120用于对第一预处理图像数据依次执行卷积运算、池化运算,并输出第一图像数据。
例如,第一卷积运算子单元110可以对接收到的像素为224*224的输入图像执行一次卷积运算后再执行一次池化运算,然后输出112*112*16的第一预处理图像数据,这里的“112*112*16”的含义为第一预处理图像数据包含16个通道,每个通道为112*112的网格阵。第二卷积运算子单元120可以对112*112*16的第一预处理图像数据执行一次卷积运算后再执行一次池化运算,然后输出56*56*32的第一图像数据,这里的“56*56*32”的含义为第一图像数据包含32个通道,每个通道为56*56的网格阵。
根据本发明的一些实施例,第二运算单元20可以包括:第一分组子单元210、第一池化子单元220、第三卷积运算子单元230、第四卷积运算子单元240、第五卷积运算子单元250、第一张量拼接单元260。
第一分组子单元210用于将第一图像数据分为第一组图像数据和第二组图像数据。在本发明的一些示例中,第一分组子单元210可以将第一图像数据平分为第一组图像数据和第二组图像数据。例如,第一分组子单元210可以将56*56*32的第一图像数据平分为56*56*16的第一组图像数据和56*56*16的第二组图像数据,这里的“56*56*16”的含义为第一组图像数据或第二组图像数据包含16个通道,每个通道为56*56的网格阵。
第一池化子单元220可以用于对第一组图像数据执行池化运算,并输出第二预处理图像数据。例如,第一池化子单元220可以对56*56*16的第一组图像数据执行一次池化运算,并输出7*7*16的第二预处理图像数据,这里的“7*7*16”的含义为第二预处理图像数据包含16个通道,每个通道为7*7的网格阵。
第三卷积运算子单元230可以用于对第二组图像数据依次执行卷积运算和池化运算,或用于对第二组图像数据执行分组卷积运算,并输出第三预处理图像数据。
可以理解的是,在本发明的一些实施例中,第三卷积运算子单元230可以对第二组图像数据依次执行卷积运算和池化运算,并输出第三预处理图像数据。例如,第三卷积运算子单元230可以对56*56*16的第二组图像数据执行一次卷积运算后再执行一次池化运算,然后输出28*28*64的第三预处理图像数据,这里的“28*28*64”的含义为第三预处理图像数据包含64个通道,每个通道为28*28的网格阵。
在本发明的另一些实施例中,第三卷积运算子单元230可以对第二组图像数据执行分组卷积运算,并输出第三预处理图像数据。需要说明的是,“分组卷积运算”的含义为将图像数据分为多组,然后分别对每组图像数据进行卷积运算,最后将多组执行卷积运算后的结果数据张量拼接成一组图像数据。例如,
第三卷积运算子单元230可以将56*56*16的第二组图像数据平分为56*56*8的两组,每组第二组图像数据执行一次卷积运算后输出28*28*32的图像数据,然后将两组28*28*32的图像数据张量拼接,输出28*28*64的第三预处理图像数据。
第四卷积运算子单元240用于对第三预处理图像数据依次执行卷积运算和池化运算,或用于对第三预处理图像数据执行分组卷积运算,并输出第四预处理图像数据。
可以理解的是,在本发明的一些实施例中,第四卷积运算子单元240可以对第三预处理图像数据依次执行卷积运算和池化运算,并输出第四预处理图像数据。例如,第四卷积运算子单元240可以对28*28*64的第三预处理图像数据执行一次卷积运算后再执行一次池化运算,然后输出14*14*128的第四预处理图像数据,这里的“14*14*128”的含义为第四预处理图像数据包含128个通道,每个通道为14*14的网格阵。
在本发明的另一些实施例中,第四卷积运算子单元240可以对第三预处理图像数据执行分组卷积运算,并输出第四预处理图像数据。例如,第四卷积运算子单元240可以将28*28*64的第三预处理图像数据平分为28*28*8的八组,每组第三预处理图像数据执行一次卷积运算后输出14*14*16的图像数据,然后将八组14*14*16的图像数据张量拼接,输出14*14*128的第四预处理图像数据。
第五卷积运算子单元250用于对第四预处理图像数据依次执行卷积运算和池化运算,或用于对第四预处理图像数据执行分组卷积运算,并输出第五预处理图像数据。
可以理解的是,在本发明的一些实施例中,第五卷积运算子单元250可以对第四预处理图像数据依次执行卷积运算和池化运算,并输出第五预处理图像数据。例如,第五卷积运算子单元250可以对14*14*128的第四预处理图像数据执行一次卷积运算后再执行一次池化运算,然后输出7*7*256的第五预处理图像数据,这里的“7*7*256”的含义为第五预处理图像数据包含256个通道,每个通道为7*7的网格阵。
在本发明的另一些实施例中,第五卷积运算子单元250可以对第四预处理图像数据执行分组卷积运算,并输出第五预处理图像数据。例如,第五卷积运算子单元250可以将14*14*128的第四预处理图像数据平分为14*14*64的两组,每组第四预处理图像数据执行一次卷积运算后输出7*7*128的图像数据,然后将两组7*7*128的图像数据张量拼接,输出7*7*256的第五预处理图像数据。
第一张量拼接单元260用于将第二预处理图像数据与第五预处理图像数据张量拼接,并输出第二图像数据。例如,第一张量拼接单元260可以将7*7*16的第二预处理图像数据和7*7*256的第五预处理图像数据张量拼接后输出7*7*272的第二图像数据。
根据本发明的一些实施例,通道重排单元60可以具体用于:
将执行池化运算后的第一组图像数据分为预设组第一待排通道;
将执行至少一次卷积运算后的第二组图像数据分为预设组第二待排通道;
将预设组第二待排通道依次插入相邻两组第一待排通道之间,输出第三图像数据。
由此,可以增加执行池化运算后的第一组图像数据与执行卷积运算后的第二组图像数据之间的特征交流,从而可以提高目标检测模型1的检测精确度。另外,本发明实施例中的通道重排单元60在实现通道重排过程中不需要执行大量的指针跳转和存储操作,实现方式简单,耗时短,从而可以提高目标检测模型1的检测效率。
根据本发明的一些实施例,第三运算单元30可以包括:第二分组子单元310、第六卷积运算子单元320、第七卷积运算子单元330、第八卷积运算子单元340和第二张量拼接单元350。
第二分组子单元310可以用于将第三图像数据分为第三组图像数据和第四组图像数据。例如,第二分组子单元310可以将7*7*272的第三图像数据分为7*7*144的第三组图像数据和7*7*128的第四组图像数据,这里的“7*7*144”的含义为第三组图像数据包含144个通道,每个通道为7*7的网格阵,这里的“7*7*128”的含义为第四组图像数据包含128个通道,每个通道为7*7的网格阵。
第六卷积运算子单元320可以用于对第三组图像数据执行卷积运算或分组卷积运算,并输出第六预处理图像数据。第七卷积运算子单元330可以用于对第六预处理图像数据执行卷积运算或分组卷积运算,并输出第七预处理图像数据。第八卷积运算子单元340可以用于对第七预处理图像数据执行卷积运算或分组卷积运算,并输出第八预处理图像数据。
例如,第六卷积运算子单元320可以对7*7*144的第三组图像数据执行一次卷积运算,并输出7*7*256的第六预处理图像数据。第七卷积运算子单元330可以对7*7*256的第六预处理图像数据执行一次卷积运算,并输出7*7*512的第七预处理图像数据。第八卷积运算子单元340可以对7*7*512的第七预处理图像数据执行一次卷积运算,并输出7*7*1024的第八预处理图像数据。
又如,第六卷积运算子单元320可以将7*7*144的第三组图像数据平分为7*7*72的两组,每组第三组图像数据执行一次卷积运算后输出7*7*128的图像数据,然后将两组7*7*128的图像数据张量拼接,并输出7*7*256的第六预处理图像数据。第七卷积运算子单元330可以将7*7*256的第六预处理图像数据平分为7*7*32的八组,每组第六预处理图像数据执行一次卷积运算后输出7*7*64的图像数据,然后将八组7*7*64的图像数据张量拼接,并输出7*7*512的第七预处理图像数据。第八卷积运算子单元340可以将7*7*512的第七预处理图像数据平分为7*7*256的两组,每组第七预处理图像数据执行一次卷积运算后输出7*7*512的图像数据,然后将两组7*7*512的图像数据张量拼接,并输出7*7*1024的第八预处理图像数据。
第二张量拼接单元350可以用于对第四组图像数据和第八预处理图像数据执行张量拼接,并输出第四图像数据。例如,第二张量拼接单元350可以将7*7*128的第四组图像数据和7*7*1024的第八预处理图像数据张量拼接成7*7*1152的第四图像数据。
根据本发明的一些实施例,至少一个卷积运算包括深度可分离卷积运算。
例如,第四卷积运算子单元240可以执行深度可分离卷积运算。第七卷积运算子单元330可以执行深度可分离卷积运算。
根据本发明的一些实施例,所述模型还包括:损失计算单元50,损失计算单元50用于根据第五图像数据,检测目标检测模型1的定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失。
在本发明的一些实施例中,所述模型,还包括:调整单元,用于根据损失计算单元50的检测值,调整第一运算单元10、第二运算单元20、第三运算单元30、第四运算单元40中的至少一个,以使损失计算单元50的检测值趋于平衡。
另一方面,本发明实施例还提出一种基于通道重排的轻量级目标检测方法,所述目标检测方法用于基于通道重排的轻量级目标检测模型,如图3所示,所述方法包括:
S101,将样本输入目标检测模型;
S102,根据定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失,调整目标检测模型,直至定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失和预测类别的损失的加权和趋于平衡;
S103,将含有目标的输入图像输入目标检测模型,以识别目标的类别并在输入图像中定位目标。
进一步的,上述目标检测方法可以用于如上所述的基于通道重排的轻量级目标检测模型1。
采用本发明实施例,通过引入定位框面积的损失,可以对定位框的边框位置形成二维约束,从而可以提高定义框的形状回归。
为了让网络更好的收敛,对损失回归的过程做以下操作:当定位框的宽高比大于某值时,人为地将这次反向传播的学习率增大一倍,以防止坏数据对模型的训练造成较大影响,增加模型的学习能力,同时加速收敛。在实际的实验中,根据数据集的特点将这个阈值设置为4。
下面参照图1-图2以两个具体的实施例详细描述根据本发明实施例的基于通道重排的轻量级目标检测模型1。值得理解的是,下述描述仅是示例性说明,而不是对本发明的具体限制。凡是采用本发明的相似结构及其相似变化,均应列入本发明的保护范围。
实施例一
如图1所示,本发明实施例提出一种基于通道重排的轻量级目标检测模型1,包括:输入单元70、第一运算单元10、第二运算单元20、通道重排单元60、第三运算单元30、第四运算单元40、损失计算单元50和调整单元。
具体的,输入单元70用于输入像素为224*224的输入图像。第一运算单元10可以包括:第一卷积运算子单元110和第二卷积运算子单元120。第一卷积运算子单元110用于对接收到的像素为224*224的输入图像执行一次卷积运算后再执行一次池化运算,然后输出112*112*16的第一预处理图像数据。第二卷积运算子单元120用于对112*112*16的第一预处理图像数据执行一次卷积运算后再执行一次池化运算,然后输出56*56*32的第一图像数据。
第二运算单元20可以包括:第一分组子单元210、第一池化子单元220、
第三卷积运算子单元230、第四卷积运算子单元240、第五卷积运算子单元250、第一张量拼接单元260。第一分组子单元210用于将56*56*32的第一图像数据平分为56*56*16的第一组图像数据和56*56*16的第二组图像数据。第一池化子单元220可以对56*56*16的第一组图像数据执行一次池化运算,并输出7*7*16的第二预处理图像数据。第三卷积运算子单元230用于对56*56*16的第二组图像数据执行一次卷积运算后再执行一次池化运算,然后输出28*28*64的第三预处理图像数据。
第四卷积运算子单元240用于对28*28*64的第三预处理图像数据执行一次深度可分离DW卷积运算后再执行一次池化运算,然后输出14*14*128的第四预处理图像数据。第五卷积运算子单元250用于对14*14*128的第四预处理图像数据执行一次卷积运算后再执行一次池化运算,然后输出7*7*256的第五预处理图像数据。第一张量拼接单元260可以将7*7*16的第二预处理图像数据和7*7*256的第五预处理图像数据张量拼接后输出7*7*272的第二图像数据。
通道重排单元60可以具体用于:将7*7*272的第二图像中7*7*16的第二预处理图像数据分为预设组第一待排通道,将7*7*272的第二图像中7*7*256的第五预处理图像数据分为预设组第二待排通道,将预设组第二待排通道依次插入相邻两组第一待排通道之间,输出7*7*272的第三图像数据。
第三运算单元30可以包括:第二分组子单元310、第六卷积运算子单元320、第七卷积运算子单元330、第八卷积运算子单元340和第二张量拼接单元350。第二分组子单元310可以将7*7*272的第三图像数据分为7*7*144的第三组图像数据和7*7*128的第四组图像数据。
第六卷积运算子单元320可以对7*7*144的第三组图像数据执行一次卷积运算,并输出7*7*256的第六预处理图像数据。第七卷积运算子单元330可以对7*7*256的第六预处理图像数据执行一次深度可分离DW卷积运算,并输出7*7*512的第七预处理图像数据。第八卷积运算子单元340可以对7*7*512的第七预处理图像数据执行一次卷积运算,并输出7*7*1024的第八预处理图像数据。第二张量拼接单元350可以将7*7*128的第四组图像数据和7*7*1024的第八预处理图像数据张量拼接成7*7*1152的第四图像数据。
第四运算单元40用于对7*7*1152的第四图像数据执行一次卷积运算,并输出7*7*30的第五图像数据。
第四运算单元40在提取特征的作用之外,还起到将输出的数据调整为所需的尺寸的作用,即第五图像数据具有多少通道。根据目标检测过程中所需要检测的目标的种类数,即目标检测模型1所要训练的目标种类数,选用不同数量的卷积核,得到相应数量的通道数。
例如,在二十类目标的目标检测任务中,7*7*30的第五图像数据中二十个通道表明二十类目标,包含目标的概率和目标的种类各占据一个通道,目标的中心点坐标和定位框的宽度和高度四个数据包括两组预测值,这两组预测值占八个通道。
损失计算单元50,用于根据公式1,基于第五图像数据,检测目标检测模型1的定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失,
其中,λcoord、λnoobj均为常数,λnoobj=1/48。其中S2为第四组图像数据的网格数,S2=7*7,B为定位框的数量,B=2。可以是0或1,当网格中含有目标的中心点,则为1,否则为0,/>与其相反。/>为第i个网格为定位框中心点的损失量;/>为第i个网格为定位框宽度的损失量;/>为第i个网格为定位框高度的损失量;为第i个网格为定位框面积的损失量;/>为第i个网格预测置信度的损失量;/>为第i个网格预测类别的损失量。
调整单元用于根据损失计算单元50的检测值,调整第一运算单元10、第二运算单元20、第三运算单元30、第四运算单元40中的至少一个,以使损失计算单元50的检测值趋于平衡。
采用本发明实施例的基于通道重排的轻量级目标检测模型1,经过9层卷积运算,可以减少冗余的参数,减小计算量,同时也可以减少存储空间。而且,通过采用分组然后再进行卷积运算的方式,可以进一步减少参数,同时通过通道重排技术,将两组通道进行融合重排,可以提高不同组通道之间的信息交流,提高模型的性能。另外,损失计算单元50定义的损失函数采用如同YOLOv3的位置定位框和测得物体置信度同时回归的方式,大大缩小了计算复杂度,适用于层数少的轻量级网络。从平衡的角度出发,将有目标的网格在损失函数中所占的权重调整为不含目标的48倍,从而可以达到有无目标的网格对整个损失函数的贡献度相等。
通过将像素大小为224*224的输入图像划分为7*7的网格阵,对于每个网格预测n个种类以及两组定位框信息,其中定位框信息除了中心点坐标和框的宽高之外,还包含检测到物体的了概率。
实施例二
如图2所示,与实施例一不同的是,在本实施例中,第三卷积运算子单元230是对第二组图像数据执行分组卷积运算,并输出第三预处理图像数据。第四卷积运算子单元240是对第三预处理图像数据执行分组卷积运算,并输出第四预处理图像数据。第五卷积运算子单元250是对第四预处理图像数据执行分组卷积运算,并输出第五预处理图像数据。第六卷积运算子单元320是对第三组图像数据执行分组卷积运算,并输出第六预处理图像数据。第七卷积运算子单元330是对第六预处理图像数据执行分组卷积运算,并输出第七预处理图像数据。第八卷积运算子单元340是对第七预处理图像数据执行分组卷积运算,并输出第八预处理图像数据。
具体的,第三卷积运算子单元230将56*56*16的第二组图像数据平分为56*56*8的两组,每组第二组图像数据执行一次卷积运算后输出28*28*32的图像数据,然后将两组28*28*32的图像数据张量拼接,输出28*28*64的第三预处理图像数据。
第四卷积运算子单元240可以将28*28*64的第三预处理图像数据平分为28*28*8的八组,每组第三预处理图像数据执行一次卷积运算后输出14*14*16的图像数据,然后将八组14*14*16的图像数据张量拼接,输出14*14*128的第四预处理图像数据。
第五卷积运算子单元250将14*14*128的第四预处理图像数据平分为14*14*64的两组,每组第四预处理图像数据执行一次卷积运算后输出7*7*128的图像数据,然后将两组7*7*128的图像数据张量拼接,输出7*7*256的第五预处理图像数据。
第六卷积运算子单元320将7*7*144的第三组图像数据平分为7*7*72的两组,每组第三组图像数据执行一次卷积运算后输出7*7*128的图像数据,然后将两组7*7*128的图像数据张量拼接,并输出7*7*256的第六预处理图像数据。
第七卷积运算子单元330将7*7*256的第六预处理图像数据平分为7*7*32的八组,每组第六预处理图像数据执行一次卷积运算后输出7*7*64的图像数据,然后将八组7*7*64的图像数据张量拼接,并输出7*7*512的第七预处理图像数据。
第八卷积运算子单元340将7*7*512的第七预处理图像数据平分为7*7*256的两组,每组第七预处理图像数据执行一次卷积运算后输出7*7*512的图像数据,然后将两组7*7*512的图像数据张量拼接,并输出7*7*1024的第八预处理图像数据。
需要说明的是,以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
另外,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
Claims (7)
1.一种基于通道重排的轻量级目标检测系统,其特征在于,包括:
第一运算单元,用于对含有目标的输入图像执行至少一次卷积运算,并输出第一图像数据;
第二运算单元,用于将所述第一图像数据分为第一组图像数据和第二组图像数据,并对所述第一组图像数据执行池化运算,对所述第二组图像数据执行至少一次卷积运算,并输出第二图像数据;
通道重排单元,用于对所述第二图像数据进行通道重排,输出第三图像数据;
第三运算单元,用于将所述第三图像数据分为第三组图像数据和第四组图像数据,并对所述第三组图像数据执行至少一次卷积运算后与所述第四组数据张量拼接,输出第四图像数据;
第四运算单元,用于对所述第四图像数据执行至少一次卷积运算,输出第五图像数据;
所述第一运算单元包括:
第一卷积运算子单元,用于对所述含有目标的输入图像依次执行卷积运算、池化运算,并输出第一预处理图像数据;
第二卷积运算子单元,用于对所述第一预处理图像数据依次执行卷积运算、池化运算,并输出第一图像数据;
所述第二运算单元包括:
第一分组子单元,用于将所述第一图像数据分为所述第一组图像数据和所述第二组图像数据;
第一池化子单元,用于对所述第一组图像数据执行池化运算,并输出第二预处理图像数据;
第三卷积运算子单元,用于对所述第二组图像数据依次执行卷积运算和池化运算,或用于对所述第二组图像数据执行分组卷积运算,并输出第三预处理图像数据;
第四卷积运算子单元,用于对所述第三预处理图像数据依次执行卷积运算和池化运算,或用于对所述第三预处理图像数据执行分组卷积运算,并输出第四预处理图像数据;
第五卷积运算子单元,用于对所述第四预处理图像数据依次执行卷积运算和池化运算,或用于对所述第四预处理图像数据执行分组卷积运算,并输出第五预处理图像数据;
第一张量拼接单元,用于将所述第二预处理图像数据与所述第五预处理图像数据张量拼接,并输出所述第二图像数据;
所述第三运算单元包括:
第二分组子单元,用于将所述第三图像数据分为第三组图像数据和第四组图像数据;
第六卷积运算子单元,用于对所述第三组图像数据执行卷积运算或分组卷积运算,并输出第六预处理图像数据;
第七卷积运算子单元,用于对所述第六预处理图像数据执行卷积运算或分组卷积运算,并输出第七预处理图像数据;
第八卷积运算子单元,用于对所述第七预处理图像数据执行卷积运算或分组卷积运算,并输出第八预处理图像数据;
第二张量拼接单元,用于对所述第四组图像数据和所述第八预处理图像数据执行张量拼接,并输出所述第四图像数据。
2.如权利要求1所述的系统,其特征在于,所述第三卷积运算子单元、所述第四卷积运算子单元和所述第五卷积运算子单元均执行分组卷积运算;
所述第三卷积运算子单元,用于将所述第二组图像数据分为两组图像数据,并对该两组图像数据分别执行卷积运算;
所述第四卷积运算子单元,用于将所述第三预处理图像数据分为八组图像数据,并对该八组图像数据分别执行卷积运算;
所述第五卷积运算子单元,用于将所述第四预处理图像数据分为两组图像数据,并对该两组图像数据分别执行卷积运算。
3.如权利要求1所述的系统,其特征在于,所述通道重排单元,用于:
将执行池化运算后的第一组图像数据分为预设组第一待排通道;
将执行至少一次卷积运算后的第二组图像数据分为预设组第二待排通道;
将所述预设组第二待排通道依次插入相邻两组所述第一待排通道之间,输出所述第三图像数据。
4.如权利要求1所述的系统,其特征在于,至少一个卷积运算包括深度可分离卷积。
5.如权利要求1所述的系统,其特征在于,还包括:
损失计算单元,用于根据所述第五图像数据,检测所述目标检测系统的定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失。
6.如权利要求5所述的系统,其特征在于,还包括:
调整单元,用于根据所述损失计算单元的检测值,调整所述第一运算单元、所述第二运算单元、所述第三运算单元、所述第四运算单元中的至少一个,以使所述损失计算单元的检测值趋于平衡。
7.一种基于通道重排的轻量级目标检测方法,其特征在于,所述目标检测方法用于如权利要求1所述的基于通道重排的轻量级目标检测系统,所述方法包括:
将样本输入所述目标检测系统;
根据定位框中心点的损失、定位框宽度的损失、定位框高度的损失、定位框面积的损失、预测类别的损失以及预测置信度的损失,调整所述目标检测系统,直至所述定位框中心点的损失、所述定位框宽度的损失、所述定位框高度的损失、所述定位框面积的损失和所述预测类别的损失的加权和趋于平衡;
将含有目标的输入图像输入所述目标检测系统,以识别所述目标的类别并在所述输入图像中定位所述目标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910814115.7A CN110705588B (zh) | 2019-08-30 | 2019-08-30 | 基于通道重排的轻量级目标检测模型及目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910814115.7A CN110705588B (zh) | 2019-08-30 | 2019-08-30 | 基于通道重排的轻量级目标检测模型及目标检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110705588A CN110705588A (zh) | 2020-01-17 |
CN110705588B true CN110705588B (zh) | 2023-10-17 |
Family
ID=69193786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910814115.7A Active CN110705588B (zh) | 2019-08-30 | 2019-08-30 | 基于通道重排的轻量级目标检测模型及目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110705588B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221896B (zh) * | 2021-05-31 | 2024-10-15 | 北京灵汐科技有限公司 | 目标检测方法、装置、神经形态器件及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108288075A (zh) * | 2018-02-02 | 2018-07-17 | 沈阳工业大学 | 一种改进ssd的轻量化小目标检测方法 |
CN108875904A (zh) * | 2018-04-04 | 2018-11-23 | 北京迈格威科技有限公司 | 图像处理方法、图像处理装置和计算机可读存储介质 |
WO2019028725A1 (en) * | 2017-08-10 | 2019-02-14 | Intel Corporation | CONVOLUTIVE NEURAL NETWORK STRUCTURE USING INVERTED CONNECTIONS AND OBJECTIVITY ANTERIORITIES TO DETECT AN OBJECT |
CA3085096A1 (en) * | 2017-12-08 | 2019-06-13 | Geomni, Inc. | Computer vision systems and methods for geospatial property feature detection and extraction from digital images |
-
2019
- 2019-08-30 CN CN201910814115.7A patent/CN110705588B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019028725A1 (en) * | 2017-08-10 | 2019-02-14 | Intel Corporation | CONVOLUTIVE NEURAL NETWORK STRUCTURE USING INVERTED CONNECTIONS AND OBJECTIVITY ANTERIORITIES TO DETECT AN OBJECT |
CA3085096A1 (en) * | 2017-12-08 | 2019-06-13 | Geomni, Inc. | Computer vision systems and methods for geospatial property feature detection and extraction from digital images |
CN108288075A (zh) * | 2018-02-02 | 2018-07-17 | 沈阳工业大学 | 一种改进ssd的轻量化小目标检测方法 |
CN108875904A (zh) * | 2018-04-04 | 2018-11-23 | 北京迈格威科技有限公司 | 图像处理方法、图像处理装置和计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
Simon Vellas, et al.FPGA acceleration of hyperspectral image processing for high-speed detection applications.2017 IEEE International Symposium on Circuits and Systems (ISCAS).2017,全文. * |
基于改进SSD的轻量化小目标检测算法;吴天舒等;《红外与激光工程》;20180725(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110705588A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107945204B (zh) | 一种基于生成对抗网络的像素级人像抠图方法 | |
CN110674714B (zh) | 基于迁移学习的人脸和人脸关键点联合检测方法 | |
CN110378222B (zh) | 一种输电线路防震锤目标检测与缺陷识别方法及装置 | |
KR20200047307A (ko) | 유용한 학습 데이터를 취사 선별하기 위한 cnn 기반 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치 | |
CN112163628A (zh) | 一种适用于嵌入式设备的改进目标实时识别网络结构的方法 | |
US11580369B2 (en) | Inference apparatus, convolution operation execution method, and program | |
CN112561027A (zh) | 神经网络架构搜索方法、图像处理方法、装置和存储介质 | |
CN108664993B (zh) | 一种密集权重连接的卷积神经网络图像分类方法 | |
CN113052834A (zh) | 一种基于卷积神经网络多尺度特征的管道缺陷检测方法 | |
CN112365511B (zh) | 基于重叠区域检索与对齐的点云分割方法 | |
CN109871942B (zh) | 神经网络的训练方法和装置、系统、存储介质 | |
CN112036475A (zh) | 融合模块和多尺度特征融合卷积神经网络及图像识别方法 | |
CN110874626B (zh) | 一种量化方法及装置 | |
CN112528904A (zh) | 一种用于砂石颗粒物粒径检测系统的图像分割方法 | |
CN111339874A (zh) | 一种单级人脸分割的方法 | |
CN110705588B (zh) | 基于通道重排的轻量级目标检测模型及目标检测方法 | |
CN117765373A (zh) | 一种自适应裂缝尺寸的轻量化道路裂缝检测方法及系统 | |
CN117616424A (zh) | 用于平衡权重中的稀疏性以用于加速深度神经网络的系统和方法 | |
CN115861646A (zh) | 一种基于结构重参数化的轻量级目标检测方法及系统 | |
CN117542082A (zh) | 一种基于YOLOv7的行人检测方法 | |
CN111222534A (zh) | 一种基于双向特征融合和更平衡l1损失的单发多框检测器优化方法 | |
CN111191778A (zh) | 深度学习网络处理方法、装置与编译器 | |
CN113158132A (zh) | 一种基于非结构化稀疏的卷积神经网络加速系统 | |
CN117274754A (zh) | 梯度匀质化的点云多任务融合方法 | |
CN112001492A (zh) | 关于二值权重DenseNet模型的混合流水式加速架构及加速方法 |
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 |