CN112149665B - 一种基于深度学习的高性能多尺度目标检测方法 - Google Patents

一种基于深度学习的高性能多尺度目标检测方法 Download PDF

Info

Publication number
CN112149665B
CN112149665B CN202010920608.1A CN202010920608A CN112149665B CN 112149665 B CN112149665 B CN 112149665B CN 202010920608 A CN202010920608 A CN 202010920608A CN 112149665 B CN112149665 B CN 112149665B
Authority
CN
China
Prior art keywords
image block
training
scale
detection
focus
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
Application number
CN202010920608.1A
Other languages
English (en)
Other versions
CN112149665A (zh
Inventor
潘伟航
陆佳炜
邵子睿
黄奕涵
郑薇
朱冰倩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202010920608.1A priority Critical patent/CN112149665B/zh
Publication of CN112149665A publication Critical patent/CN112149665A/zh
Application granted granted Critical
Publication of CN112149665B publication Critical patent/CN112149665B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4084Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

一种基于深度学习的高性能多尺度目标检测方法,所述方法包括训练过程和检测过程,所述训练过程如下:1.1、输入图片,生成图像块;1.2、筛选正图像块;1.3、筛选负图像块;1.4、输入图像块,训练模型;所述检测过程如下:2.1、预测焦点像素集;2.2、生成焦点图像块;2.3、RoI阶段;2.4、分类和回归;2.5、焦点合成。本发明针对训练过程提出一种全新的候选区域选取方法,同时针对检测流程,采用一种由浅入深的方法,忽略不可能包含目标的区域,相对于过往检测算法处理整个图像金字塔,该发明显著得减少多尺度检测方法的计算量,大幅提高检测速率,突破了以往多尺度检测算法无法投入实际应用的瓶颈。

Description

一种基于深度学习的高性能多尺度目标检测方法
技术领域
本发明涉及信息技术领域,具体涉及一种基于深度学习的高性能多尺度目标检测方法。
背景技术
从车辆的识别到疫情期间佩戴口罩识别,各种目标检测算法在当今社会中被广泛地使用,如Fast RCNN(快速的基于区域推荐的卷积网络方法),Faster RCNN,YOLOv3,YOLOv4。衡量目标检测最重要的两个性能就是精度(mAP)和速度(FPS)。而现有的目标检测算法,要么注重mAP的结果,如Faster RCNN系列的two-stage算法,精度高,共享计算量但速度慢、训练时间长、误报率高。要么就是强调精度和速度之间的平衡,例如YOLOv4系列的one-stage算法,速度快,避免产生背景错误(false positives),能够学到物体的泛化特征但精度低、对小物体的检测效果不好。
目标检测已被政府及许多企业应用于各个行业,例如智慧城市、指挥交通、智慧安防、智慧工业、智慧农业、智慧体育等行业。其中,智慧安防中安全帽识别、安检仪危险品识别,智慧农业中的辣椒病虫害识别应用受到了政府的极大重视。对于目标检测应用,应用的实时性以及可靠性是关注的重点,实时性意味着降低检测出目标的时间,即提高检测结果的速度。可靠性意味着高精度,对复杂环境下的目标也能够得到理想的结果(极高的准确度)。而从过去的结果来看,高精度就意味着低速度,高速度意味着低精度,这样的结果很难达到应用所需的级别。
在two-stage算法中,基本流程是线性的,基本上可以分为两个部分,一是产生候选区域CNN特征,二是区域分类、位置精修。现在大多数训练算法处理图像金字塔(图像多尺度表达的一种,是一种以多分辨率来解释图像的有效但概念简单的结构)时考虑所有像素,例如一张图片在三个尺度下时,需要处理的像素量就达到了14倍,大大减慢了训练的速度。同样的情况出现在检测过程中,这样最终导致候选区域的数量过多,且大部分候选区域的质量也存在着问题,降低了检测速度。
发明内容
为了克服现有技术的不足,本发明针对训练过程提出一种全新的候选区域选取方法,同时针对检测流程,采用一种由浅入深的方法,忽略不可能包含目标的区域,相对于过往检测算法处理整个图像金字塔,该发明显著得减少多尺度检测方法的计算量,大幅提高检测速率,突破了以往多尺度检测算法无法投入实际应用的瓶颈。
本发明提供如下的技术方案:
一种基于深度学习的高性能多尺度目标检测方法,所述方法包括训练过程和检测过程,
所述训练过程如下:
1.1、输入图片,生成图像块;
1.2、筛选正图像块;
1.3、筛选负图像块;
1.4、输入图像块,训练模型;
所述检测过程如下:
2.1、预测焦点像素集;
2.2、生成焦点图像块;
2.3、RoI阶段;
2.4、分类和回归;
2.5、焦点合成。
进一步,所述1.1中,所述图像块是指在任一尺度下,某图片上一系列固定大小的(K*K像素)以恒定间隔(d像素)排布的窗口,每个窗口都可能包含一个或几个目标,在尺度{S1,S2,...,Sn}下生成的图像块记作Ci,其中Sn表示第n个尺度。
所述1.2中,图像的正确的标注框ground-truth boxes随着图像尺度的变化进行对应的缩放,因此对于每一个尺度i,需要指定理想检测面积为i∈[1,n],/>分别表示理想检测面积的最小值与最大值,若某个ground-truth boxes完全位于一个图像块内,则该ground-truth boxes被图像块包围;采用贪心算法,根据图像块包围的ground-truth boxes数量,从每个尺度i中筛选图像块作为正图像块,记作/>其中贪心算法是一种每一步选择上都要保证能获得局部最优解的算法。
所述1.3包括以下步骤:
步骤1.3.1使用步骤1.2中筛选得到的正图像块训练一个仅有几个epochs的RPN,epochs指代所有的数据送入网络中完成一次前向计算及反向传播的过程,其中RPN是在Faster RCNN中首次提出的深度全卷积网络,该RPN仅用来选择负图像块,因此即使精度不高也几乎不会对模型最终性能产生影响;
步骤1.3.2使用该RPN检测整个训练集,根据检测结果选择负图像块,选择过程如下:
a)排除所有被正图像块包围的区域提议Region proposals,区域提议指最有可能为目标的区域;
b)在每个尺度i下使用贪心算法选择至少包含M个区域提议的图像组成负图像块池;
步骤1.3.3训练时从负图像块池中以固定数量随机选择参与训练的负图像块,表示为其中∪表示的是负图像块全集,neg指的是negative,/>指尺度i下的负图像块。
所述1.4包括以下步骤:
步骤1.4.1使用ImageNet初始化共享的卷积层,包括kernel(卷积核的尺寸)、stride(卷积步长)、padding(输入的每一条边补充0的层数)、dilation(卷积核元素之间的间距)、group(从输入通道到输出通道的阻塞连接数)、bias(偏置)、in_channels(输入信号的通道)、out_channels(输出信号的通道)参数,初始化RPN网络中卷积核部分,通过步骤1.3中筛选出的正负图像块训练RPN,训练之后,共享的卷积层以及RPN的边框回归(Bounding-box regression)函数被更新,边框回归函数指的是一种关系使得输入的原始窗口P经过映射得到一个跟ground-truth box更接近的回归窗口P1,该函数通过梯度下降法(一种寻找目标函数最小化的方法)实现参数的更新;
步骤1.4.2用ImageNet重新初始化共享的卷积层,初始化Fast-RCNN网络的池化层以及卷积层,通过使用训练过的RPN计算得到区域提议,计算步骤包括使用滑动窗口机制生成区域提议,并进行分类与回归,再将生成的区域提议重新训练Fast-RCNN,根据步骤1.4.1设置的参数,重复步骤1.4.1,训练结束之后,共享的卷积层以及Fast-RCNN的权重参数都会被更新;
步骤1.4.3使用步骤1.4.2中训练完成的共享卷积层初始化RPN网络,随后,第二次训练RPN网络,通过初始化后的RPN网络计算得到区域提议,计算步骤与步骤1.4.2相同,训练结束之后,RPN中边框回归函数被更新;
步骤1.4.4保持步骤1.4.3中的共享卷积层不变,再次训练Fast-RCNN网络,计算步骤与步骤1.4.2相同,训练完毕,得到最终的一个统一网络。
再进一步,所述2.1中,焦点像素集位于卷积神经网络特征图(feature map)的粒度之上,由带ReLU的两层卷积层(3*3和1*1)以及一个二分类器softmax组成,特征图上某个与小目标重叠的像素记为焦点像素,对于输入的面积为X*Y的图片,经过一个步长为s的全卷积神经网络(FCN,Full Convolutional Networks),得到一个特征图标签集L的大小为X′与Y′分别代表经过全卷积神经网络后输出的特征图标签集的长和宽,对每一个大小为s*s的标签l(l∈L),作如下的定义:
其中,1代表标注正,0代表标注负,-1表示无效(即忽略的区域),GTArea表示实际边界框经过缩放后的面积,即ground-truth boxes区域面积,其中a、b、c皆为判定的阈值,IoU为重叠度,即两个矩形框重叠面积占其并集的面积比例;
在训练时,焦点像素集标注为正,忽略与极小目标、中等目标重叠的像素,其他像素标注为负,同时,同一目标的标记可能随着训练尺度的变化而发生改变。
更进一步,所述2.2中,由于存在某在图像块面积过小,缺少检测的必要信息,为了保证检测效率,需要指定图像块最小面积为k,输入为预测分支输出的焦点像素集预测结果P、设定的阈值t、膨胀系数d以及图像块最小面积k,焦点图像块生成算法的步骤如下:
步骤2.2.1用阈值t将P二值化;
步骤2.2.2使用d*d的过滤器对P进行膨胀操作;
步骤2.2.3从P中获得连通域集合S;
步骤2.2.4对每个在S中的连通域,生成多个最小面积大于k的图像块C;
步骤2.2.5合并重叠的图像块C;
基于焦点图像块,级联推断过程如下:
a)在最低分辨率检测并生成焦点图像块;
b)在当前最低分辨率图像块上检测,并进一步生成下一尺度的焦点图像块
c)重复步骤b,仅将可能存在目标的区域即焦点图像块传递给下一尺度检测。
所述2.3中,ROI指的是从目标图像中识别出的候选识别区域,也就是步骤二中生成的焦点图像块,ROI Pooling的作用是把大小形状各不相同的候选识别区域归一化为固定尺寸的目标识别区域,不同于CNN网络中的池化层,ROI Pooling通过如下的方法得到固定尺寸的输出,过程如下:
步骤2.3.1对于ROI Pooling层,首先确定输出大小,然后确定内核大小、步幅和填充值,将ROI Pooling层的输出大小表示为w2*h2,输入候选区域的大小为w*h;
步骤2.3.2将步骤二的焦点图像块划分为w2*h2大小的子窗口,每个窗口的大小为
步骤2.3.3对步骤2.3.1中每个子窗口取最大元素作为输出,从而得到大小为w2*h2的输出。
所述2.4中,将步骤2.2生成的焦点图像块送入全连接层;焦点图像块经过softmax层被分类成具体目标对象,其位置(ground-truth boxes)所在坐标在regression层中进行优化,其中softmax层的作用为将分类结果进行归一化,regression层则修正区域提议边框的位置,通过上述优化使得(Px,Py,Pw,Ph)(输入的区域提议的边框)与(Gx,Gy,Gw,Gh)(GroundTruth box)尽可能得接近,其中(x,y)为边框的中心位置,(w,h)表示边框的宽和高,中心位置通过平移的方式进行修正,边框的宽和高则通过缩放进行修正;
在训练网络的时候同时对候选区域进行一个分类与回归,Softmax损失函数用于对区域提议的分类,smooth L1损失函数用于区域提议边界的回归,损失函数如下所示:
其中,为Softmax损失函数,/>为smooth L1损失函数,Ncls和Nreg分别表示训练时候批处理数量和区域提议框的数量,λ表示损失权衡函数,ai表示预测一个候选框是否为目标的可能性,/>表示其真实值,ti表示预测一个区域提议和真实值之间的相对位移,/> 表示预测的区域提议中心位置相对位移值,表示预测的区域提议长度相对差值,/>表示一个区域提议和真实值之间得坐标转换,这个坐标转换通过如下的公式进行计算:
其中,δci表示真实的区域提议中心位置相对位移值,δli表示真实的区域提议长度相对差值,ci和li表示区域提议的中心位置和长度,和/>表示该区域提议的真实值。
所述2.5中,步骤2.2中使用d*d的过滤器对P进行膨胀操作可以有效避免应在下一尺度检测的物体出现在焦点图像块的边界上,因此可以忽略所有出现在图像块边界上的检测框;对其他位置的目标,有如下规则:对于处在原图边界上的目标,则检查其是否整体位于某图像块中,如果整体位于某图像块中,保留其检测结果,否则忽略。本发明运用上述规则成功过滤各尺度不符合上述规则的检测,在检测过程的最后,使用非极大值抑制方法(即搜索局部IoU极大值,抑制非极大值元素。非极大值元素指的是同一检测中,非置信度得分最高的冗余边界框)合并各尺度检测结果,获得最终结果。
本发明为基于深度学习的高性能多尺度性能检测方法,首先通过滑窗方法对输入图像做图像块的提取;随后在生成的图像块中筛选出正图像块与负图像块;再将筛选出的正负图像块用于RPN网络与R-CNN网络的训练,得到最终的网络参数;对输入图像进行预测焦点像素集,并生成焦点像素块;焦点像素块经过分类检测与回归处理,并使用非极大值抑制方法合并各尺度检测结果;与现有方法相比,本发明所述方法在保证模型准确度的基础上,减少了像素数据的处理量,大幅度提高了训练速度及检测速度。
与现有技术相比,本发明具有以下优点:
1.本发明使用多尺度算法解决小目标检测问题,传统的多尺度训练算法会严重影响训练速度,而本发明采用的筛选图像块方法大幅度提高了训练速度。
2.检测过程采用一种由浅入深的方法,忽略不可能包含目标的区域,显著地减少多尺度检测方法的计算量,大幅度提高检测速率,突破了以往多尺度检测算法无法投入实际应用的瓶颈。
3.训练时,从原图裁剪出筛选得到的图像块,获得一系列大小固定的子图,这些子图为后续的训练样本。由于得到的图像块尺寸较小(可能不到某些高分别率图像的1/10),因此可以显著减小训练的时间与空间复杂度。并且,每个实际边界框均被合适尺寸的图像块包围,这使得模型更加容易收敛。
附图说明
图1本发明方法的流程图。
具体实施方式:
下面将结合附图和具体实施方式对本发明做进一步说明。
参照图1,一种基于深度学习的高性能多尺度目标检测方法,包括训练过程和检测过程,
所述训练过程如下:
1.1、输入图像、生成图像块
这里的图像块,是指在任一尺度下,某图片上一系列固定大小的(K*K像素)以恒定间隔(d像素)排布的窗口。每个窗口都可能包含一个或几个目标(类似滑动窗口机制)。在尺度{S1,S2,...,Sn}下生成的图像块记作Ci,其中Sn表示第n个尺度。例如选定最优值K为512,d最优值为32。在图像金字塔的某个大小为Wi*Hi的图像上,通过步长为32的滑窗方法得到约个大小为512*512像素的图像块。因此整个图像金字塔生成的图像块总数约为:
1.2、筛选正图像块
图像的ground-truth boxes(正确的标注框)随着图像尺度的变化进行对应的缩放。因此对于每一个尺度i,需要指定理想检测面积(desired area range)为i∈[1,n]。/>分别表示理想检测面积的最小值与最大值。若某个ground-truth boxes完全位于一个图像块内,则该ground-truth boxes被图像块包围。采用贪心算法,根据图像块包围的ground-truth boxes数量,从每个尺度i中筛选图像块作为正图像块,记作/>其中pos指的是positive,其中贪心算法是一种每一步选择上都要保证能获得局部最优解的算法。
1.3、筛选负图像块,包括以下步骤:
步骤1.3.1使用步骤二中筛选得到的正图像块训练一个仅有几个epochs(指代所有的数据送入网络中完成一次前向计算及反向传播的过程)的弱RPN。其中RPN是在FasterRCNN中首次提出的深度全卷积网络。该RPN仅用来选择负图像块,因此即使精度不高也几乎不会对模型最终性能产生影响。
步骤1.3.2使用该RPN检测整个训练集,根据检测结果(即RPN提议的区域)选择负图像块,选择过程如下:
a)排除所有被正图像块包围的区域提议(Region proposals),区域提议指最有可能为目标的区域;
b)在每个尺度i下贪心算法选择至少包含M个区域提议的图像组成负图像块池。
步骤1.3.3训练时从负图像块池中以固定数量随机选择参与训练的负图像块,表示为其中∪表示的是负图像块全集,neg指的是negative,/>指尺度i下的负图像块。
步骤1.4、输入图像块,训练模型,包括以下步骤:
步骤1.4.1使用ImageNet(一个庞大的开源数据集)初始化共享的卷积层(包括kernel(卷积核的尺寸)、stride(卷积步长)、padding(输入的每一条边补充0的层数)、dilation(卷积核元素之间的间距)、group(从输入通道到输出通道的阻塞连接数)、bias(偏置)、in_channels(输入信号的通道)、out_channels(输出信号的通道)参数),部分初始化RPN网络,即初始化RPN网络中如卷积核部分。通过步骤三中筛选出的正负图像块训练RPN,训练之后,共享的卷积层以及RPN的边框回归(Bounding-box regression)函数被更新,边框回归函数指的是一种关系使得输入的原始窗口P经过映射得到一个跟ground-truth box更接近的回归窗口P1,该函数通过梯度下降法(一种寻找目标函数最小化的方法)实现参数的更新。
步骤1.4.2用ImageNet重新初始化共享的卷积层,部分初始化Fast-RCNN网络,即网络中的池化层以及卷积层。通过使用训练过的RPN计算区域提议,计算步骤包括使用类似滑动窗口机制生成区域提议,并进行简单的分类与回归,再将生成的区域提议重新训练Fast-RCNN。根据步骤1.4.1设置的参数,重复步骤1.4.1。训练结束之后,共享的卷积层以及Fast-RCNN的权重参数都会被更新。
步骤1.4.3使用步骤1.4.2中训练完成的共享卷积层初始化RPN网络,随后,第二次训练RPN网络,通过初始化后的RPN网络计算得到区域提议,计算步骤与步骤1.4.2相同,训练结束之后,RPN中边框回归函数被更新。
步骤1.4.4保持步骤1.4.3中的共享卷积层不变,再次训练Fast-RCNN网络,具体步骤与步骤1.4.2相同。训练完毕,得到最终的一个统一网络。
检测过程如下:
2.1、预测焦点像素集
焦点像素集位于卷积神经网络特征图(feature map)的粒度之上,特征图上某个与小目标(面积在5*5像素到64*64像素之间)重叠的像素记为焦点像素。对于输入的面积为X*Y的图片,经过一个步长为s的全卷积神经网络(FCN,Full Convolutional Networks)。得到一个特征图标签集L的大小为X′*Y′对每一个大小为s*s的标签l(l∈L),作如下的定义:
其中,1代表标注正,0代表标注负,-1表示无效(即忽略的区域)。GTArea表示实际边界框经过缩放后的面积,即ground-truth boxes区域面积。
例如,a,b,c取值分别是5,64,90。以上公式可表述为:在训练时,焦点像素集标注为正,忽略与极小目标(面积小于5*5像素)、中等目标(面积在64*64像素与90*90像素之间)重叠的像素,其他像素标注为负。同时,同一目标的标记可能随着训练尺度的变化而发生改变。
以上标记仅用来训练本发明训练过程中用于预测焦点像素集的分支。该分支位于conv5(一个卷积层)顶部,由带ReLU的两层卷积层(3*3和1*1)以及一个二分类器SoftMax组成。
2.2、生成焦点图像块
由于存在某在图像块面积过小,缺少检测的必要信息,为了保证检测效率,需要指定图像块最小面积为k,焦点图像块生成算法的具体步骤如下:
输入为预测分支输出的焦点像素集预测结果P、设定的阈值t、膨胀系数d以及图像块最小面积k。
步骤2.2.1用阈值t将P二值化;
步骤2.2.2使用d*d的过滤器对P进行膨胀操作(增强图像的亮部);
步骤2.2.3从P中获得连通域集合S;
步骤2.2.4对每个在S中的连通域,生成多个最小面积大于k的图像块C;
步骤2.2.5合并重叠的图像块C;
基于焦点图像块,本发明的级联推断过程如下:
a)在最低分辨率检测并生成焦点图像块;
b)在当前最低分辨率图像块上检测,并进一步生成下一尺度的焦点图像块;
c)重复步骤b,仅将可能存在目标的区域(即焦点图像块)传递给下一尺度检测。
2.3、ROI阶段
ROI(Region Of Interest,感兴趣区域)指的是从目标图像中识别出的候选识别区域,也就是步骤二中生成的焦点图像块。ROI Pooling的作用是把大小形状各不相同的候选识别区域归一化为固定尺寸的目标识别区域。不同于CNN网络中的池化层,ROI Pooling通过如下的方法得到固定尺寸的输出,过程如下:
步骤2.3.1对于ROI Pooling层,首先确定输出大小,然后确定内核大小、步幅和填充值。将ROI Pooling层的输出大小表示为w2*h2,输入候选区域的大小为w*h。
步骤2.3.2将步骤二的焦点图像块划分为w2*h2大小的子窗口,每个窗口的大小为
步骤2.3.3对步骤3.1中每个子窗口取最大元素作为输出,从而得到大小为w2*h2的输出。
2.4、分类和回归
将步骤2.2生成的焦点图像块送入全连接层;焦点图像块经过softmax层被分类成具体目标对象,其位置(ground-truth boxes)所在坐标在regression层中进行优化,其中softmax层的作用为将分类结果进行归一化,regression层则修正区域提议边框的位置。通过上述优化使得(Px,Py,Pw,Ph)(输入的区域提议的边框)与(Gx,Gy,Gw,Gh)(Ground Truthbox)尽可能得接近,其中(x,y)为边框的中心位置,(w,h)表示边框的宽和高。中心位置通过平移的方式进行修正,边框的宽和高则通过缩放进行修正。
在训练网络的时候同时对候选区域进行一个分类与回归。Softmax损失函数用于对区域提议的分类,smooth L1损失函数用于区域提议边界的回归,损失函数如下所示:
其中,为Softmax损失函数,/>为smooth L1损失函数,Ncls和Nreg分别表示训练时候批处理数量和区域提议框的数量,λ表示损失权衡函数,ai表示预测一个候选框是否为目标的可能性,/>表示其真实值。ti表示预测一个区域提议和真实值之间的相对位移,/>(/>表示预测的区域提议中心位置相对位移值,/>表示预测的区域提议长度相对差值)。/>表示一个区域提议和真实值之间得坐标转换,/>这个坐标转换可以通过如下的公式进行计算:
其中,δci表示真实的区域提议中心位置相对位移值,δli表示真实的区域提议长度相对差值,ci和li表示区域提议的中心位置和长度,和/>表示该区域提议的真实值。
2.5、焦点合成
步骤2.2中使用d*d的过滤器对P进行膨胀操作可以有效避免应在下一尺度检测的物体出现在焦点图像块的边界上(图像块与原图共享边界除外),因此可以忽略所有出现在图像块边界上的检测框。对其他位置的目标,有如下规则:
对于处在原图边界上的目标,则检查其是否整体位于某图像块中,如果整体位于某图像块中,保留其检测结果,否则忽略。
本发明运用上述规则成功过滤各尺度不符合上述规则的检测,在检测过程的最后,使用非极大值抑制方法(即搜索局部IoU极大值,抑制非极大值元素。非极大值元素指的是同一检测中,非置信度得分最高的冗余边界框)合并各尺度检测结果,获得最终结果。
具体实施例2:
以英伟达GPU作为计算平台,采用CUDA作为GPU加速器,选取MXNET作为CNN框架。
步骤一、数据准备:
本实验中使用通过网络爬取的30199张图片作为数据集。其中标注为“hat”的目标有59428个,标注为“person”的目标有125892个。以符合学术标准的8:2比例将数据集分为训练集与测试集,其中训练集24159张图片,测试集6040张图片。不存在同时出现在训练集和测试集中的图片。
步骤二、模型训练:
步骤2.1:本实验的模型采用随机梯度下降算法(SGD),批处理数量(batchsize)为4,epochs的个数为6,每个epoch包含110000次迭代。
步骤2.2:本实验的学习率设置如下:前五个epoch的学习率设置为0.025,第五次epoch训练结束时减小学习率(learning rate)为0.015。
步骤2.3:图像块大小(chip size)设置为(512,512),训练尺度(trainingscales)设置为(480,512)、(800,1280)、(1400,2000)。
步骤2.4:最佳检测面积Ri(desired area ranges)设置为(0,802)、(322,1502)、(1202,inf)。
步骤2.5:模型训练过程中生成的.states文件可用于模型的继续训练,.params文件可用于接下来的模型测试。
步骤三、模型测试:
步骤3.1:用上述模型训练生成的.param文件来进行测试。
步骤3.2:本实验采用贪心的非极大值抑制策略对测试生成的预测结果进行处理,消除高重叠度和低分数的预测结果。非极大值抑制的阈值设置为0.99999,分数的阈值设置为0.25。
步骤四、模型评估:
模型的评估采用mAP@0.5的值作为最终评估的结果。
步骤五、训练环境配置:
具体训练环境配置说明参照表1:
品名 型号 数量
CPU INTEL I5 9700K 1
主板 微星Z390 GAMING PLUS 1
内存 海盗船复仇者16GB/3200 1
显卡 NVIDIA GTX2060 6G骁将 1
固态硬盘 西数500GB 1
硬盘 希捷1TB 1
表1
具体实施步骤叙述完毕,在上述实验参数设置下,最终训练时间约为42小时,训练用于筛选负图像块的RPN的时间大约为12小时。测试处理一张图片的平均时间约0.09秒,即平均每秒约11.1张图片。本实验训练下表给出本发明在mAP@0.5在上述实验设置的测试结果,并在相同条件下,给出利用其他方法的测试结果对比,参照表2。
算法 Hat(%) Person(%) mAP@0.5(%)
HOG+SVM 77.49 60.94 69.45
YOLO 84.01 66.08 75.05
SSD 81.77 64.03 73.16
Faster R-CNN 89.47 70.60 80.04
ours 90.15 89.23 89.69
表2。

