发展与应用
计算机视觉是一门研究如何让机器“看”的科学,或者说让计算机代替人类来对目标进行跟踪和识别。计算机视觉也是当今人工智能发展的一个重要的分支,随着阿尔法狗在围棋比赛的逆袭,再次引爆了人工智能在各个领域的发展,计算机视觉首当其冲,包括传统的学习方法和现在火热的深度学习,都为计算机视觉加了一把火。
目前计算机视觉的热点领域在于目标检测,目标识别,场景理解,三维立体视觉等,并且已经在很多领域有了商用价值。比如人脸别识的身份验证登陆,已经在各个手机上和APP上面得到了广泛的应用,搜索引擎的以图搜图,车牌号码的识别,医学图像的识别,OCR技术,VR和AR技术,都是计算机视觉的广泛应用。
学习路径与资源推荐
计算机视觉既然有这么多的应用领域,那我们应该从何学起呢?其实初学者只要专注于基础知识的学习,打好基础,就能很快地将知识应用到相应领域,毕竟各个领域的基础都是互通的。
那计算机视觉有哪些必须要学习的基础知识呢?
数学
包括线性代数,概率论,微积分等,是看懂视觉算法的最基本的东西,如果想要更上一层楼,那可以再去看看矩阵论,凸优化理论,泛函分析等。
线性代数的学习推荐麻省理工的公开课http://open.163.com/special/opencourse/daishu.html,
概率论的学习推荐可汗学院的公开课。
不得不说网易在引进公开课还是做了许多努力的,都适配了翻译。另外的数学如果想继续学习,可以参考大学的数学课本,另外,不要死磕数学,看不懂的跳过,等用到的时候再学也来得及。
编程基础
目前常用的编程语言是C++和Python,初学者推荐学习Python,便于快速实现算法看到算法的结果。若对速度有要求或者需要在嵌入式设备上运行,那就必须得C++了。不过大部分的框架都会在这两种语言中实现,所以学会了一门语言,再学其他的就简单了。
这里推荐下Python的学习资源,首先必须推荐廖雪峰的Python教程,在搜索引擎十分靠前的教程,质量很有保证。
对于喜欢实战的同学,推荐慕课网python教程,也是免费的优秀课程。
另外喜欢看书的同学推荐书籍 《笨办法学Python》 image.png机器学习基础
这是计算机视觉的核心算法,目前也有很大的发展,在学完基本的数学之后,我们就可以进行这部分的学习了。
首先推荐吴恩达的机器学习课程吴恩达机器学习
image.png还有吴恩达的深度学习课程深度学习课程地址
和周志华大佬的《机器学习》 image.png 当然,如果直接看理论看不懂,那还有一本《机器学习实战》,边敲代码边学机器学习,等从直观上理解了机器学习之后,再来看理论也不迟。 image.png
计算机视觉基础
主要是图像处理,图像处理主要包括图形增强,图像压缩,图像识别,图像复原等,这也是每个视觉人都必须要学的。
如果是第一次学的话,推荐李飞飞的计算机视觉课程 课程地址 ,
image.png基本了解之后就应该看书啦,必须推荐的一本书是冈萨雷斯的《数字图形处理》,可以说是每个学图像处理都要有的书。不过这么厚的书,建议先看看北大的课件再来学习 北大数字图形处理课件。
在学理论的同时,应该还要学习Opencv的使用,把理论用代码来验证一下,只能学的更加牢固。Opencv推荐书籍《学习OpenCV3》和《OpenCV计算机视觉编程攻略》
image.png
总结
学习并不总是一帆风顺的,其中会伴随着许多的痛苦,数学推导看不懂,代码BUG找不出,但是只要我们坚持学下去,就一定能有收获。另外推荐大家组队学习,遇到不懂得及时沟通。并且学会了基础之后,去GitHub上找找开源项目来做做,或者去看看论文,你会有不一样的收获。
网友评论