目标检测发展与综述

2023-10-29

目标检测发展与综述

绪论

在下面的某些部分,我会引用上述提及的文献,这里先做一下声明。

一、目标检测的背景及意义

目标检测是计算机视觉和数字图像处理的一个热门方向,广泛应用于机器人导航、智能视频监控、工业检测、航空航天等诸多领域,通过计算机视觉减少对人力资本的消耗,具有重要的现实意义。因此,目标检测也就成为了近年来理论和应用的研究热点,它是图像处理和计算机视觉学科的重要分支,也是智能监控系统的核心部分,同时目标检测也是泛身份识别领域的一个基础性的算法,对后续的人脸识别、步态识别、人群计数、实例分割等任务起着至关重要的作用。

二、目标检测的定义

1.目标检测的任务:

找出图像中所有感兴趣的目标(物体),并获得这一目标的类别信息和位置信息【位置和大小】(classification + localization)。

目标检测=分类+定位

2,与分类的区别:

相比分类,检测给出的是对图片前景和背景的理解,我们需要从背景中分离出感兴趣的目标,并确定这一目标的描述(类别和位置),因此检测模型的输出是一个列表,列表的每一项使用一个数组给出检出目标的类别和位置(常用矩形检测框的坐标表示)。

3.与分割的区别:

分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。

4.目标检测要解决的核心问题是:

1.目标可能出现在图像的任何位置。

2.目标有各种不同的大小。

3.目标可能有各种不同的形状。

5.目标检测的过程:

传统的目标检测方法一般分为三个阶段:首先在给定的图像上选择一些候选区域,然后对这些区域提取特征,最后使用分类器进行分类

6.目标检测面临的难点:

图来源于

Deep Learning for Generic Object Detection: A Survey

  • 高准确度(Loc acc.+Reg acc.)
    • 对类内形变的鲁棒性
      • 同类物体有很多不同的实例(不同纹理/颜色/材质等)
      • 目标实例的多样性(姿态/非刚性形变等)
      • 采样过程的条件和环境的影响(光照/尺度/遮挡/阴影/污迹/角度/背景)
      • 图像噪声(采样过程的噪声/滤波器影响/压缩的噪声等)
    • 高的可区分性
      • 类间的相似性
      • 目标物体类别多样
  • 高效性(时间、内存效率)
    • 实际中目标类别成千上万
    • 需要定位并辨别目标类别
    • 目标的可能定位数量太多
    • 图像/视频数据太多

三、目标检测的发展

1.目标检测近20年的发展

以AlexNet为分界线,2012年之前为传统算法,2013年之后为深度学习算法。

图来源于《Object Detection in 20 Years: A Survey》

从上述可知,主要分为传统和深度两种情况:

  • 传统方法比如我们所熟知的V-J检测、HOG检测、DPM算法。
  • 深度学习方法截然不同的分为两条技术路径:单阶段检测算法与两阶段检测算法。

目标检测的相关里程碑

在《Deep Learning for Generic Object Detection: A Survey》中,作者罗列出相关网络及论文的进程,并表明红色加粗部分为必看论文。

图来源于《Deep Learning for Generic Object Detection: A Survey》

在过去的20年,相关的里程碑如下图所示:

图来源于《Deep Learning for Generic Object Detection: A Survey》

四、目标检测分类

综合看的博客和知乎,我觉得下面几个图概括得挺好的

简单来看

细分

图来源于基于深度学习的目标检测算法综述(一) - 知乎 基于深度学习的目标检测算法综述(一) - 知乎

比较推荐

图来源于目标检测——目标检测方法的综述_鬼刀-CSDN博客_常用的目标检测方法https://blog.csdn.net/gaoyu1253401563/article/details/86477942?depth_1-

五、目标检测常见数据集及常见数据集格式

0.说明

有关更多数据集的介绍与格式转换,可参考我的另外两篇博客:

  • 目标检测的数据集格式说明总和
  •  VOC格式、Yolo格式、Coco格式的转换(实践篇)

1. 最常见的数据集

  • Pascal VOC
  • COCO

2. 常见的数据集格式

  • VOC格式(jpg+xml)
  • COCO格式(json)
  • Yolo格式(txt)

3. 常见数据集的概况

图来源于《Deep Learning for Generic Object Detection: A Survey》

4.数据集的区别展示

图来源于《Object Detection in 20 Years: A Survey》

