01 掌握好相应的基础能力

计算机视觉的理念其实与很多概念有部分重叠,包括:人工智能、数字图像处理、机器学习、深度学习、模式识别、概率图模型、科学计算以及一系列的数学计算等。所以在入门CV之前,最好对基础的学术课程都有对应的了解,比如数学方面的微积分,概率学,统计学,线性代数这几门基础课程。

在编程语言方面Python和C++,计算机视觉离开计算机编程是完全行不通的

02 需要的专业工具

OpenCV(开源计算机视觉库)是一个非常强大的学习资料库,包括了计算机视觉,模式识别,图像处理等许多基本算法。

它免费提供给学术和商业用途,有C++,C,Python和java接口,支持Windows、Linux、Mac OS、iOS和Android。

而关于OpenCV的学习,推荐:

1.学习OpenCV(Learning.OpenCV)

2.毛星云老师编著的OpenCV3编程入门

3.学习OpenCV3(Learning OpenCV 3)

而深度学习方面,有TensorFlow,PyTorch,Caffe等深度学习框架,它们也内置了OpenCV的API接口。而哪种框架好,就要看你自己的需要了

推荐资料:

莫凡教程系列之PyTorch :https://morvanzhou.github.io/tutorials/machine-learning/torch/

03 绕不开的数字图像处理与模式识别

 

数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。

入门的同学推荐

冈萨雷斯的《数字图像处理》《数字图像处理(第3版)(英文版)》和对应的Matlab版本

一本讲基础的理论,一本讲怎么用Matlab实现。

除此之外同学们还可以去YouTube上找到相关的课程信息,相信大家会有所收获的。

模式识别(Pattern Recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。我们把环境与客体统称为“模式”。

计算机视觉很多东西都是基于图像识别的,图像识别就是模式识别的一种。

模式识别通常是训练一个模型来拟合当前的数据,当我们拿到一堆数据或图片,需要从当中找到它们的关系,最便捷的便是用模式识别算法来训练一个模型。

04 系统的学习下计算机视觉课程

对于CV新手来说,想要从小白到大神,最快的方法就是先系统的学习一下计算机视觉的课程,全面了解一下计算机视觉这个领域的背景及其发展、这个领域有哪些基本的问题、哪些问题的研究已经比较成熟了,哪些问题的研究还处于基础阶段。

推荐3本经典教材:

1.《计算机视觉:一种现代方法》(Computer Vision: A Modern Approach)

2.《计算机视觉_算法与应用》(Computer Vision: Algorithms and Applications)

3.《计算机视觉:模型 学习和推理》(Computer Vision: Models, Learning, and Inference)

这三本教材是计算机视觉最好的入门教材了,内容丰富,难度适中,其中第二本书涉及大量的文献,很适合对计算机视觉没什么概念的同学。

虽然其中的一些方法在现在看来已经过时了,但还是值得一读

05 深度学习与CNN

计算机视觉里经常使卷积神经网络,即CNN,是一种对人脑比较精准的模拟。

什么是卷积?卷积就是两个函数之间的相互关系,然后得出一个新的值,他是在连续空间做积分计算,然后在离散空间内求和的过程。

同学们可以试着学习下CNN在计算机视觉当中的应用

推荐的资料:

1.斯坦福CS231n—深度学习与计算机视觉网易云课堂课程:http://study.163.com/course/introduction.htm?courseId=1003223001

2.斯坦福CS231n—深度学习与计算机视觉官方课程:http://cs231n.stanford.edu/

3.CS231n官方笔记授权翻译总集篇:https://www.52ml.net/17723.html

4.吴恩达 deeplearning.ai与网易云课堂的微专业深度学习工程师卷积神经网络

 http://mooc.study.163.com/course/2001281004?tid=2001392030#/info

神经网络方面的经典教材

1.《深度学习》

2.《神经网络与深度学习》

06 了解最新领域动态

 

很多同学做研究的时候,容易陷入自我封闭的“怪圈”,过于执着于埋头学习相关知识,有时候会忘记及时了解相关领域的最新动态,这是非常不科学的。

同学们在学习计算机视觉相关知识的时候,可以通过最新的paper来了解这个领域最新提出的一些概念以及发展的情况。

计算机视觉的期刊有两个PAMI(模式分析与机器智能汇刊)和IJCV(计算机视觉国际期刊)

顶级的学术会议有 CVPR、ICCV、 ECCV、 BMVC这四个,同学们可以跟着浏览这些期刊论文以及会议文章,相信一定可以学到不少有用的知识。

做好计算机视觉研究并不是一件容易的事情,在大多数情况下它甚至是一件很枯燥的事情。研究成果毫无进展,研究方向不在明朗等等,这一切都会给你前所未有的压力.所以希望同学们在决定入这一行的时候,是出于自己的热爱,而不是出于当前的趋势。

因为热爱不会变,但趋势每一年都在变。

有兴趣的同学可以读一读,完整 PDF 地址:下载链接