Claims (3)

1.一种基于深度学习的高性能多尺度目标检测方法,其特征在于,所述方法包括训练过程和检测过程,
所述训练过程如下:
1.1、输入图片,生成图像块,所述图像块是指在任一尺度下,某图片上一系列固定大小的以恒定间隔排布的窗口,固定大小为K*K像素,恒定间隔为d像素,每个窗口都可能包含一个或几个目标,在尺度{S1,S2,…,Sn}下生成的图像块记作Ci,其中Sn表示第n个尺度;
1.2、筛选正图像块;
1.3、筛选负图像块;1.4、输入图像块,训练模型;所述1.4包括以下步骤:
步骤1.4.1使用ImageNet初始化共享的卷积层,包括卷积核的尺寸kernel、卷积步长stride、输入的每一条边补充0的层数padding、卷积核元素之间的间距dilation、从输入通道到输出通道的阻塞连接数group、偏置bias、输入信号的通道in_channels、输出信号的通道out_channels参数,初始化RPN网络中卷积核部分,通过步骤三中筛选出的正负图像块训练RPN,训练之后,共享的卷积层以及RPN的边框回归Bounding-box regression函数被更新,边框回归函数指的是一种关系使得输入的原始窗口P经过映射得到一个跟ground-truth box更接近的回归窗口P1,该函数通过梯度下降法实现参数的更新;
步骤1.4.2用ImageNet重新初始化共享的卷积层,初始化Fast-RCNN网络的池化层以及卷积层,通过使用训练过的RPN计算得到区域提议,计算步骤包括使用滑动窗口机制生成区域提议,并进行分类与回归,再将生成的区域提议重新训练Fast-RCNN,根据步骤1.4.1设置的参数,重复步骤1.4.1,训练结束之后,共享的卷积层以及Fast-RCNN的权重参数都会被更新;
步骤1.4.3使用步骤4.2中训练完成的共享卷积层初始化RPN网络,随后,第二次训练RPN网络,通过初始化后的RPN网络计算得到区域提议,计算步骤与步骤1.4.2相同,训练结束之后,RPN中边框回归函数被更新;
步骤1.4.4保持步骤1.4.3中的共享卷积层不变,再次训练Fast-RCNN网络,计算步骤与步骤1.4.2相同,训练完毕,得到最终的一个统一网络;
所述检测过程如下:
2.1、预测焦点像素集;
所述2.1中,焦点像素集位于卷积神经网络特征图feature map的粒度之上,由带ReLU的两层卷积层以及一个二分类器softmax组成,两层卷积层尺寸为3*3和1*1,特征图上某个与小目标重叠的像素记为焦点像素,对于输入的面积为X*Y的图片,经过一个步长为s的全卷积神经网络FCN,得到一个特征图标签集L的大小为X′*Y′,X′与Y′分别代表经过全卷积神经网络后输出的特征图标签集的长和宽,对每一个大小为s*s的标签l,l∈L,作如下的定义:
其中,1代表标注正,0代表标注负,-1表示无效,GTArea表示实际边界框经过缩放后的面积,即ground-truth boxes区域面积,其中a、b、c皆为判定的阈值,IoU为重叠度,即两个矩形框重叠面积占其并集的面积比例;
在训练时,焦点像素集标注为正,忽略与极小目标、中等目标重叠的像素,其他像素标注为负,同时,同一目标的标记可能随着训练尺度的变化而发生改变;
2.2、生成焦点图像块;
由于存在某在图像块面积过小,缺少检测的必要信息,为了保证检测效率,需要指定图像块最小面积为k,输入为预测分支输出的焦点像素集预测结果P、设定的阈值t、膨胀系数d以及图像块最小面积k,焦点图像块生成算法的步骤如下:
步骤2.2.1用阈值t将P二值化;
步骤2.2.2使用d*d的过滤器对P进行膨胀操作;
步骤2.2.3从P中获得连通域集合S;
步骤2.2.4对每个在S中的连通域,生成多个最小面积大于k的图像块C;
步骤2.2.5合并重叠的图像块C;
基于焦点图像块,级联推断过程如下:
a)在最低分辨率检测并生成焦点图像块;
b)在当前最低分辨率图像块上检测,并进一步生成下一尺度的焦点图像块;
c)重复步骤b,仅将可能存在目标的区域即焦点图像块传递给下一尺度检测;
2.3、RoI阶段;
ROI指的是从目标图像中识别出的候选识别区域,也就是步骤二中生成的焦点图像块,ROI Pooling的作用是把大小形状各不相同的候选识别区域归一化为固定尺寸的目标识别区域,不同于CNN网络中的池化层,ROI Pooling通过如下的方法得到固定尺寸的输出,过程如下:
步骤2.3.1对于ROI Pooling层,首先确定输出大小,然后确定内核大小、步幅和填充值,将ROI Pooling层的输出大小表示为w2*h2,输入候选区域的大小为w*h;
步骤2.3.2将步骤2.2的焦点图像块划分为w2*h2大小的子窗口,每个窗口的大小为
步骤2.3.3对步骤2.3.1中每个子窗口取最大元素作为输出,从而得到大小为w2*h2的输出;
2.4、分类和回归;
将步骤2.2生成的焦点图像块送入全连接层;焦点图像块经过softmax层被分类成具体目标对象,其位置ground-truth boxes所在坐标在regression层中进行优化,其中softmax层的作用为将分类结果进行归一化,regression层则修正区域提议边框的位置,通过上述优化使得(Px,Py,Pw,Ph)与(Gx,Gy,Gw,Gh)尽可能得接近,(Px,Py,Pw,Ph)为输入的区域提议的边框,(Gx,Gy,Gw,Gh)为Ground Truth box,其中(x,y)为边框的中心位置,(w,h)表示边框的宽和高,中心位置通过平移的方式进行修正,边框的宽和高则通过缩放进行修正;
在训练网络的时候同时对候选区域进行一个分类与回归,Softmax损失函数用于对区域提议的分类,smooth L1损失函数用于区域提议边界的回归,损失函数如下所示:
其中,为Softmax损失函数,/>为smooth L1损失函数,Ncls和Nreg分别表示训练时候批处理数量和区域提议框的数量,λ表示损失权衡函数,ai表示预测一个候选框是否为目标的可能性,/>表示其真实值,ti表示预测一个区域提议和真实值之间的相对位移,/> 表示预测的区域提议中心位置相对位移值,/>表示预测的区域提议长度相对差值,/>表示一个区域提议和真实值之间得坐标转换,这个坐标转换通过如下的公式进行计算:
其中,δci表示真实的区域提议中心位置相对位移值,δli表示真实的区域提议长度相对差值,ci和li表示区域提议的中心位置和长度,和/>表示该区域提议的真实值;
2.5、焦点合成
步骤2.2中使用d*d的过滤器对P进行膨胀操作可以有效避免应在下一尺度检测的物体出现在焦点图像块的边界上,因此忽略所有出现在图像块边界上的检测框;对其他位置的目标,有如下规则:对于处在原图边界上的目标,则检查其是否整体位于某图像块中,如果整体位于某图像块中,保留其检测结果,否则忽略,检测过程的最后,使用非极大值抑制方法合并各尺度检测结果,获得最终结果。
2.如权利要求1所述的一种基于深度学习的高性能多尺度目标检测方法,其特征在于,所述1.2中,图像的正确的标注框ground-truth boxes随着图像尺度的变化进行对应的缩放,因此对于每一个尺度i,需要指定理想检测面积为 i∈[1,n],/>分别表示理想检测面积的最小值与最大值,若某个ground-truth boxes完全位于一个图像块内,则该ground-truth boxes被图像块包围;采用贪心算法,根据图像块包围的ground-truth boxes数量,从每个尺度i中筛选图像块作为正图像块,记作/>其中贪心算法是一种每一步选择上都要保证能获得局部最优解的算法。
3.如权利要求2所述的一种基于深度学习的高性能多尺度目标检测方法,其特征在于,所述1.3包括以下步骤:
步骤1.3.1使用步骤1.2中筛选得到的正图像块训练一个仅有几个epochs的RPN,epochs指代所有的数据送入网络中完成一次前向计算及反向传播的过程,其中RPN是在Faster RCNN中首次提出的深度全卷积网络,该RPN仅用来选择负图像块,因此即使精度不高也几乎不会对模型最终性能产生影响;
步骤1.3.2使用该RPN检测整个训练集,根据检测结果选择负图像块,选择过程如下:
a)排除所有被正图像块包围的区域提议Region proposals,区域提议指最有可能为目标的区域;
b)在每个尺度i下使用贪心算法选择至少包含M个区域提议的图像组成负图像块池;
步骤1.3.3训练时从负图像块池中以固定数量随机选择参与训练的负图像块,表示为其中∪表示的是负图像块全集,neg指的是negative,/>指尺度i下的负图像块。
CN202010920608.1A 2020-09-04 2020-09-04 一种基于深度学习的高性能多尺度目标检测方法 Active CN112149665B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010920608.1A CN112149665B (zh) 2020-09-04 2020-09-04 一种基于深度学习的高性能多尺度目标检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010920608.1A CN112149665B (zh) 2020-09-04 2020-09-04 一种基于深度学习的高性能多尺度目标检测方法