六、目标检测常见评价指标

  1. 主要评价指标通常有三个:
    • MAP(平均准确度均值,精度评价)
    • 检测速度(FPS即每秒处理的图片数量或者处理每张图片所需的时间,当然必须在同一硬件条件下进行比较)
    • 召回率(Recall)=  (TP)/(TP+FN):每个类被正确分类的概率
  2. 其他性能指标
    • 准确率 (Accuracy)
    • 精确率(Precision)
    • 混淆矩阵 (Confusion Matrix)
    • precision-recall曲线
    • 平均正确率(AP)
    • ROC曲线(Receiver Operating Characteristic)
    • AUC曲线(Area Under Curve)即为ROC曲线下的面积。
    • 交除并IOU(Intersection Over Union):预测框A和真实框B的重叠程度
    • 非极大值抑制(NMS)

七、目标检测效果对比

在《Object Detection in 20 Years: A Survey》,作者指出相关网络在不同数据集上的map评价情况,如下图所示:

 

同样在《Deep Learning for Generic Object Detection: A Survey》,作者指出相关网络在不同数据集上的map评价情况,如下图所示:

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

目标检测发展与综述 的相关文章

  • cocos creator 两个刚体的碰撞检测

    想做玩家和障碍物的碰撞阻拦 需要给玩家和障碍物添加刚体 但是添加之后还是会穿透 百度后发现玩家的移动不能通过设置坐标实现的 必须要设置刚体速度的方式来实现玩家移动 1 给玩家 障碍物添加刚体 会看到添加了RigidBody和PhysicsB
  • 启动sonarqube 报错 AccessDeniedException: /opt/module/sonar/sonarqube-7.5/temp/conf/es/elasticsearch.yml

    报错信息 WrapperSimpleApp Encountered an error running main java nio file AccessDeniedException opt module sonar sonarqube 7
  • vue的拖拽插件: vue.draggable

    中文文档地址 vue draggable中文文档 itxst comVue Draggable是一款基于Sortable js实现的vue拖拽插件 支持移动设备 拖拽和选择文本 智能滚动 可以在不同列表间拖拽 不依赖jQuery为基础 vu
  • 2023-2024最新python毕业设计选题推荐大全

    文章目录 0 前言 1 python 算法类 毕设选题 2 python 数据挖掘 毕设选题 3 python 大数据处理 云计算 区块链 毕设选题 4 python 网络安全 毕设选题 5 python 游戏设计 动画设计类 毕设选题 适
  • LeetCode 7. 整数反转

    题目链接 7 整数反转 注意题目已经更改为不允许存储 64 位整数 有符号或无符号 class Solution public int reverse int x int total 0 while x if total gt 0 tota

