目录
一、前言
1、简述
OpenCV算是比较热门的计算机视觉库,很多想从事计算机视觉工作的人基本都是通过OpenCV入门或者了解过OpenCV,如果你也想入门OpenCV,那就可以从3.x中选择一个版本,开始你的学习之路。这一系列博客使用了OpenCV3.1.0,如果你想使用更新的版本,比如4.3.0,
如果你想学C++版本的,你可以关注我的OpenCV系列博客,我会定期更新。
【OpenCV系列】:https://blog.csdn.net/shuiyixin/category_7581855.html
如果你想学python版本的,你可以关注我的公众号《AI与区块链技术》,深入了解:
那这两个版本有什么区别吗?主要有如下几个方面吧:(重点是3)
1.基于的版本不同,OpenCV3.1.0和4.3.0版本不一样,这个是最直接的差距了,这个差距引出的就是OpenCV3和OpenCV4的差别,里面很多写法都更换了,但是这并不影响我们的学习。
2.OpenCV3.4.0开始就支持深度学习了,到了4.3.0已经支持大量深度学习算法,内容丰富了很多,3.1.0更偏向传统的图像处理计算机视觉。
3.OpenCV3.1.0只是基础教程,用于大家入门学习,只选择了重要的,常见的部分进行讲解。对于很多用到的枚举类型,没有涉及。通过3.1.0我们可以快速入门OpenCV,掌握大多数OpenCV技术。OpenCV4.3.0是更加详细全面的教程,分类也更加详细,涉及到的内容也更多。对于一些API中的参数取值也有更加详细全面的讲解。
所以,如果你是初学,建议你先学习OpenCV3.1.0教程,也就是本文中的教程。如果你有一定基础,想继续深入学习,那我建议你直接学习我的4.3.0教程,即可学到比较新的内容,也能学的更加系统全面。
2、相关技术群
与OpenCV有关的技术群主要有三个。
第一个是总群 326866692 ,这个群可以容纳两千人进行学习交流,交流方向最为全面,包括人工智能、机器学习、深度学习、计算机视觉、区块链、计算机软件开发等。
群里有很多相关资料文档,供大家学习使用,部分资料如下:
第二个是OpenCV专门的群 797239959 ,这个群是专门针对于计算机视觉OpenCV的群,你可以在这里群里获取OpenCV的学习资料,和OpenCV行业大佬进行交流。
第三个是深度学习神经网络领域的群,深度学习发展最好的领域,应该就是计算机视觉领域了,OpenCV中封装了很多有关于深度学习的模型,可以直接在OpenCV中调用。想更加深入了解OpenCV原理,了解相关领域的研究内容等,可以加这个群,群号为:995139219。
二、学习之路
关于OpenCV3.1.0的学习之路,我在很早之前的一篇博客中有讲到,如果你想了解,可以直接点击观看,这里我们主要是分享教程,学习之路就不展开说了:
【OpenCV学习之路】:https://blog.csdn.net/shuiyixin/article/details/85648310
三、基本教程
从这里开始,我们就开始分享一些基础教程了:
1.opencv配置:https://blog.csdn.net/shuiyixin/article/details/80386022
2.加载,修改,显示及保存图像:https://blog.csdn.net/shuiyixin/article/details/85240791
3.图像像素及掩膜操作详解:https://blog.csdn.net/shuiyixin/article/details/88825549
4.Mat对象:https://blog.csdn.net/shuiyixin/article/details/81169261
5.读写像素:https://blog.csdn.net/shuiyixin/article/details/89304084
6.图像混合:https://blog.csdn.net/shuiyixin/article/details/89343386
7.图像亮度与对比度:https://blog.csdn.net/shuiyixin/article/details/89390239
8.绘制形状与文字:https://blog.csdn.net/shuiyixin/article/details/89406889
9.线性滤波:https://blog.csdn.net/shuiyixin/article/details/90215677
10.非线性滤波:https://blog.csdn.net/shuiyixin/article/details/104345878
11.形态学基本操作:https://blog.csdn.net/shuiyixin/article/details/104354806
12.形态学操作:https://blog.csdn.net/shuiyixin/article/details/104369163
13.形态学操作之trackbar应用:https://blog.csdn.net/shuiyixin/article/details/104387257
14.上采样与降采样:https://blog.csdn.net/shuiyixin/article/details/104415952
15.基本阈值操作:https://blog.csdn.net/shuiyixin/article/details/104423534
16.卷积与自定义线性滤波:https://blog.csdn.net/shuiyixin/article/details/104438655
17.边缘处理:https://blog.csdn.net/shuiyixin/article/details/104454474
18.Sobel与Scharr算子:https://blog.csdn.net/shuiyixin/article/details/104484635
19.拉普拉斯算子:https://blog.csdn.net/shuiyixin/article/details/104510390
20.边缘检测与canny算子:https://blog.csdn.net/shuiyixin/article/details/104529465
21.霍夫直线变换:https://blog.csdn.net/shuiyixin/article/details/104541495
22.霍夫圆变换:https://blog.csdn.net/shuiyixin/article/details/79898107
23.像素重映射:https://blog.csdn.net/shuiyixin/article/details/79961040
24.直方图均衡化:https://blog.csdn.net/shuiyixin/article/details/80001756
25.直方图计算(calcHist):https://blog.csdn.net/shuiyixin/article/details/80032167
26.直方图比较(compareHist):https://blog.csdn.net/shuiyixin/article/details/80257822
27.直方图反向投影(calcBackProject):https://blog.csdn.net/shuiyixin/article/details/80331839
28.模板匹配(matchTemplate):https://blog.csdn.net/shuiyixin/article/details/104563199
29.轮廓发现(findContours、drawContours):https://blog.csdn.net/shuiyixin/article/details/104604849
30.凸包之Graham扫描法、Jarvis步进法:https://blog.csdn.net/shuiyixin/article/details/104625013
31.矩概念与图像矩:https://blog.csdn.net/shuiyixin/article/details/104646531
注:
获取对应代码,关注上面的微信公众号《AI与区块链技术》并回复OpenCV310。
四、应用教程
使用OpenCV3.1.0我也做了一些小的实战及一些基本应用,有兴趣的可以尝试一下:
1.摄像头基本操作:https://blog.csdn.net/shuiyixin/article/details/82949396
2.图像素描及卡通化:https://blog.csdn.net/shuiyixin/article/details/81095564
3.哈哈镜:https://blog.csdn.net/shuiyixin/article/details/81155444
五、报错及解决
使用OpenCV3.1.0会遇到一系列问题,在这里我会把我遇到的一些问题分享在下面,如果你有什么问题,可以联系我,我们一起丰富它:
1.waitKey不明确解决方案:https://blog.csdn.net/shuiyixin/article/details/88251672
2.由于找不到opencv_worldXXX.dll,无法继续执行代码:https://blog.csdn.net/shuiyixin/article/details/98992644