正在加载图片...
第5期 王照国,等:基于F1值的非极大值抑制阈值自动选取方法 ·1009· 滤阈值,图像的密度由模型检测框数目来表示。 集合B,记录B的数目numb: F1值为检测结果准确率和召回率的调和平均,在 2)在thresh domain内遍历阈值,利用阈值运 目标检测任务中,准确率采用检测结果中真实框 行NMS算法,计算F1值,记录使得F1值最高的 所占比例来表示,而召回率采用真实框中占检测 NMS阈值best t; 框比例表示,这样同时考虑了检测模型的准确率 3)得到所有图像未经过NMS处理的检测框 和召回率。 数目numb,以及使得F1值最高的阈值best t; FI=2x PXR 4)利用(num_b,best t)构建映射关系map。 P+R (3) 有了映射关系,在测试阶段,将测试图片输入 式中:P表示检测模型的准确率;R表示检测的召 检测算法,得到未经过滤的检测框集合,根据检 回率。 测框数目numb以及映射关系map得到对应的 当一幅图像中物体较多时,也就意味着图像 阈值best t,利用best t来运行NMS算法。 中物体密度可能相对更大,物体之间重叠的可能 通过采用F1值作为优化指标,本算法综合考 性就越高,针对物体数目多的图像,在应用 虑了检测算法的召回率和准确率,使得NMS算 NMS算法时应该设定一个较大的阈值,这样可以 法的阈值根据每幅图像的物体密度自动化调整, 解决重叠物体带来的漏检问题,避免过滤真实物 避免了对于人为设定超参数的依赖性,减少了超 体。而对物体稀疏的图像而言,产生重叠的可能 参数调整的时间成本,同时在一定程度上解决了 性就会越小,因此阈值可以设置为一个较低的 检测的漏检和误检问题,在检测任务上面的性能 值,以此避免误检现象的出现。 也获得了提升。 首先,我们需要明确合理阈值存在的范围界 限。应用NMS处理目标检测问题时,阈值通常 3实验分析 选择在0.4~0.6,为了保证结果的合理性,避免异 常值出现,我们将阈值范围限定在0.3~0.7,因为 实验采用的是YOLOv3模型,YOLOv3网络基 在实验过程中发现阈值设定过高或者过低都会对 于Darknet网络构建,一共有53个卷积层。由于 算法性能产生负面影响。 YOLO3是端到端的检测模型,所以并不需要像双 明确阈值范围之后,就可以构建映射关系。 阶段目标检测算法那样分开进行训练。我们采用 首先我们需要在训练数据集上面应用训练好的检 作者提供的预训练权重进行训练,这样能够取得更 测算法产生检测框集合B,记录B中检测框数目 快的收敛速度。我们提出的算法额外的存储空间 numb,接下来在阈值范围内遍历可能的阈值,利 仅仅为一个映射关系模型,相较于我们的检测模 用选定的阈值应用NMS算法得到过滤后的检测 型,大小可以忽略。时间上面,在构建映射关系的 结果,然后根据样本标签与检测结果计算检测的 过程中,需要的时间小于检测模型训练一轮的时 间,因此额外的时间开销在可接受的范围内。 准确率和召回率,从而计算它们的F1值。在目标 检测任务中,准确率采用检测结果中真实框所占 3.1实验数据以及实验参数 比例来表示,而召回率采用真实框中占检测框比 本实验采用的数据集是Pascal VOC20072o 例表示。记录使得F1值最高的NMS阈值best_t, 数据集,其中包括训练集VOC2007 trainval、测试 遍历训练数据之后,就可以得到每一幅图像未经 集VOC2007test以及验证集VOC2007val三部 过NMS处理的检测框数目numb,以及使得 分。原始Pascal VOC2007数据集对于每一个边 F1值最高的阈值best_t,然后利用(numb, 界框的标注格式是(x,1,x2,2),表示边界框左上 best t)构建映射关系map。这里我们尝试了几种 和右下点坐标值,我们首先需要将其转换为(x,y 不同的映射关系,从最简单的线性回归到K均值 w,)格式,即表示中间点坐标以及边界框长宽的 以及朴素贝叶斯方法: 格式。除此之外,为了保证模型训练效果,需要 P(best_tnum_b)=P(best_t)P(num_bbest_t) 将标注数据按照图片尺寸进行归一化操作。 (4) P(num b) 在训练过程中设置batch size大小为16,并 作为本文的核心部分,在构建映射关系阶段, 应用了学习率衰减策略,学习率衰减权重设置为 本文提出的算法流程如下: 07,此外,还应用了多尺度训练技巧,每隔一定 输入检测模型model,,训练数据集data,阈 的iteration随机选取一个尺度进行训练来提高精 值范围thresh_domain。 度。除此之外我们对模型添加了数据增强,能够 输出映射关系map。 进一步提高模型精度。 l)在数据集data上面应用model产生检测框 图4为训练过程中检测衡量指标mAP值的滤阈值,图像的密度由模型检测框数目来表示。 F1 值为检测结果准确率和召回率的调和平均,在 目标检测任务中,准确率采用检测结果中真实框 所占比例来表示,而召回率采用真实框中占检测 框比例表示,这样同时考虑了检测模型的准确率 和召回率。 F1 = 2× P×R P+R (3) 式中:P 表示检测模型的准确率;R 表示检测的召 回率。 当一幅图像中物体较多时,也就意味着图像 中物体密度可能相对更大,物体之间重叠的可能 性就越高,针对物体数目多的图像,在应 用 NMS 算法时应该设定一个较大的阈值,这样可以 解决重叠物体带来的漏检问题,避免过滤真实物 体。而对物体稀疏的图像而言,产生重叠的可能 性就会越小,因此阈值可以设置为一个较低的 值,以此避免误检现象的出现。 首先,我们需要明确合理阈值存在的范围界 限。应用 NMS 处理目标检测问题时,阈值通常 选择在 0.4~0.6,为了保证结果的合理性,避免异 常值出现,我们将阈值范围限定在 0.3~0.7,因为 在实验过程中发现阈值设定过高或者过低都会对 算法性能产生负面影响。 明确阈值范围之后,就可以构建映射关系。 首先我们需要在训练数据集上面应用训练好的检 测算法产生检测框集合 B,记录 B 中检测框数目 num_b,接下来在阈值范围内遍历可能的阈值,利 用选定的阈值应用 NMS 算法得到过滤后的检测 结果,然后根据样本标签与检测结果计算检测的 准确率和召回率,从而计算它们的 F1 值。在目标 检测任务中,准确率采用检测结果中真实框所占 比例来表示,而召回率采用真实框中占检测框比 例表示。记录使得 F1 值最高的 NMS 阈值 best_t, 遍历训练数据之后,就可以得到每一幅图像未经 过 NMS 处理的检测框数目 num_b,以及使得 F1 值最高的阈 值 best_t,然后利 用 (num_b, best_t) 构建映射关系 map。这里我们尝试了几种 不同的映射关系,从最简单的线性回归到 K 均值 以及朴素贝叶斯方法: P(best_t|num_b) = P(best_t)P(num_b|best_t) P(num_b) (4) 作为本文的核心部分,在构建映射关系阶段, 本文提出的算法流程如下: 输入 检测模型 model,训练数据集 data,阈 值范围 thresh_domain。 输出 映射关系 map。 1) 在数据集 data 上面应用 model 产生检测框 集合 B,记录 B 的数目 num_b; 2) 在 thresh_domain 内遍历阈值,利用阈值运 行 NMS 算法,计算 F1 值,记录使得 F1 值最高的 NMS 阈值 best_t; 3) 得到所有图像未经过 NMS 处理的检测框 数目 num_b,以及使得 F1 值最高的阈值 best_t; 4) 利用 (num_b,best_t) 构建映射关系 map。 有了映射关系,在测试阶段,将测试图片输入 检测算法,得到未经过滤的检测框集合,根据检 测框数目 num_b 以及映射关系 map 得到对应的 阈值 best_t,利用 best_t 来运行 NMS 算法。 通过采用 F1 值作为优化指标,本算法综合考 虑了检测算法的召回率和准确率,使得 NMS 算 法的阈值根据每幅图像的物体密度自动化调整, 避免了对于人为设定超参数的依赖性,减少了超 参数调整的时间成本,同时在一定程度上解决了 检测的漏检和误检问题,在检测任务上面的性能 也获得了提升。 3 实验分析 实验采用的是 YOLOv3 模型,YOLOv3 网络基 于 Darknet 网络构建,一共有 53 个卷积层。由于 YOLOv3 是端到端的检测模型,所以并不需要像双 阶段目标检测算法那样分开进行训练。我们采用 作者提供的预训练权重进行训练,这样能够取得更 快的收敛速度。我们提出的算法额外的存储空间 仅仅为一个映射关系模型,相较于我们的检测模 型,大小可以忽略。时间上面,在构建映射关系的 过程中,需要的时间小于检测模型训练一轮的时 间,因此额外的时间开销在可接受的范围内。 3.1 实验数据以及实验参数 本实验采用的数据集是 Pascal VOC 2007[20] 数据集,其中包括训练集 VOC 2007 trainval、测试 集 VOC 2007 test 以及验证集 VOC 2007 val 三部 分。原始 Pascal VOC 2007 数据集对于每一个边 界框的标注格式是 (x1 , y1 , x2 , y2 ),表示边界框左上 和右下点坐标值,我们首先需要将其转换为 (x, y, w, h) 格式,即表示中间点坐标以及边界框长宽的 格式。除此之外,为了保证模型训练效果,需要 将标注数据按照图片尺寸进行归一化操作。 在训练过程中设置 batch_size 大小为 16,并 应用了学习率衰减策略,学习率衰减权重设置为 0.7,此外,还应用了多尺度训练技巧,每隔一定 的 iteration 随机选取一个尺度进行训练来提高精 度。除此之外我们对模型添加了数据增强,能够 进一步提高模型精度。 图 4 为训练过程中检测衡量指标 mAP 值的 第 5 期 王照国,等:基于 F1 值的非极大值抑制阈值自动选取方法 ·1009·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有