深度学习从入门到放弃之CV总目录

20190405更新:

好记性不如烂笔头,更何况针对自己不熟悉的领域,没有工程实践,可能不了解论文的痛点。而且太多的awesome, 怎么也看不完:只收藏不看不如一篇一篇的看(git提交的原则也是自己已经看过,有收获,有疑点有吐槽)。一般一个领域的论文 大部分是前人的工作,只有少部分是自己的改进。

针对论文主要了解动机,算法改进(累积个领域的现状),纵向对比(该领域更新),横向对比(不同领域方法对比,实验效果对比,太多 的论文报喜不报忧,提高精度不说实时性,state-of-art对比不全面,有意忽略性能较近的算法,没有怀疑的精神,没有实际验证或对比 ,只会盲从。而盲从记忆,根本没有转化为自己用的机会)。

每天至少读一篇论文,更新一个commit,减少懒惰机会。

论文点评模板:项目组、解决问题,实验成绩,原因分析,改进措施,损失函数,训练过程,优缺点分析。

1、缺点分析只能在后续引文才会写,论文一般不会直接说自己的短处。

2、论文对比试验只会选择对自己有利的模型或数据集,要站在更全局方向考虑。

20190411备注:看论文不要讲究数量和前沿,关键理论要吃透,要研究前因后果,多看代码,多复现问题。动手才能更进一步。

github:欢迎issues,push requests

ahong007007/Awesome_Computer_Vision

*************************************************************************************

本人入门CV方向时追着看无数的公开课,教程,入门指南之类的,每每发现别人共享的资料,百十来本书,百十个视频公开课连接,力不从心底学了几天,发现都是白扯。看N遍CS231n,读paper,精读这个领域的100篇paper,写review,写代码,写自己的想法,写自己与别人的差距。于是乎重新整理知乎专栏,把自己所学到的总结一下,差不多每天精读一篇paper并写notes。note是阅读笔记,也是对行业对平行算法的总结,不仅仅是精读一篇论文。因为签约所以首发在Paperweekly,但是一周内肯定更新知乎专栏。

本人会尽个人微薄之力,总结CV领域各个重要方向的state-of-art水平经典文献(每个子领域个人理解不超过20篇的经典文献),根据记忆曲线,只有自己能懂了再教会别人,才能记得牢记得住。本着没有自己认真读过的不会发,没有自己觉得有思想的不会写,写多少是多少,全靠自己的专业水平和阅历了。

目前开看这个项目挖坑无数,只有每天尽力去填坑了...

每天arxiv更新的论文比阅读速度要快很多,历史中的论文(last year)引用量在个位数,就没必要再精读了。 --By chenhong


CV的各个方向:

1.当前CV领域主要包括两个大的方向,”低层次的感知” 和 “高层次的认知”。

2.主要的应用领域:视频监控、人脸识别、医学图像分析、自动驾驶、 机器人、AR、VR

3.主要的技术:分类、目标检测(识别)、分割、目标追踪、边缘检测、姿势评估、理解CNN、超分辨率重建、序列学习、特征检测与匹配、图像标定,视频标定、问答系统、图片生成(文本生成图像)、视觉关注性和显著性(质量评价)、人脸识别、3D重建、推荐系统、细粒度图像分析、图像压缩

1、分类(image classification)主要需要解决的问题是“我是谁?”

分类是image处理的基本问题,其他如目标检测分割等都可以细化到分类算法来解决。主要算法可以参考LSVRC2012~LSVRC2017。

2、目标检测(object localization/detection)主要需要解决的问题是“我是谁? 我在哪里?”

目标检测可以参考一篇2017年的综述《Speed_Accuracy trade-offs for modern convolutional object detectors》,

另外有一篇博客:A Brief History of CNNs in Image Segmentation: From R-CNN to Mask R-CNN

3、分割主要需要解决的问题是“我是谁? 我在哪里?你是否能够在像素级正确分割我?”

分割(segmentation )又有两个不同方向:semantic segmentationinstance segmentation。Semantic segmentation的目标是在图像中分割每个像素所属的类别,但是不关心所属的实体。而instance segmentation是更精细一步分割像素是属于不同的实体。个人认为instance segmentation=Semantic segmentation+object localization。

下图所示image classification,object localization和segmentation 这个四个领域的区别:

关于Semantic segmentation,推荐一个综述《A 2017 Guide to Semantic Segmentation with Deep Learning

4、目标追踪(Visual tracking)主要需要解决的问题是“你能不能跟上我的步伐,尽快找到我?”

目标追踪领域是相关滤波的天下,推荐github foolwood,以及知乎网友 @YaqiLYU 刚更新了2017年VOT,CVPR/ICCV的state-of-the-art。

