CN114998706B - 一种基于强化学习决策区域细划分的图像目标检测方法 - Google Patents
一种基于强化学习决策区域细划分的图像目标检测方法 Download PDFInfo
- Publication number
- CN114998706B CN114998706B CN202210838559.6A CN202210838559A CN114998706B CN 114998706 B CN114998706 B CN 114998706B CN 202210838559 A CN202210838559 A CN 202210838559A CN 114998706 B CN114998706 B CN 114998706B
- Authority
- CN
- China
- Prior art keywords
- image
- target detection
- reinforcement learning
- division
- training
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 183
- 230000002787 reinforcement Effects 0.000 title claims abstract description 62
- 238000012549 training Methods 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000012360 testing method Methods 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 82
- 230000009471 action Effects 0.000 claims description 63
- 238000010586 diagram Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 24
- 238000000605 extraction Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 6
- 238000005295 random walk Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036544 posture Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- 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
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于强化学习决策区域细划分的图像目标检测方法,包括步骤1,采集图像数据集,划分为训练图像样本集和测试图像样本集;步骤2,构建基于强化学习决策区域细划分的图像目标检测模型;步骤3,训练所述基于强化学习决策区域细划分的图像目标检测模型,获得训练好的图像目标检测模型;步骤4,对测试图像样本集进行预处理,获得预处理后的测试图像;步骤5,将预处理后的测试图像输入训练好的图像目标检测模型进行目标检测,获得图像目标检测结果。该方法在处理目标少且明显的简单图片时可以提前终止,提高速度;处理小目标多且不明显的复杂图片时,可以进行更多次细划分,提高精度。
Description
技术领域
本发明属于计算机视觉技术领域,具体涉及一种基于强化学习决策区域细划分的图像目标检测方法。
背景技术
目标物体检测是找出图像中所有感兴趣的目标,并确定它们的位置和大小,是计算机视觉领域的核心问题之一。由于各类物体具有不同的外观、形状、姿态,以及成像时光照、遮挡等因素的干扰,目标检测一直是机器视觉领域最具有挑战性的问题。且在实际中,受采集设备与环境、网络传输介质与带宽、图像退化模型本身等诸多因素的约束,我们通常并不能直接得到具有边缘锐化、无成块模糊的理想高分辨率图像。这对小目标的检测与识别带来了更大的挑战。随着深度学习在图像分类任务上取得巨大进展,基于深度学习的目标检测算法逐渐成为主流。
基于深度学习的目标检测方法主要分为One-stage和Two-stage两种。One-stage方法直接通过主干网络给出类别和位置信息,是一次性生成检测框和分类预测,没有使用RPN(Region Proposal Network,区域生成网络)网路。这样的算法速度更快,但是精度相对Two-stage目标检测网络略低。目前常用的典型的One-stage目标检测网络分为YOLOv3(YouOnly Look Once v3),SSD(Single Shot Multibox Detector单次多箱探测器),DSSD(Deconvolutional Single Shot Multibox Detector反卷积式单次多箱探测器)系列等等。Two-stage方法是先生成检测框,然后进行分类,牺牲一定的速度来换取更高的精度。为了保证较高的检测精度,以及生成区域建议和与其相应的视觉特征表示,大多数现有方法采用Two-stage方法。一般情况下,Two-stage方法是首先采用RPN结构生成感兴趣区域,然后对感兴趣区域进行分类,并且微调它们的定位精度。
YOLOv3是第一个One-stage目标检测方法,随着YOLOv3的发展,YOLOv3开始越来越多的应用到工业界中,从YOLOv3开始,YOLOv3系列将图像分为三个尺度进行目标检测,分别检测大物体、中物体和小物体,但是对于目标少且目标较大的图像而言,往往只需要从一个尺度进行检测就能全部识别出来,对于场景复杂,小目标多的图片而言,三个尺度的检测结果可能不够精确。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于强化学习决策区域细划分的图像目标检测方法。
为了解决上述技术问题,本发明公开了一种基于强化学习决策区域细划分的图像目标检测方法,包括以下步骤。
步骤1,采集图像数据集,划分为训练图像样本集和测试图像样本集。
步骤2,构建基于强化学习决策区域细划分的图像目标检测模型。
步骤3,训练所述基于强化学习决策区域细划分的图像目标检测模型,获得训练好的图像目标检测模型。
步骤4,对测试图像样本集进行预处理,获得预处理后的测试图像。
步骤5,将预处理后的测试图像输入训练好的图像目标检测模型进行目标检测,获得图像目标检测结果。
进一步的,步骤2中所述基于强化学习决策区域细划分的图像目标检测模型包括深度表示模型和强化学习模型,所述深度表示模型用于提取输入图像的特征,对输入图像进行第一尺度至第四尺度中至少一个尺度的目标检测;所述强化学习模型,用于判断是否提前结束目标检测以及是否继续在下一个尺度进行检测;所述深度表示模型包括特征提取网络、第一检测头、第二检测头、第三检测头和第四检测头,所述特征提取网络用于提取输入图像的特征,第一检测头用于进行第一尺度的目标检测,获得第一预测结果;当强化学习模型判定需要继续在第二尺度进行目标检测时,第二检测头用于进行第二尺度的目标检测,获得第二预测结果;当强化学习模型判定需要继续在第三尺度进行目标检测时,第三检测头用于进行第三尺度的目标检测,获得第三预测结果;当强化学习模型判定需要继续在第四尺度进行目标检测时,第四检测头用于进行第四尺度的目标检测,获得第四预测结果;所述强化学习模型包括策略网络。
引入强化学习,通过智能体的决策决定是否提前终止检测或对图像进行更小尺度的预测,从而提高精度与速度。
进一步的,步骤3中设置训练的迭代总次数T,从1到T每次迭代训练所述基于强化学习决策区域细划分的图像目标检测模型,包括以下步骤。
步骤3.1,将训练图像样本集中的一幅图像输入特征提取网络,获得特征图;将特征图输入第一检测头,获得对应图像的第一预测结果,建立状态s。
步骤3.2,将所述状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第二检测头,获得对应图像的第二预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.3;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5。
步骤3.3,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第三检测头,获得对应图像的第三预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.4;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5。
步骤3.4,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第四检测头,获得对应图像的第四预测结果,更新状态s,计算细化分反馈奖赏Rd;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt。
步骤3.5,利用策略梯度对策略网络进行训练。
步骤3.6,重复执行步骤3.1至步骤3.5,继续从训练图像样本集中输入下一图像,直至所有图像处理结束,本次迭代过程结束。
步骤3.7,重复执行步骤3.1至步骤3.6继续下一次迭代过程,直至满足设置的迭代次数,训练过程结束,确定策略网络的参数,获得训练好的图像目标检测模型。
进一步的,步骤3.1包括以下步骤。
步骤3.1.1,将输入图像送入特征提取网络中,获得特征图,记特征图的大小为N*N;所述特征提取网络采用YOLOv3主干网络的Dark-net53子模块。
步骤3.1.2,将特征图送入第一检测头,获得第一预测结果;所述第一至第四检测头采用YOLOv3主干网络的检测头结构。
步骤3.1.3,初始化一个与特征图同样大小的已选网格矩阵,所述已选网格矩阵中的所有元素初始化全为1。
步骤3.1.4,将特征图、第一预测结果和已选网格矩阵三者拼接起来,作为状态s。
进一步的,所述策略网络包括两个卷积层和一个激活层,激活层采用sigmoid函数;步骤3.2包括以下步骤。
步骤3.2.1,将状态s输入策略网络,获得与特征图同样大小的动作概率矩阵,所述动作概率矩阵表示是否需要继续往下划分以及可能出现目标的网格概率信息,元素为0到1的数值。
步骤3.2.2,设置第一阈值,将所述动作概率矩阵中大于第一阈值的元素设为1,否则置零,将阈值比较后的动作概率矩阵与已选网格矩阵进行点乘,获得的结果更新已选网格矩阵。
步骤3.2.3,将更新后的已选网格矩阵划分为M*M个区域,所述M*M个区域与第一检测头划分的网格数一致;遍历已选网格矩阵的每个区域,当有区域中存在一个等于1的元素,将该区域设为1;当区域中所有元素均为0时,将该区域置零,并更新特征图,将特征图中对应区域的元素设为0;更新后的已选网格矩阵即为是否进行细化分的动作a,当已选网格矩阵中存在为1的区域,则进行细划分,计算细化分反馈奖赏Rd;当已选网格矩阵中不存在为1的区域,则发出结束动作,计算结束反馈奖赏Rt。
进一步的,所述步骤3.2.3中计算细化分反馈奖赏Rd采用如下奖赏函数。
其中,nda表示一次细化分动作后识别出来的目标,i表示目标索引值,1 ≤ i ≤nda,p’为执行细划分动作后新的累积预测结果,p为上一次累积预测结果,g为目标标签,IoU为预测结果与目标标签的交集与二者并集的比值。如果决策使得检测准确率提高,则奖赏为正,否则奖赏为负。
进一步的,所述步骤3.2.3中计算结束反馈奖赏Rt采用如下奖赏函数。
其中,η的值大于0,为设定的奖赏值,α为设定的第二阈值,ntotal为所有的目标数量,m为检测出来的目标数量,j为检测出来的目标索引值,1 ≤ j ≤ m。该奖赏函数的意义为:当终止检测时,如果检测准确率不小于设定的第二阈值α,则奖赏η,否则奖赏为-η。
步骤3.3和步骤3.4的步骤和步骤3.2相似,其中步骤3.3中将更新后的状态s输入强化学习模型中所述的更新后的状态s由更新后的特征图、第二预测结果和步骤3.2.2更新后的已选网格矩阵三者拼接起来;步骤3.4将更新后的状态s输入强化学习模型所述的更新后的状态s由更新后的特征图、第三预测结果和步骤3.3中更新后的已选网格矩阵三者拼接起来。
进一步的,步骤3.5中用以下公式对策略网络的参数进行更新。
代表策略梯度,Ntimg表示训练图像样本集中训练图片的总数,n表示训练图像样本集中训练图片的索引值,1 ≤ n ≤ Ntimg;Tdec代表一幅图像从细化分到细化分结束做的决策总次数,0 ≤ t ≤ Tdec-1;πθ代表当前策略,τ代表轨迹,通过强化学习采样获得;代表第n幅图像第t次决策的动作,代表第n幅图像第t次决策的状态,通过随机游走的方式采集轨迹,并求期望得到策略梯度, G指一幅图像从细化分到细化分结束这个过程中所有奖励的和,γ是奖励的折扣率。
进一步的,步骤4包括:从测试图像样本集获得测试图像,当测试图像分辨率小于设置的第三阈值时,将测试图像输入超分辨率重建网络SRCNN模型,获得高分辨率图像,即预处理后的测试图像。
对所述SRCNN模型进行训练的过程包括以下步骤。
对训练图像样本集中每张图像进行下采样处理降低图像分辨率,下采样前的图像作为高分辨率图像H,下采样后的图像作为低分辨率图像L,L和H构成一个有效的图像对用于后期SRCNN模型训练。
训练SRCNN模型时,对低分辨率图像L进行超分重建,放大还原为高分辨率图像SR,然后与高分辨率图像H进行比较,定义损失函数来进行梯度反向传播;调整模型的参数,通过迭代训练,使得差异最小,其中损失函数的定义为如下公式。
继续下一次迭代过程,直至满足设置的迭代次数,SRCNN模型训练过程结束,确定SRCNN模型的网络参数。
该方法引入SRCNN(Super-resolution Using Deep Convolutional Networks)作为预处理模块,对输入图像放大与修复,以克服由于图像采集***或环境本身的限制,导致的成像图像模糊、质量低下、感兴趣区域不显著等问题。
进一步的,步骤5包括以下步骤。
将预处理后的测试图像输入特征提取网络,获得特征图。
初始化已选网格矩阵,将特征图输入第一检测头,获得对应图像的第一预测结果;将特征图、已选网格矩阵和第一预测结果结合起来作为状态s。
将状态s作为策略网络的输入,并根据其输出执行动作a,决定是否需要进行细化分以及需要细化分的区域。
更新已选网格矩阵并获取下一步的预测结果,直到根据策略网络的输出选择结束动作或者循环次数超过3次时,检测过程结束,输出图像目标检测结果。
有益效果:本发明可以对输入图像进行放大与修复,以克服由于图像采集***或环境本身的限制,导致的成像图像模糊、质量低下、感兴趣区域不显著等问题。并且可以动态的根据不同的图片进行不同尺度的预测,在处理比较简单的图片时可以提前终止,提高速度;处理复杂图片的时候,可以预测需要精细划分的区域以及所需精细划分的层数,提高精度。本发明将深度学习与强化学习结合在一起,通过不断地尝试来积累经验,从而得到最优的目标检测策略,提高了目标检测的精度。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本申请实施例提供的一种基于强化学习决策区域细划分的图像目标检测模型的网络结构图。
图2为本申请实施例提供的一种基于强化学习决策区域细划分的图像目标检测方法的流程图。
图3为本申请实施例提供的一种基于强化学习决策区域细划分图像目标检测模型中策略网络架构图。
图4为本申请实施例提供的一种基于强化学习决策区域细划分的图像目标检测方法第一次检测的效果示意图。
图5为本申请实施例提供的一种基于强化学习决策区域细划分的图像目标检测方法对所选区域进行第二次检测的效果示意图。
图6为本申请实施例提供的一种基于强化学习决策区域细划分的图像目标检测方法对所选区域进行第三次检测的效果示意图。
具体实施方式
下面将结合附图,对本发明的实施例进行描述。
本实施例的一种基于强化学习决策区域细划分的图像目标检测方法,包括以下步骤。
步骤1,采集图像数据集,划分为训练图像样本集和测试图像样本集,划分比例为8:2。
步骤2,构建基于强化学习决策区域细划分的图像目标检测模型。
如图1所示,所述基于强化学习决策区域细划分的图像目标检测模型包括深度表示模型和强化学习模型,所述深度表示模型用于提取输入图像的特征,对输入图像进行第一尺度至第四尺度中至少一个尺度的目标检测;所述强化学习模型,用于判断是否提前结束目标检测以及是否继续在下一个尺度进行检测;所述深度表示模型包括特征提取网络、第一检测头、第二检测头、第三检测头和第四检测头,所述特征提取网络用于提取输入图像的特征,第一检测头用于进行第一尺度的目标检测,将输入图像划分为3*3的网格,获得第一预测结果;当强化学习模型判定需要继续在第二尺度进行目标检测时,第二检测头用于进行第二尺度的目标检测,将输入图像划分为9*9的网格,获得第二预测结果;当强化学习模型判定需要继续在第三尺度进行目标检测时,第三检测头用于进行第三尺度的目标检测,将输入图像划分为27*27的网格,获得第三预测结果;当强化学习模型判定需要继续在第四尺度进行目标检测时,第四检测头用于进行第四尺度的目标检测,将输入图像划分为81*81的网格,获得第四预测结果;所述强化学习模型包括策略网络,如图3所示,所述策略网络包括两个卷积层和一个激活层,激活层采用sigmoid函数。
YOLOv3对图像分为三个尺度进行预测,本实施例将YOLOv3的检测分为四个尺度,分别用来检测大、中、小和极小四种不同大小的物体,按照分辨率来界定,第一尺度的目标检测检测大物体,大物体>96*96;第二尺度的目标检测检测中物体,中物体为32*32~96*96;第三尺度的目标检测检测小物体,小物体为16*16~32*32;第四尺度的目标检测检测极小物体,极小物体<16*16;将深度强化学习中的策略网络与YOLOv3相结合,输入图像的当前状态,输出两个动作,决定是否提前结束检测以及是否继续在下一个更小的尺度进行检测,完成图像目标的检测与识别。
所述特征提取网络由YOLOv3主干网络Dark-net53子模块进行构建,包括一个CBL模块(Conv+BN+Leaky relu),两个Res unit x模块(CBL+CBL+x*Res unit)(x指残差块的数目,由YOLOv3模型确定)。
将深度强化学习与YOLOv3结合在一起,深度学习的特点是自动特征提取,强化学习的特点是学习环境-动作的最佳映射,使得***选择的动作在当前的环境中可以得到最多的累计奖赏;利用深度学习提取输入图像的特征,通过强化学习更高效地训练深度神经网络,从而完成目标检测。
步骤3,训练所述基于强化学习决策区域细划分的图像目标检测模型,获得训练好的图像目标检测模型。
设置训练的迭代总次数T,从1到T每次迭代训练所述基于强化学习决策区域细划分的图像目标检测模型,如图2所示,包括以下步骤。
步骤3.1,将训练图像样本集中的一幅图像输入特征提取网络,获得特征图;将特征图输入第一检测头,获得对应图像的第一预测结果,建立状态s;具体包括如下步骤。
步骤3.1.1,将输入图像送入特征提取网络中,获得特征图,记特征图的大小为N*N,本实施例中N=81;所述特征提取网络采用YOLOv3主干网络的Dark-net53子模块。
步骤3.1.2,将特征图送入第一检测头,获得第一预测结果;所述第一至第四检测头采用YOLOv3主干网络的检测头结构。
步骤3.1.3,初始化一个与特征图同样大小的已选网格矩阵,所述已选网格矩阵中的所有元素初始化全为1;本实施例中,已选网格矩阵的大小为81*81。
步骤3.1.4,将特征图、第一预测结果和已选网格矩阵三者拼接起来,作为状态s。
步骤3.2,将所述状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第二检测头,获得对应图像的第二预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.3;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5。
步骤3.2包括以下步骤。
步骤3.2.1,将状态s输入策略网络,获得与特征图同样大小的动作概率矩阵,所述动作概率矩阵表示是否需要继续往下划分以及可能出现目标的网格概率信息,元素为0到1的数值;本实施例中,动作概率矩阵的大小为81*81。
步骤3.2.2,设置第一阈值,将所述动作概率矩阵中大于第一阈值的元素设为1,否则置零,将阈值比较后的动作概率矩阵与已选网格矩阵进行点乘,获得的结果更新已选网格矩阵。本实施例中,第一阈值可以设置为0.8。
步骤3.2.3,将更新后的已选网格矩阵划分为M*M个区域,所述M*M个区域与第一检测头划分的网格数一致,本实施例中划分为3*3=9的区域,每块是27*27个数;遍历已选网格矩阵的每个区域,当有区域中存在一个等于1的元素,将该区域设为1;当区域中所有元素均为0时,将该区域置零,并更新特征图,将特征图中对应区域的元素设为0;更新后的已选网格矩阵即为是否进行细化分的动作a,当已选网格矩阵中存在为1的区域,则进行细划分,即将更新后的特征图输入第二检测头,获得对应图像的第二预测结果,更新状态s,计算细化分反馈奖赏Rd;当已选网格矩阵中不存在为1的区域,则发出结束动作,计算结束反馈奖赏Rt。
计算细化分反馈奖赏Rd采用如下奖赏函数。
其中,nda表示一次细化分动作后识别出来的目标,i表示目标索引值,1 ≤ i ≤nda,p’为执行细划分动作后新的累积预测结果,p为上一次累积预测结果,g为目标标签,IoU为预测结果与目标标签的交集与二者并集的比值。
计算结束反馈奖赏Rt采用如下奖赏函数。
其中,η的值大于0,为设定的奖赏值,本实施例中设置为1;α为设定的第二阈值,本实施例中设置为0.9;ntotal为所有的目标数量,m为检测出来的目标数量,j为检测出来的目标索引值,1 ≤ j ≤ m。
步骤3.3,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第三检测头,获得对应图像的第三预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.4;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5;
步骤3.3包括以下步骤。
步骤3.3.1,将更新后的状态s(由更新后的特征图、第二预测结果和步骤3.2.2更新后的已选网格矩阵三者拼接起来)输入策略网络,获得与特征图同样大小的动作概率矩阵,所述动作概率矩阵表示是否需要继续往下划分以及可能出现目标的网格概率信息,元素为0到1的数值;本实施例中,动作概率矩阵的大小为81*81。
步骤3.3.2,将所述动作概率矩阵中大于第一阈值的元素设为1,否则置零,将阈值比较后的动作概率矩阵与已选网格矩阵进行点乘,获得的结果更新已选网格矩阵。
步骤3.3.3,将更新后的已选网格矩阵划分为M*M个区域,所述M*M个区域与第二检测头划分的网格数一致,本实施例中划分为9*9=81的区域,每块是9*9个数;遍历已选网格矩阵的每个区域,当有区域中存在一个等于1的元素,将该区域设为1;当区域中所有元素均为0时,将该区域置零,并更新特征图,将特征图中对应区域的元素设为0;更新后的已选网格矩阵即为是否进行细化分的动作a,当已选网格矩阵中存在为1的区域,则进行细划分,即将更新后的特征图输入第三检测头,获得对应图像的第三预测结果,更新状态s,计算细化分反馈奖赏Rd;当已选网格矩阵中不存在为1的区域,则发出结束动作,计算结束反馈奖赏Rt。
计算细化分反馈奖赏Rd和结束反馈奖赏Rt的步骤和步骤3.2相似,此处不再赘述。
步骤3.4,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第四检测头,获得对应图像的第四预测结果,更新状态s,计算细化分反馈奖赏Rd;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt;
步骤3.4包括以下步骤。
步骤3.4.1,将更新后的状态s(由更新后的特征图、第三预测结果和步骤3.3中更新后的已选网格矩阵三者拼接起来)输入策略网络,获得与特征图同样大小的动作概率矩阵,所述动作概率矩阵表示是否需要继续往下划分以及可能出现目标的网格概率信息,元素为0到1的数值;本实施例中,动作概率矩阵的大小为81*81。
步骤3.4.2,将所述动作概率矩阵中大于第一阈值的元素设为1,否则置零,将阈值比较后的动作概率矩阵与已选网格矩阵进行点乘,获得的结果更新已选网格矩阵。
步骤3.4.3,将更新后的已选网格矩阵划分为M*M个区域,所述M*M个区域与第三检测头划分的网格数一致,本实施例中划分为27*27=729的区域,每块是3*3个数;遍历已选网格矩阵的每个区域,当有区域中存在一个等于1的元素,将该区域设为1;当区域中所有元素均为0时,将该区域置零,并更新特征图,将特征图中对应区域的元素设为0;更新后的已选网格矩阵即为是否进行细化分的动作a,当已选网格矩阵中存在为1的区域,则进行细划分,即将更新后的特征图输入第四检测头,获得对应图像的第四预测结果,更新状态s,计算细化分反馈奖赏Rd;当已选网格矩阵中不存在为1的区域,则发出结束动作,计算结束反馈奖赏Rt。
计算细化分反馈奖赏Rd和结束反馈奖赏Rt的步骤和步骤3.2相似,此处不再赘述。
步骤3.5,利用策略梯度对策略网络进行训练。
用以下公式对策略网络的参数进行更新。
代表策略梯度,Ntimg表示训练图像样本集中训练图片的总数,n表示训练图像样本集中训练图片的索引值,1 ≤ n ≤ Ntimg;Tdec代表一幅图像从细化分到细化分结束做的决策总次数,0 ≤ t ≤ Tdec-1;πθ代表当前策略,θ表示策略网络的网络参数,τ代表轨迹,代表第n幅图像第t次决策的动作,代表第n幅图像第t次决策的状态,通过随机游走的方式采集轨迹,并求期望得到策略梯度,G指一幅图像从细化分到细化分结束这个过程中所有奖励的和,γ是奖励的折扣率,0 ≤ γ ≤1。
步骤3.6,重复执行步骤3.1至步骤3.5,继续从训练图像样本集中输入下一图像,直至所有图像处理结束,本次迭代过程结束。
步骤3.7,重复执行步骤3.1至步骤3.6继续下一次迭代过程,直至满足设置的迭代次数,训练过程结束,确定策略网络的参数,获得训练好的图像目标检测模型。
步骤4,对测试图像样本集进行预处理,获得预处理后的测试图像;具体包括以下步骤。
从测试图像样本集获得测试图像,当测试图像分辨率小于设置的第三阈值时,将测试图像输入超分辨率重建网络SRCNN模型,获得高分辨率图像,即预处理后的测试图像。本实施例中,第三阈值为224*224。
对所述SRCNN模型进行训练的过程包括以下步骤。
对训练图像样本集中每张图像进行下采样处理降低图像分辨率,一般有2倍下采样、3倍下采样、4倍下采样等。如果是2倍下采样,则图像长宽均变成原来的1/2。下采样前的图像作为高分辨率图像H,下采样后的图像作为低分辨率图像L,L和H构成一个有效的图像对用于后期SRCNN模型训练。
训练SRCNN模型时,对低分辨率图像L进行超分重建,放大还原为高分辨率图像SR,然后与高分辨率图像H进行比较,定义损失函数来进行梯度反向传播;调整模型的参数,通过迭代训练,使得差异最小,其中损失函数的定义为如下公式。
继续下一次迭代过程,直至满足设置的迭代次数,SRCNN模型训练过程结束,确定SRCNN模型的网络参数。
步骤5,将预处理后的测试图像输入训练好的图像目标检测模型进行目标检测,获得图像目标检测结果。具体包括以下步骤。
将预处理后的测试图像输入特征提取网络,获得特征图。
初始化已选网格矩阵,将特征图输入第一检测头,获得对应图像的第一预测结果;将特征图、已选网格矩阵和第一预测结果结合起来作为状态s。
将状态s作为策略网络的输入,并根据其输出执行动作a,决定是否需要进行细化分以及需要细化分的区域。
更新已选网格矩阵并获取下一步的预测结果,直到根据策略网络的输出选择结束动作或者循环次数超过3次时,检测过程结束,输出图像目标检测结果。
强化学习是一种重要的机器学习方法,它通过智能体与动态环境之间的交互进行决策,通过不断地尝试积累经验,从而获得最优的策略。本实施例通过将强化学习引入YOLOv3,通过图片当前的状态,智能体进行决定是否需要继续往下划分,在处理比较简单的图片时可以提前终止,提高速度;处理复杂图片的时候,可以预测需要精细划分的区域以及所需精细划分的层数,提高精度。
如图4所示为使用本实施例提供的图像目标检测方法第一次检测到的效果示意图,由策略网络得到需要再次检测的区域如图5左侧图片所示,对所选区域进行第二次检测的效果示意图如图5右侧图片所示。继续由策略网络得到需要再次检测的区域如图6左侧图片所示,对所选区域进行第三次检测的效果示意图如图6右侧图片所示,完成检测。
具体实现中,本申请提供计算机存储介质以及对应的数据处理单元,其中,该计算机存储介质能够存储计算机程序,所述计算机程序通过数据处理单元执行时可运行本发明提供的一种基于强化学习决策区域细划分的图像目标检测方法的发明内容以及各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,ROM)或随机存储记忆体(random access memory,RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术方案可借助计算机程序以及其对应的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机程序即软件产品的形式体现出来,该计算机程序软件产品可以存储在存储介质中,包括若干指令用以使得一台包含数据处理单元的设备(可以是个人计算机,服务器,单片机,MUU或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本发明提供了一种基于强化学习决策区域细划分的图像目标检测方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (8)
1.一种基于强化学习决策区域细划分的图像目标检测方法,其特征在于,包括:
步骤1,采集图像数据集,划分为训练图像样本集和测试图像样本集;
步骤2,构建基于强化学习决策区域细划分的图像目标检测模型;
步骤3,训练所述基于强化学习决策区域细划分的图像目标检测模型,获得训练好的图像目标检测模型;
步骤4,对测试图像样本集进行预处理,获得预处理后的测试图像;
步骤5,将预处理后的测试图像输入训练好的图像目标检测模型进行目标检测,获得图像目标检测结果;
步骤2中所述基于强化学习决策区域细划分的图像目标检测模型包括深度表示模型和强化学习模型,所述深度表示模型用于提取输入图像的特征,对输入图像进行第一尺度至第四尺度中至少一个尺度的目标检测;所述强化学习模型,用于判断是否提前结束目标检测以及是否继续在下一个尺度进行检测;所述深度表示模型包括特征提取网络、第一检测头、第二检测头、第三检测头和第四检测头,所述特征提取网络用于提取输入图像的特征,第一检测头用于进行第一尺度的目标检测,获得第一预测结果;当强化学习模型判定需要继续在第二尺度进行目标检测时,第二检测头用于进行第二尺度的目标检测,获得第二预测结果;当强化学习模型判定需要继续在第三尺度进行目标检测时,第三检测头用于进行第三尺度的目标检测,获得第三预测结果;当强化学习模型判定需要继续在第四尺度进行目标检测时,第四检测头用于进行第四尺度的目标检测,获得第四预测结果;所述强化学习模型包括策略网络;
步骤3中设置训练的迭代总次数T,从1到T每次迭代训练所述基于强化学习决策区域细划分的图像目标检测模型,包括:
步骤3.1,将训练图像样本集中的一幅图像输入特征提取网络,获得特征图;将特征图输入第一检测头,获得对应图像的第一预测结果,建立状态s;
步骤3.2,将所述状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第二检测头,获得对应图像的第二预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.3;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5;
步骤3.3,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第三检测头,获得对应图像的第三预测结果,更新状态s,计算细化分反馈奖赏Rd,执行步骤3.4;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt,执行步骤3.5;
步骤3.4,将更新后的状态s输入强化学习模型,获得是否进行细化分的动作a;若需要进行细化分,则更新特征图,将更新后的特征图输入第四检测头,获得对应图像的第四预测结果,更新状态s,计算细化分反馈奖赏Rd;若不需要进行细化分,发出结束动作,计算结束反馈奖赏Rt;
步骤3.5,利用策略梯度对策略网络进行训练;
步骤3.6,重复执行步骤3.1至步骤3.5,继续从训练图像样本集中输入下一图像,直至所有图像处理结束,本次迭代过程结束;
步骤3.7,重复执行步骤3.1至步骤3.6继续下一次迭代过程,直至满足设置的迭代次数,训练过程结束,确定策略网络的参数,获得训练好的图像目标检测模型。
2.根据权利要求1所述的一种基于强化学习决策区域细划分的图像目标检测方法,其特征在于,步骤3.1包括以下步骤:
步骤3.1.1,将输入图像送入特征提取网络中,获得特征图,记特征图的大小为N*N;所述特征提取网络采用YOLOv3主干网络的Dark-net53子模块;
步骤3.1.2,将特征图送入第一检测头,获得第一预测结果;第一至第四检测头采用YOLOv3主干网络的检测头结构;
步骤3.1.3,初始化一个与特征图同样大小的已选网格矩阵,所述已选网格矩阵中的所有元素初始化全为1;
步骤3.1.4,将特征图、第一预测结果和已选网格矩阵三者拼接起来,作为状态s。
3.根据权利要求2所述的一种基于强化学习决策区域细划分的图像目标检测方法,其特征在于,所述策略网络包括两个卷积层和一个激活层,激活层采用sigmoid函数;步骤3.2包括以下步骤:
步骤3.2.1,将状态s输入策略网络,获得与特征图同样大小的动作概率矩阵,所述动作概率矩阵表示是否需要继续往下划分以及可能出现目标的网格概率信息,元素为0到1的数值;
步骤3.2.2,设置第一阈值,将所述动作概率矩阵中大于第一阈值的元素设为1,否则置零,将阈值比较后的动作概率矩阵与已选网格矩阵进行点乘,获得的结果更新已选网格矩阵;
步骤3.2.3,将更新后的已选网格矩阵划分为M*M个区域,所述M*M个区域与第一检测头划分的网格数一致;遍历已选网格矩阵的每个区域,当有区域中存在一个等于1的元素,将该区域设为1;当区域中所有元素均为0时,将该区域置零,并更新特征图,将特征图中对应区域的元素设为0;更新后的已选网格矩阵即为是否进行细化分的动作a,当已选网格矩阵中存在为1的区域,则进行细划分,计算细化分反馈奖赏Rd;当已选网格矩阵中不存在为1的区域,则发出结束动作,计算结束反馈奖赏Rt。
7.根据权利要求6所述的一种基于强化学习决策区域细划分的图像目标检测方法,其特征在于,步骤4包括:从测试图像样本集获得测试图像,当测试图像分辨率小于设置的第三阈值时,将测试图像输入超分辨率重建网络SRCNN模型,获得高分辨率图像,即预处理后的测试图像;
对所述SRCNN模型进行训练的过程包括以下步骤:
对训练图像样本集中每张图像进行下采样处理降低图像分辨率,下采样前的图像作为高分辨率图像H,下采样后的图像作为低分辨率图像L,L和H构成一个有效的图像对用于后期SRCNN模型训练;
训练SRCNN模型时,对低分辨率图像L进行超分重建,放大还原为高分辨率图像SR,然后
与高分辨率图像H进行比较,定义损失函数来进行梯度反向传播;调整模型的参数,通过迭
代训练,使得差异最小,其中损失函数的定义为:
继续下一次迭代过程,直至满足设置的迭代次数,SRCNN模型训练过程结束,确定SRCNN模型的网络参数。
8.根据权利要求7所述的一种基于强化学习决策区域细划分的图像目标检测方法,其特征在于,步骤5包括以下步骤:
将预处理后的测试图像输入特征提取网络,获得特征图;
初始化已选网格矩阵,将特征图输入第一检测头,获得对应图像的第一预测结果;将特征图、已选网格矩阵和第一预测结果结合起来作为状态s;
将状态s作为策略网络的输入,并根据其输出执行动作a,决定是否需要进行细化分以及需要细化分的区域;
更新已选网格矩阵并获取下一步的预测结果,直到根据策略网络的输出选择结束动作或者循环次数超过3次时,检测过程结束,输出图像目标检测结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210838559.6A CN114998706B (zh) | 2022-07-18 | 2022-07-18 | 一种基于强化学习决策区域细划分的图像目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210838559.6A CN114998706B (zh) | 2022-07-18 | 2022-07-18 | 一种基于强化学习决策区域细划分的图像目标检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114998706A CN114998706A (zh) | 2022-09-02 |
CN114998706B true CN114998706B (zh) | 2022-10-28 |
Family
ID=83022161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210838559.6A Active CN114998706B (zh) | 2022-07-18 | 2022-07-18 | 一种基于强化学习决策区域细划分的图像目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114998706B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764006B (zh) * | 2018-02-05 | 2021-11-02 | 北京航空航天大学 | 一种基于深度强化学习的sar图像目标检测方法 |
CN110135502B (zh) * | 2019-05-17 | 2023-04-18 | 东南大学 | 一种基于强化学习策略的图像细粒度识别方法 |
CN112017189B (zh) * | 2020-10-26 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 图像分割方法、装置、计算机设备和存储介质 |
-
2022
- 2022-07-18 CN CN202210838559.6A patent/CN114998706B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114998706A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444878B (zh) | 一种视频分类方法、装置及计算机可读存储介质 | |
CN109785385B (zh) | 视觉目标跟踪方法及*** | |
CN111696110B (zh) | 场景分割方法及*** | |
CN113657560B (zh) | 基于节点分类的弱监督图像语义分割方法及*** | |
US20220414838A1 (en) | Image dehazing method and system based on cyclegan | |
US20200111214A1 (en) | Multi-level convolutional lstm model for the segmentation of mr images | |
CN106339984A (zh) | 基于k均值驱动卷积神经网络的分布式图像超分辨方法 | |
CN112200887A (zh) | 一种基于梯度感知的多聚焦图像融合方法 | |
CN114140469A (zh) | 一种基于多层注意力的深度分层图像语义分割方法 | |
CN111445496B (zh) | 一种水下图像识别跟踪***及方法 | |
CN116228686A (zh) | 一种基于轻量级网络的划痕缺陷检测方法、装置以及设备 | |
CN112508029A (zh) | 一种基于目标框标注的实例分割方法 | |
CN112418032A (zh) | 一种人体行为识别方法、装置、电子设备及存储介质 | |
CN116342536A (zh) | 基于轻量化模型的铝带材表面缺陷检测方法、***及设备 | |
CN117456167A (zh) | 一种基于改进YOLOv8s的目标检测算法 | |
CN114092467A (zh) | 一种基于轻量化卷积神经网络的划痕检测方法及*** | |
CN111612803B (zh) | 一种基于图像清晰度的车辆图像语义分割方法 | |
CN113033371A (zh) | 基于csp模型的多级特征融合行人检测方法 | |
CN117437423A (zh) | 基于sam协同学习和跨层特征聚合增强的弱监督医学图像分割方法及装置 | |
CN114998706B (zh) | 一种基于强化学习决策区域细划分的图像目标检测方法 | |
US20230073175A1 (en) | Method and system for processing image based on weighted multiple kernels | |
CN116452472A (zh) | 基于语义知识引导的低照度图像增强方法 | |
Yadav et al. | Image detection in noisy images | |
CN115205518A (zh) | 一种基于YOLO v5s网络结构的目标检测方法及其*** | |
CN112396620A (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 |