zoukankan      html  css  js  c++  java
  • 多目标检测整合算法

    多目标检测整合算法

    输入输出接口

    Input:image/video

    Output:(1)BandingBox左上右下的坐标位置

            (2)Type类型:人,车,…,…

            (3) 执行度:是指判别目标物为某种类型的比率。比如为人,车,…,…的比率。

            (4)需要灯光投射控制区域的左上右下的坐标位置

            (5)摄像头与目标物距离

            (6)ID号(特指目标物跟踪)

    算法介绍和设计方案

    在图片多目标检测的应用基础之上,对视频帧进行离散化的处理,从而达到处理视频的效果。评判目标检测系统的标准有三个重要的指标。

    (1)使用公式:IOU=TP/(TP+FP+FN)来评估模型,即判别预测的方框和真实的方框的重叠度。

    (2)mAP(Mean Average Precision),在多个类别的检测中,每一个类别都可以调整阈值,算出召回率从0到1时的准确率(同一召回率取最高的准确率),计算准确率的平均值,而后再对于所有类求平均得到 mAP。该值介于0到1之间,且越大越好。

    (3) FPS(Frames Per Second),用于评判系统检测速度。本系统主要按照以上三个指标对多目标检测任务进行评估,最终在数据集上的达到官方实验效果,鉴于数据各种场景的复杂性,其最终IOU和mAP难以评估,估计会低于预期。

    在实现标准数据集实验效果的基础上,进行各种场景的迁移学习从而进行微调,并最终应用于处理视频帧,现初步预定帧率为35FPS,但使用环境的不同可能会影响最终的帧率。

     

    图1. 多目标检测实例

    参考传统目标检测算法,综合目前各种深度学习网络模型在多目标检测任务中的应用效果,本项目拟采用初步复现,稳步提升的总体路线,从经典的Faster RCNN到SDD …… 一直到最新的YOLOv3,逐一验证和改进并产品化。鉴于此,项目的开发总体流程如图2所示:

     

    图2. 系统总体流程图

    依据VOC、MS COCO等标准数据集对多目标检测任务的数据标注形式和规则,本项目的数据集需要按如下方式组织,标注数据的形式和其对应的原始图像如图3所示:

     

    图3. 数据标注样例(左)与原始图像数据(右)

    本系统暂拟定复现和改进YOLOv3网络,但在此之前会验证Faster RCNN和YOLOV3等网络模型。

    Faster RCNN网络结构说明:

     

    图4. Faster RCNN网络结构

    Faster RCNN可以看做“区域生成网络RPNs + Fast RCNN”的系统,用区域生成网络代替Fast RCNN中的Selective Search方法。 RPN网络的核心思想是使用CNN卷积神经网络直接产生Region Proposal,使用的方法本质上就是滑动窗口(只需在最后的卷积层上滑动一遍),由anchor机制和边框回归可以得到多尺度多长宽比的Region Proposal。

    YOLOV3网络结构说明:

     

    图5. YOLOV3网络结构

    YOLOV3使用VGG-16-Atrous作为基础网络,其中黄色部分是在VGG-16基础网络上添加的特征提取层。YOLOV3与YOLO不同之处是除了在最终特征图上做目标检测之外,还在之前选取的5个特特征图上进行预测。从图5可以看出,检测过程不仅在添加特征图(conv8_2, conv9_2, conv_10_2, pool_11)上进行,为了保证网络对小目标有很好检测效果,检测过程也在基础网络特征图(conv4_3, conv_7)上进行。

     

    图6. 车辆检测算法性能对比

    YOLOv3网络结构说明:

     

     

    图7. YOLOv3网络结构

    YOLOv3模型是目前YOLO系列中最新的、执行效果最好和处理速度最快的目标检测模型,可用于服务器端的部署。

    集成整合方案:

    第一,使用COCO数据集,将行人,车辆,地面标识,TSR的COCO公开数据集进行整合,使用yolov3在GPU上进行训练和测试,反复调整网络结构和参数,直到训练loss收敛,测试结果性能指标和检测图像输出显示效果较佳。

    第二,整合视觉行人,车辆,地面标识,TSR的数据集,使用上一步的yolov3网络模型,用迁移学习的方法,训练和测试视觉的数据集,反复调整yolov3的网络模型和参数,直到训练loss收敛,测试结果性能指标和检测图像输出显示效果较佳。

    第三,将上一步yolov3的网络模型集成到FPGA板子上,继续利用整合好的视觉的数据集,反复调整网络模型和参数,反复优化网络结构,保证准确度,召回率,帧率都达到较佳的效果。

    Schedule:

    在GPU上完成coco数据集上的yolov3整合。

    在GPU上完成自主采集数据集上的yolov3整合。

    在FPGA上完成自主采集数据集上的yolov3整合。

    性能指标:

    在自主采集数据集上达到(详细指标在开发过程中逐步修正)

     

     

     

    行人

    车辆

    路面标识

    TSR

    备注

    准确度

    80%(60米)

    80%(100米)

    80%(50米)

    80%(60米)

     

    召回率

    50%(60米)

    60%(100米)

    50%(50米)

    50%(60米)

     

    帧率

    30fps

    30fps

    30fps

    30fps

     

    表1. 性能指标

     

    集成

    算法开发完成后,将算法集成到嵌入式硬件平台用于路测。

  • 相关阅读:
    何谓算法
    大规模Web服务开发技术
    什么是依赖,什么是抽象
    智能Web算法
    算法评测
    好代码、坏代码之四
    SVN server setup 1
    Python正则表达式操作指南(re使用)(转)
    rpm package installation
    mysql install error:Make had returned bad status, install seems impossible
  • 原文地址:https://www.cnblogs.com/wujianming-110117/p/12481992.html
Copyright © 2011-2022 走看看