OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。
往期回顾
1.《Learning OpenCV3》
咦,你可能会问:一本书有什么好推荐的?答:当你打开第一页的时候,你会发现它无与伦比的美腻。不信,来瞧瞧:
你或许会问,这有啥?
答:有理论、有代码、有图示和tips
注:不是装逼,因为首推的一定也必须是英文版的书,而且这是经典爆款书籍,为什么一定是英文?!不多说,只表示,英语再难也要咬牙啃下来。《Learning OpenCV3》是经典款《Learning OpenCV》的升级版,全面支持OpenCV3....各种API和小Demo
你以为我只是推荐吗?
不好意思,这里附上《Learning OpenCV 3》中的源代码:
https://github.com/oreillymedia/Learning-OpenCV-3_examples
你问我,书哪里可以下?
答:Google/Baidu一下,你就知道
2.OpenCV Samples
https://github.com/opencv/opencv/tree/master/samples/cpp
你学习的是OpenCV,官方提供的示例,你会拒绝吗?
你可以拒绝,但这样你就拒绝了成长...手动滑稽
每年OpenCV一般会release两次新版本,每次release都会添加新的算法,如何快速使用这些算法,最简单最粗暴的方法就是看Demo。而OpenCV的Demo,简直良心到...来看一下
是不是感动哭?
你说缺少项目,我丢这么多项目,你还会觉得没有项目做?
你会说,咦这不都是小demo吗?我跑跑很快的
答:不敲代码,你跟说你想做项目?这里不是建议你把这些小demo都敲一遍,而是可以粗略地选择一些,了解基础的OpenCV算法,如Canny、Sobel、findHomography、cvtColor等,并深入了解Mat等常用类型的使用技巧。这里声明一下,小demo只是调侃的说,拿stitching_detailed.cpp举例,898行的code你不兴奋吗?https://github.com/opencv/opencv/blob/master/samples/cpp/stitching_detailed.cpp
如果你坚持看到这里,可能会疑问:上面两个资源是不是太简单了
答:我这么ying,一定能满足你
3.LearnOpenCV
你没看错,这是一个网站(很牛逼),打开上述链接,可以看到
咦,这不是....嗯,人脸识别...人脸关键点检测(LandMark)...
拖着鼠标往下滑:
咦,这不是....嗯,二维码(QR Code)检测...条形码(Barcode)检测... + 识别
拖着鼠标再往下滑:
咦,这不是....嗯,图像分类...没错,是它,很实用的图像分类
等等,你以为就介绍到这了么,不好意思,彩蛋在下面
附上learnopencv源码
https://github.com/spmallick/learnopencv
随便打开一个demo,如ImageAlignment-FeatureBased
咦,这不是...没错,C++与Python双版本...简直良心到...看什么,鼓掌啊
------我是可爱的分割线------
到这里,你以为就结束了么
不好意思...推荐的内容不在于多,质量高即可
认真地说,Amusi了解有挺多OpenCV C++较大型的实战项目,如EasyPR等。但如果你学会了,或者宽泛地接触了上述我推荐的3个资源,其实你自学能力就很强了。至于大型实战项目,如果你不以make money的形式来做,很难用心,或者很难有一步步调试、一步步实现想法的过程。
授人以鱼,不如授人以渔
上述都是针OpenCV/C++来重点介绍的,其实不否认当前Python很火,特别因为Deep Leaning的缘故。我这里也有一些OpenCV Python相关的资源(书、项目代码),但这里就不展开介绍了。下次有空再分享一下资源...
------我还是可爱的分割线------
学习OpenCV,一个很重要的步骤是学习使用API,这里附上OpenCV官方的API查询链接(用了就爱不释手)
https://docs.opencv.org/master/
OpenCV虽然很强大,但其大多数库还是传统图像处理的算法。所以建议,简单入门OpenCV后,可以快速上手深度学习。传统图像处理必不可少,而深度学习对计算机视觉等方向的冲击越来越大,只有掌握两者,才能以不变应万变。
领取专属 10元无门槛券
私享最新 技术干货