Publications (2)

Publication Number Publication Date
CN112149665A CN112149665A (zh) 2020-12-29
CN112149665B true CN112149665B (zh) 2024-05-07

Family

ID=73890505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010920608.1A Active CN112149665B (zh) 2020-09-04 2020-09-04 一种基于深度学习的高性能多尺度目标检测方法

Country Status (1)

Country Link
CN (1) CN112149665B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113077426B (zh) * 2021-03-23 2022-08-23 成都国铁电气设备有限公司 一种实时在线检测夹板螺栓缺陷的方法
CN113139540B (zh) * 2021-04-02 2022-11-01 北京邮电大学 背板检测方法及设备
CN113095418B (zh) * 2021-04-19 2022-02-18 航天新气象科技有限公司 一种目标检测方法及系统
CN114049627B (zh) * 2022-01-11 2022-04-08 浙江华是科技股份有限公司 可智能选择缩放尺度的船牌检测方法、装置及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003834A (zh) * 2014-12-15 2017-08-01 北京市商汤科技开发有限公司 行人检测设备和方法
CN111027547A (zh) * 2019-12-06 2020-04-17 南京大学 一种针对二维图像中的多尺度多形态目标的自动检测方法
WO2020164270A1 (zh) * 2019-02-15 2020-08-20 平安科技(深圳)有限公司 基于深度学习的行人检测方法、系统、装置及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003834A (zh) * 2014-12-15 2017-08-01 北京市商汤科技开发有限公司 行人检测设备和方法
WO2020164270A1 (zh) * 2019-02-15 2020-08-20 平安科技(深圳)有限公司 基于深度学习的行人检测方法、系统、装置及存储介质
CN111027547A (zh) * 2019-12-06 2020-04-17 南京大学 一种针对二维图像中的多尺度多形态目标的自动检测方法

