OpenCV C+版本的经典书籍和实战项目

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后,可以快速上手深度学习。传统图像处理必不可少,而深度学习对计算机视觉等方向的冲击越来越大,只有掌握两者,才能以不变应万变。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180405B14RHE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券