随机推荐

  • H5项目怎么打包成APP

    文章目录 前言 一 新建5 APP项目 二 删除不需要的文件 三 将H5打包的文件拷贝到当前目录下 四 配置APP 五 发行 云打包 六 安装apk 总结 前言 开发uni app的编辑器HBuilderX可以将H5项目打包成APP 相信很
  • 牛客SQL大厂面试真题目录

    1 某音短视频 SQL156 各个视频的平均完播率 SQL157 平均播放进度大于60 的视频类别 SQL158 每类视频进一个月的转发量 率 SQL159 每个创作者每月的涨粉率及截止当前的总粉丝量 SQL160 国庆期间每类视频点赞量和
  • etc的常见算法_ETC面试题总结.doc

    ETC面试题总结 ETC 面试 ETC 面试1 一 测试2 二 UNIX4 三 Oracle7 四 智能网方面10 五 C 方面11 六 网络13 七 操作系统16 八 数据结构17 九 其它19 测试 软件在开发过程中的测试流程 讲一下软
  • Sublime Text 3配置Go语言开发环境

    Sublime Text 3配置Go语言开发环境 1 Go语言环境搭建 2 GoSublime安装和配置 2 1 安装步骤 2 2 代码开发 2 3 编译运行 1 Go语言环境搭建 本篇博文是在读者Go自身环境已经搭好 Sublime Te
  • 华为OD机试 - 求最小步数(Java)

    题目描述 求从坐标零点到坐标点n的最小步数 一次只能沿横坐标轴向左或向右移动 2 或 3 注意 途径的坐标点可以为负数 输入描述 坐标点n 输出描述 输出从坐标零点移动到坐标点n的最小步数 备注 1 lt n lt 10 9 用例 输入 4
  • 解决Shiro jwt并发刷新token问题

    使用shiro jwt做应用系统的权限校验 网上通用的方式是这样的 在用户登录时候会生成两份token 一份AccessToken用于返回给前端 前端带上这个令牌去请求后台接口 通常过期时间较短5分钟左右 一份RefreshToken放在R
  • GPU、CUDA和cuDNN分别是什么,之间又有什么关系?

    文章目录 GPU CUDA和cuDNN分别是什么 之间又有什么关系 1 GPU 2 CUDA 3 cuDNN GPU CUDA和cuDNN分别是什么 之间又有什么关系 1 GPU GPU 图形处理单元 Graphics processing
  • 一张图看懂 USDT三种类型地址 Omni、ERC20、TRC20的区别

    USDT是当前实用最广泛 市值最高的稳定币 它是中心化的公司Tether发行的 在今年的4月17日之前 市场上存在着2种不同类型的USDT 4月17日又多了一种波场TRC20协议发行的USDT 它们各自有什么区别呢 哪个转账最快到账 哪种最
  • 【ShaderToy】基础篇之谈谈点、线的绘制

    写在前面 写前面一篇的时候 发现还是不够基础 因此打算增加几篇基础篇 从点线面开始 希望可以更好理解 其实用Pixel Shader的过程很像在纸上绘画的过程 屏幕上的每一个像素对应了纸上的一个方格 如果你愿意 你甚至可以一个个判断像素的位
  • 【KingFusion】如何设置日期控件默认选择最近24小时

    哈喽 大家好 我是雷工 本篇记录一个日期时间控件的使用过程 以下为应用笔记 1 问题描述 KingFusion中 对于一些特定的查询情况下 需要设置日期时间控件默认显示前一天的日期时间到当前时间24小时内的选择范围 但是由于考虑到每月的天数
  • Amazon Fargate 使用 Seekable OCI 实现更快的容器启动速度

    虽然在部署和扩展应用程序时 使用容器进行开发的方式已日趋流行 但仍有一些领域可以改进 扩展容器化应用程序的主要问题之一是启动时间长 尤其是在纵向扩展期间 需要添加较新的实例 此问题可能会对客户体验 例如 当网站需要横向扩展以提供额外流量时
  • cross-tissue 成纤维细胞比例.r

    getwd setwd G lung fibrosis mouse stable state mouse ssfibro readRDS Mouse SS Fibro RDS library Seurat head mouse ssfibr
  • Vue组件生命周期与钩子函数

    组件生命周期 组件 组件是可复用的 Vue 实例 从创建到销毁的过程就是组件的生命周期 是一个时间段 组件生命周期钩子函数 vue3与vue2生命周期钩子函数略有不同 本文以vue2为主 VUE 提供的生命周期钩子函数 会伴随组件的生命周期
  • 超级签具体实现

    签名原理 使用了苹果提供给开发者的Ad Hoc分发通道 把安装设备当做开发设备进行分发 优势 直接分发 安装即可运行 稳定 不会有证书吊销导致的风险 缺点 单开发者账号的iPhone设备数量只有100个 整体架构 设备安装描述文件后 会向服
  • 数据结构(C语言)——单链表

    整体结构如上 看似简单 但第一次用C语言实现还是感觉有点吃力 尤其是特别容易让链表断裂 下面是代码 有链表的增删改查 注 这里E类型是用define将int进行了宏定义 include
  • java 单一登录

    对于一个帐号在同一时间只能一个人登录 可以通过下面的方法实现 1 在用户登录时 把用户添加到一个ArrayList中 2 再次登录时查看ArrayList中有没有该用户 如果ArrayList中已经存在该用户 则阻止其登录 3 当用户退出时
  • 【笔记】三剑客之awk、sed后向引用

    sed后向引用 语法格式 sed r s 1 g file 1 表示获取第一个括号中的内容 sed支持扩展正则需要加r参数 案例1 调用括号中的内容 root ahui echo root sed r s root 1 g root 案例2
  • 计算机组成原理实验三-----系统总线和具有基本输入输出功能的总线接口实验

    总线是计算机中连接各个功能部件的纽带 是计算机各部件之间进行信息传输的公共通路 总线不只是一组简单的信号传输线 它还是一组协议 他有两大特征 分时 同一总线在同一时刻 只能有一个部件占领总线发送信息 其他部件要发送信息得在该 部件发送完释放
  • 【Echarts】echarts渐变色仪表盘

    echarts渐变色仪表盘 echarts随意一个示例代码 直接点击上方链接 将此段代码放到echarts的示例代码编辑框里 let dataList9 total 85 list name 待处置 value 1501 name 处置中
  • 目标检测发展与综述

    目标检测发展与综述 绪论 在github上的git主hoya012整理了关于目标检测的相关论文 点击此处可获取原文链接GitHub hoya012 deep learning object detection A paper list of