Also Published As

Publication number Publication date
CN112149665A (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
CN112149665B (zh) 一种基于深度学习的高性能多尺度目标检测方法
US20220108546A1 (en) Object detection method and apparatus, and computer storage medium
CN111401201B (zh) 一种基于空间金字塔注意力驱动的航拍图像多尺度目标检测方法
JP6547069B2 (ja) 物体検出のためのサブカテゴリ認識機能付き畳み込みニューラルネットワーク
CN108416250B (zh) 人数统计方法及装置
Shi et al. Multiscale multitask deep NetVLAD for crowd counting
Liu et al. Visual defect inspection of metal part surface via deformable convolution and concatenate feature pyramid neural networks
CN111191667B (zh) 基于多尺度生成对抗网络的人群计数方法
Fang et al. Towards good practice for CNN-based monocular depth estimation
CN112149664B (zh) 一种优化分类与定位任务的目标检测方法
CN113159120A (zh) 一种基于多尺度跨图像弱监督学习的违禁物检测方法
CN110610210B (zh) 一种多目标检测方法
CN110689043A (zh) 一种基于多重注意力机制的车辆细粒度识别方法及装置
Du et al. Modeling automatic pavement crack object detection and pixel-level segmentation
CN113609895A (zh) 基于改进Yolov3的获取道路交通信息方法
CN117095180B (zh) 基于分期识别的胚胎发育阶段预测与质量评估方法
CN113092807A (zh) 基于多目标跟踪算法的城市高架道路车辆测速方法
CN113887455B (zh) 一种基于改进fcos的人脸口罩检测系统及方法
CN115984568A (zh) 一种基于YOLOv3网络的雾霾环境下目标检测方法
CN112597842B (zh) 基于人工智能的运动检测面瘫程度评估系统
Roh et al. DiffusionVID: Denoising Object Boxes with Spatio-temporal Conditioning for Video Object Detection
Sandhan et al. Object counting in a single surveillance image
Islam et al. Faster R-CNN based traffic sign detection and classification
Li et al. Anomaly detection with multi-scale pyramid grid templates
CN117949942B (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