计算机视觉应该怎样入门?

 

从装Python、装OpenCV、入门深度学习,到人脸识别、目标检测、语义分割等等各类应用,都有进阶路线,里面包含了教程、案例、注意事项。甚至怎样把算法部署到树莓派之类的硬件上,也能找到经验。html

 

 

推特发出12小时,已经有1200人点了赞。做者名叫Adrian Rosebrock,是个常常出产教程的宝藏男子。web

萌新的你,想要成长为一名合格的老司机,请马克这份指南。算法

而后,来看里面的内容到底有多丰富:编程

事无巨细

为了不“从入门到放弃”的惨剧,在你成为老司机的路上,这份指南给每一步都作了安排。网络

从目录看,大体分为两部分,左边一列是基础,右边一列是应用:机器学习

 

 

先看左边的基础装备:ide

· 应该从哪开始呢
· 深度学习
· 人脸应用
· 图像文字识别 (OCR)
· 目标检测
· 目标追踪
· 实例分割和语义分割

第一章“应该从哪开始呢”,是OpenCV的进阶路线:工具

一是安装Python和OpenCV (初) ,二是理解命令行arguments (初) ,三是用示例学OpenCV (初) ,四是本身搭个OpenCV小项目 (初) ,五是作更高级的OpenCV项目 (中) ,六是在CV的大世界里,选择本身的小方向 (中) 。性能

每一步都有须要注意的事项,还有必要的教程资源。学习

好比,怎样安装OpenCV最简单,为何不要用Windows,作项目的过程当中有哪些常见错误类型要避免。

有些步骤,还会分红多个小步骤,每一个小步又有做者的舒适建议。好比,这是第五步:

 

 

当这个章节的六步完成以后,还有一步叫“What to Next”,除了告诉你们下面应该作什么,也有一些额外的教程资源提供。

第二章“深度学习”,是算法的进阶路线,内容比第一章更丰盛,有12步:

一是构建深度学习环境 (初) ,二是训练本身的第一个网络 (初) ,三是理解CNN (初) ,四是搭个本身的图像数据集 (中) ,五是在本身的数据集上训练一个CNN (中) ,六是调整学习率 (中) ,七是数据扩增 (中) ,八是特征提取和微调预训练网络 (中) ,九是视频分类 (高) ,十是多输入和多输出网络 (高) ,十一是改进本身的网络 (高) ,十二是AutoML和AutoKeras。

依然,每一步都提供了详细的指引,有过往成功案例为你保驾。好比,这是第十二步:

 

 

从第三章“人脸应用”开始,就是在各类具体任务当中用到的算法了。

检测人脸,检测关键点,识别人脸,提高算法的准确率……也把前两章的进阶路线,贯彻进了任务里。

在这一章,做者Adrian Rosebrock频繁出镜:

 

 

第四章-第七章,文字识别、目标检测、目标追踪、实例分割和语义分割,与第三章同理,此处便不详述。

做者继续高密度出镜:

 

接下来看右边一列,是帮你走进现实的:

· 嵌入的和物联网用的CV
· 树莓派上的CV
· 医学领域的CV
· 搞搞视频
· 图片搜索引擎
· 大神采访,案例研究 (与教程) ,成功故事

好比,怎样把本身的算法,放进树莓派里,放进冰箱里,放进脑子里,都有详尽的玩法。

做者依然在出镜:

 

 

除此以外,还有各类成功前辈的采访,里面有一些成功案例 (或附带教程) ,是初学者能够借鉴的经验:

 

 

除了技术上的建议,这些资料也可当作美味的鸡汤,鼓舞着你一路走向人参巅峰。

传送门

万事俱备,你们能够开始修炼了。

顺便回答一下这个问题:做者说的81页,这个数究竟是怎么来的。

Start Here with Computer Vision, Deep Learning, and OpenCV - PyImageSearch​www.pyimagesearch.com图标

 

自学了一段时间计算机视觉(Computer Vision),下文简称:CV。内容以基本概念为主,形式以看书为主,跟着敲代码为辅。