5、video segmentation

video segmentation和Visual tracking有相似之处。video object segmentation需要解决的是半监督问题,只给出视频第一帧的正确分割掩膜,然后在之后的每一连续帧中像素级分割标注的目标,实际就是像素级的目标追踪问题;而Visual tracking解决的是只给出视频第一帧的定位边界框,在后续每一连续帧中同样用边界框的形式标注物体。两者关系类似于Segmentation和Detection的关系。


6、视频中的人体行为识别主要包括两个方向:Action Recognition 以及 Temporal Action Localization:

  • Action Recognition的目的是给定一个视频片段进行分类,类别通常是人的各类动作。特点是简化了问题,一般使用的数据库都先将动作分割好了,一个视频片断中包含一段明确的动作,时间较短(几秒钟)且有唯一确定的label。所以也可以看作是输入为视频,输出为动作标签的多分类问题。常用数据库包括UCF101,HMDB51等。相当于对视频进行分类。
  • Temporal Action Localization 则不仅要知道一个动作在视频中是否发生,还需要知道动作发生在视频的哪段时间(包括开始和结束时间)。特点是需要处理较长的,未分割的视频。且视频通常有较多干扰,目标动作一般只占视频的一小部分。常用数据库包括HUMOS2014/2015, ActivityNet等。相当于对视频进行指定行为的检测。
  • action recognition与temporal action detection之间的关系,同 image classfication与 object detection之间的关系非常像。基于image classification问题,发展出了许多强大的网络模型(比如ResNet,VGGNet等),这些模型在object detection的方法中起到了很大的作用。同样,action recognition的相关模型(如two stream,C3D, iDT等)也被广泛的用在temporal action detection的方法中。

自“红黄蓝事件”后,对人体行为识别的需求应该更加紧迫,迫切需要一个让大家都放心的应用。

7、边缘检测主要需要解决的问题是:“如何准确的检测到目标的边缘?”
8、人体姿态识别主要需要解决的问题是:“你需要通过我的姿势判断我在干什么?”

二维图像姿态估计基于CNN的单人姿态估计方法,主要有Deep Pose、CPM,hourglass以及各种hourglass结构引申之作。

二维图像姿态估计基于CNN的多人姿态估计方法,通常有2个思路(Bottom-Up Approaches和Top-Down Approaches)::

(1)two-step framework,就是先进行行人检测,得到边界框,然后在每一个边界框中检测人体关键点,连接成一个人形,缺点就是受检测框的影响太大,漏检,误检,IOU大小等都会对结果有影响,代表方法就是RMPE。

(2)part-based framework,就是先对整个图片进行每个人体关键点部件的检测,再将检测到的部件拼接成一个人形,缺点就是会将不同人的不同部位按一个人进行拼接,代表方法就是openpose。

8、【CV-Face】深度学习从入门到放弃之人脸识别目录


理解CNN主要需要解决的问题是:“从理论上深层次的去理解CNN的原理?”
超分辨率重建主要需要解决的问题是:“你如何从低质量图片获得高质量的图片?”
序列学习主要解决的问题是“你知道我的下一幅图像或者下一帧视频是什么吗?”
特征检测与匹配主要需要解决的问题是“检测图像的特征,判断相似程度?”
图像标定主要需要解决的问题是“你能说出图像中有什么东西?他们在干什么呢?”
视频标定主要需要解决的问题是“你知道我这几帧视频说明了什么吗?”
问答系统主要需要解决的问题是:“你能根据图像正确回答我提问的问题吗?”
图片生成主要需要解决的问题是:“我能通过你给的信息准确的生成对应的图片?”
视觉关注性和显著性主要需要解决的问题是:“如何提出模拟人类视觉注意机制的模型?”
人脸识别主要需要解决的问题是:“机器如何准确的识别出同一个人在不同情况下的脸?”
3D重建主要需要解决的问题是“你能通过我给你的图片生成对应的高质量3D点云吗?”
推荐系统主要需要解决的问题是“你能根据我的输入给出准确的输出吗?”
细粒度图像分析主要需要解决的问题是“你能辨别出我是哪一种狗吗?等这些更精细的任务”
图像压缩主要需要解决的问题是“如何以较少的比特有损或者无损的表示原来的图像?”


CV-view,roadmap。。。。。。

【CV-review】a-year-in-computer-vision《A Year in Computer Vision》是The M Tank编辑的报告,不过大部分内容是2016年的。


mixup与paring samples ,ICLR2018投稿论文的数据增广两种方式

编辑于 2019-04-30

文章被以下专栏收录