AI佳作解读系列(五) - 目标检测二十年技术综述

- 目标检测路线图
- 目标检测数据集
- 目标检测技术演进
- 目标检测计算加速
- 数值计算层次(如积分图、矢量量化等)
- 检测引擎层次(网络剪枝与量化、轻量级网络设计等)
- 检测流程层次(特征图共享、分类器加速、级连检测等)
- 目标检测进展
- 更好地引擎(engine):作者将深度学习目标检测网络的骨干网称为其引擎。改进目标检测的一个直接思路就是使用更加先进的骨干网。如下图(相同算法用相同颜色的圆点表示,使用相同引擎的算法结果用一个大括号连接,我们可以轻易看出,使用不同的引擎对最终精度的影响更大):
- 使用更好的特征:1)特征融合;2)学习大感受野的高分辨率特征
- 超越滑动窗口:不再是局限于候选区域再分类的模式。作者提到两种新模式:1)子区域搜索 sub-region search。将目标检测看为从初始网格到最终ground truth box的路径规划过程。2)关键点定位。将目标检测看为特定语义点定位的过程。比如:ECCV18 Oral | CornerNet目标检测开启预测“边界框”到预测“点对”的新思路Grid R-CNN解读:商汤目标检测算法
- 目标定位改进:1)包围框提精。2)改进loss函数用于较精确定位。比如:CVPR 2019 | 旷视提出新型目标检测损失函数:定位更精准
- 检测与分割一起进行:分割可以帮助目标检测提高类别识别的精度、获得更好地目标定位、潜入更加丰富的上下文。分割的网络可以作为目标检测的提取网络,也可以作为多任务学习的损失函数,用以改进目标检测。52CV曾经报道过一篇文章甚至分割完全可以用来替换检测:目标检测:Segmentation is All You Need ?
- 旋转和尺度变化鲁棒的目标检测:针对旋转变化鲁棒改进方向:1)旋转不变损失函数;2)旋转校正;3)Rotation RoI Pooling。针对尺度变化鲁棒的改进:1)尺度自适应训练;2)尺度自适应检测。
- Training from Scratch:不使用预训练模型,从头开始训练目标检测网络。比如:CVPR 2019 | 京东AI研究院提出ScratchDet,加强对小目标的检测,代码将开源。
- 对抗训练:比如有研究表明,GAN可以用来改进小目标的检测。
- 弱监督的目标检测:不使用包围框标注,而仅使用图像级的目标标注的算法。减少标注成本。扩大训练集。
- 目标检测应用
- 目标检测的未来方向
- 轻量级目标检测算法;
- 用AutoML设计目标检测算法,比如:Google CVPR 2019成果!用神经架构搜索实现更好的目标检测
- 域适应(domain adaptation)改进目标检测;
- 弱监督的目标检测;
- 小目标检测;
- 视频目标检测
- 融合其他传感器信息的目标检测。
AI佳作解读系列(五) - 目标检测二十年技术综述的更多相关文章
- AI佳作解读系列(二)——目标检测AI算法集杂谈:R-CNN,faster R-CNN,yolo,SSD,yoloV2,yoloV3
1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理.本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析. 目标检测可以理解为是物 ...
- AI佳作解读系列(六) - 生成对抗网络(GAN)综述精华
注:本文来自机器之心的PaperWeekly系列:万字综述之生成对抗网络(GAN),如有侵权,请联系删除,谢谢! 前阵子学习 GAN 的过程发现现在的 GAN 综述文章大都是 2016 年 Ian G ...
- AI佳作解读系列(一)——深度学习模型训练痛点及解决方法
1 模型训练基本步骤 进入了AI领域,学习了手写字识别等几个demo后,就会发现深度学习模型训练是十分关键和有挑战性的.选定了网络结构后,深度学习训练过程基本大同小异,一般分为如下几个步骤 定义算法公 ...
- AI佳作解读系列(四)——数据增强篇
前言 在深度学习的应用过程中,数据的重要性不言而喻.继上篇介绍了数据合成(个人认为其在某种程度上可被看成一种数据增强方法)这个主题后,本篇聚焦于数据增强来介绍几篇杰作! (1)NanoNets : H ...
- AI佳作解读系列(三)——深度学习中的合成数据研究
Below are some investigation resources for synthetic datasets: 1. Synthetic datasets vs. real images ...
- CVPR2019目标检测方法进展综述
CVPR2019目标检测方法进展综述 置顶 2019年03月20日 14:14:04 SIGAI_csdn 阅读数 5869更多 分类专栏: 机器学习 人工智能 AI SIGAI 版权声明:本文为 ...
- Google AI推出新的大规模目标检测挑战赛
来源 | Towards Data Science 整理 | 磐石 就在几天前,Google AI在Kaggle上推出了一项名为Open Images Challenge的大规模目标检测竞赛.当今计算 ...
- Alamofire源码解读系列(五)之结果封装(Result)
本篇讲解Result的封装 前言 有时候,我们会根据现实中的事物来对程序中的某个业务关系进行抽象,这句话很难理解.在Alamofire中,使用Response来描述请求后的结果.我们都知道Alamof ...
- deeplearning.ai 卷积神经网络 Week 3 目标检测 听课笔记
本周的主题是对象检测(object detection):不但需要检测出物体(image classification),还要能定位出在图片的具体位置(classification with loca ...
随机推荐
- koa2 快速开始
环境准备 Node.js简介 因为node.js v7.6.0开始完全支持async/await,不需要加flag,所以node.js环境都要7.6.0以上.Node.js 是一个基于 Chrome ...
- python递归的最大层数?
Python的最大递归层数是可以设置的,默认的在window上的最大递归层数是 998. 可以通过sys.setrecursionlimit()进行设置,但是一般默认不会超过3925-3929这个范围 ...
- 运算符 & | ^ ~ >> << 讲解
字节”是byte,“位”是bit :1 byte = 8 bit : char 在java中是2个字节.java采用unicode,2个字节(16位)来表示一个字符. char 16位2个字节 byt ...
- 学到了林海峰,武沛齐讲的Day34 完 线程 进程 协程 很重要
线程 进程 协程 很重要 ...儿子满月回家办酒,学的有点慢,坚持
- learning armbian steps(1) ----- armbian 入门知识基础学习
第一问: armbian是什么? Armbian是轻量级的Debian系统和为ARM开发板专门发行并重新编译的Ubuntu系统. 第二问: 什么场景下会用到armbian系统? 一个带有arm编译器 ...
- QMutexLocker基于QMutex的便利类
首先需要注意的是:QMutexLocker这个类是基于QMutex的便利类,这个类不能够定义 私有成员变量 和 全局变量,只能够定义局部变量来使用. 使用方法:(1)先定义一个QMutex类的 ...
- Python中多层List展平为一层
小书匠python 使用Python脚本的过程中,偶尔需要使用list多层转一层,又总是忘记怎么写搜索关键词,所以总是找了很久,现在把各种方法记录下来,方便自己也方便大家. 方法很多,现在就简单写8种 ...
- javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行
jsp页面表格布局Html代码 <body onload="show()"> <center> <input type="text" ...
- rocketMq和kafka的架构区别
概述 其实一直想写一篇rocketMq和kafka在架构设计上的差别,但是一直有个问题没搞明白所以迟迟没动手,今天无意中听人点播了一下似乎明白了这个问题,所以就有了这篇对比. 这篇博文主要讲清楚kaf ...
- 在Typora中使用Latex
https://blog.csdn.net/happyday_d/article/details/83715440 今后可能更多在本地编辑出Markdown之后复制上博客或者上传到GitHub.