原由:因工做中会涉及到交通物流风险管理、出险理赔材料审查等内容,会涉及到大量人工介入审阅照片、视频的环节。而随着素材量的增长未来须要大量的人力来处理,致使成本高,效率低、易出错。
思考:可否经过某种技术进行照片、视频内容的审查,从而消化必定的工做量,同时提高效率?带着这样的问题,咱们锁定了CV技术。

这里很是简单地谈谈本身近一年的学习体会,算是入门者说吧。

一、首先明确CV都会在哪些领域里使用,即用途是什么?

如下是笔者在今年1月中旬于硅谷参加AI世界前沿大会时拍摄的OpenCV做者Bradski大神的演讲ppt照片(能看得清内容)。

从上图能够看出,CV或者说OpenCV用途十分普遍。那么问题来了,你确认你要学的东西在将来的学习或者工做中能够派上用处吗?若是答案是Yes。就继续往下看。

 

二、CV是啥?

若是用一句话来解释CV,那么多是研究让机器像人同样具备可以“看”的能力,并在必要的时候给予合适的反馈(输出:好比看图说话,看视频说话 )。

 

三、学什么?从哪里开始学?

从斯坦福大学李飞飞教授的CS231n课程中能够看到,须要有一些基础,以便更好的学习CV。截屏以下:

上图能够看到,须要咱们具有一些知识:

1)编程基础:Python和C++。我的理解,用Python快速实现算法;用C++实战,实时性能强。
2)数学基础:高数,线性代数、基础几率与统计
3)机器学习基础

3-1)若是你对以上内容都有必定的基础,那么恭喜你,对于入门CV,你有了好的开始。

 

3-2)推荐几本比较好的书籍:

一、《计算机视觉:模型、学习和推理》

入门基础书籍,讲得很清楚。我在看,很是好的与机器学习结合的CV入门书籍。英文好的同窗,建议看Prince的本来彩图书籍。 官网《英文原版彩图PDF版本》下载连接

二、《Learning OpenCV》

实战经典。推荐理由:OpenCV做者Bradski大神的书。学习CV的人是没法绕开OpenCV的。

三、《Python计算机视觉编程》

若是你有必定的Python基础,笔者强烈推荐看这本书,把CV的基本概念和算法结合代码实战,讲得比较清楚。入门佳做。它不是一上来就用OpenCV库,使得入门者容易忽视不少基础的概念算法。

四、《计算机视觉:算法与应用》

不建议入门者看。宝典型,大而全。典型的工具书。做者是Richard Szeliski,CV界大牛,图像拼接奠定人。

五、《 Multiple View Geometryin Computer Vision 》,中文版名《CV中的多视图几何》

听说是玩3D必看的一本书,包括AR/VR。不少CV专家都推荐。

 

3-3)视频学习,固然是斯坦福大学李飞飞教授的CS231N课程(须要扶梯),这是一门结合深度学习的CV教学视频。经典!

3-4)目前结合深度学习的CV是发展方向之一,有空能够看看花书。

 

四、OpenCV、TensorFlow、Caffe

这些个,我们如今一个都绕不开。
多上手,多练吧。

 

五、国际顶尖的CV会议,扫扫论文的摘要、看看报告视频。(若是肯定深度研究,就仔细看。不然,我的以为了解下就好。)


 

到底学了哪些知识,计算机视觉才算是入门了?

敲重点,划黑板!

请将下面的网站的slides看完,辅助slides中提到的书的章节,应该能够入门了,1-2个月时间便可。

固然若是有相应的数学和图像基础,有机器学习,深度学习基础能够更容易理解哦~

 

如下课程,均为斯坦福计算机视觉实验室的。

实验室主页:http://vision.stanford.edu/

 

CS 131 Computer Vision: Foundations and Applications:

http://vision.stanford.edu/teaching/cs131_fall1415/schedule.html

 

CS231A Computer Vision: from 3D reconstruction to recognition:

http://cvgl.stanford.edu/teaching/cs231a_winter1415/schedule.html

 

CS231n: Convolutional Neural Networks for Visual Recognition

http://vision.stanford.edu/teaching/cs231n/

 

以上三门课就能够入门了,固然还有不少其余高等级的课,能够去实验室主页看看。

资料不宜贪多,谢绝其余资料干扰,安心的把这些lectures看完。而后就能够上手作项目和看论文了。论文才是王道。

相关文章
相关标签/搜索