• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    一篇文章带你顺利通过Python OpenCV入门阶段

    1. OpenCV 初识与安装

    本部分要了解 OpenCV (Open Source Computer Vision Library)的相关简介,OpenCv 可以运行在多平台之上,轻量级而且高效,由一系列 C 函数和少量 C++类构成,提供了 Python、Ruby、MATLAB 等语言的接口,所以在学习的时候,要注意查阅资料的语言实现相关问题。

    这个阶段除了安装 OpenCV 相关库以外,建议收藏官方网址,官方手册,官方入门教程,这些都是最佳的学习资料。

    模块安装完毕,需要重点测试 OpenCV 是否安装成功,可通过 Python 查询安装版本。

    2. OpenCV 模块简介

    先从全局上掌握 OpenCV 都由哪些模块组成。例如下面这些模块,你需要找到下述模块的应用场景与简介。

    coreimgprochighguicalib3dfeatures2dcontribflanngpulegacymlobjdetectphotostitching

    整理每个模块的核心功能,并完成第一个 OpenCV 案例,读取显示图片。

    3. OpenCV 图像读取,显示,保存

    安装 OpenCV 之后,从图像获取开始进行学习,包含本地加载图片,相机获取图片,视频获取,创建图像等内容。

    只有先获取图像之后,才能对图像进行操作处理,信息提取,结果输出,图像显示图像保存

    对于一个图像而言,在 OpenCV 中进行读取展示的步骤如下,你可以将其代码进行对应。

    1.图像读取;

    2.窗口创建;

    3.图像显示;

    4.图像保存;

    5.资源释放。

    涉及需要学习的函数有 cv2.imread()cv2.namedWindow()cv2.imshow()cv2.imwrite()cv2.destroyWindow()cv2.destroyAllWindows()cv2.imshow()cv2.cvtColor()cv2.imwrite()cv2.waitKey()

    4. 摄像头和视频读取,保存

    第一个要重点学习 VideoCapture 类,该类常用的方法有:

    除了读取视频外,还需要掌握 Opencv 提供的 VideoWriter 类,用于保存视频文件。

    学习完相关知识之后,可以进行这样一个实验,将一个视频逐帧保存为图片。

    5. OpenCV 常用数据结构和颜色空间

    这部分要掌握的类有 Point 类、Rect 类、Size 类、Scalar 类,除此之外,在 Python 中用 numpy 对图像进行操作,所以 numpy 相关的知识点,建议提前学习,效果更佳。

    OpenCV 中常用的颜色空间有 BGR 颜色空间、HSV/HLS 颜色空间、Lab 颜色空间,这些都需要了解,优先掌握 BGR 颜色空间。

    6. OpenCV 常用绘图函数

    掌握如下函数的用法,即可熟练的在 Opencv 中绘制图形。

    7. OpenCV 界面事件操作之鼠标与滑动条

    第一个要掌握的函数是鼠标操作消息回调函数,cv2.setMouseCallback() ,滑动条涉及两个函数,分别是:cv2.createTrackbar()cv2.getTrackbarPos()

    掌握上述内容之后,可以实现两个案例,其一为鼠标在一张图片上拖动框选区域进行截图,其二是通过滑动条让视频倍速播放。

    8. 图像像素、通道分离与合并

    了解图像像素矩阵,熟悉图片的像素构成,可以访问指定像素的像素值,并对其进行修改。

    通道分离函数 cv2.split(),通道合并函数 cv2.merge()

    9. 图像逻辑运算

    掌握图像之间的计算,涉及函数如下:

    cv2.add();cv2.addWeighted();cv2.subtract();cv2.absdiff();cv2.bitwise_and();cv2.bitwise_not();cv2.bitwise_xor()。

    还可以研究图像乘除法。

    10. 图像 ROI 与 mask 掩膜

    本部分属于 OpenCV 中的重点知识,第一个为感兴趣区域 ROI,第二个是 mask 掩膜(掩码)操作 。

    学习 ROI 部分时,还可以学习一下图像的深浅拷贝。

    11. 图像几何变换

    图像几何变换依旧是对基础函数的学习与理解,涉及内容如下:

    12. 图像滤波

    理解什么是滤波,高频与低频滤波,图像滤波函数。

    线性滤波:方框滤波、均值滤波、高斯滤波,
    非线性滤波:中值滤波、双边滤波,

    13. 图像固定阈值与自适应阈值

    图像阈值化是图像处理的重要基础部分,应用很广泛,可以根据灰度差异来分割图像不同部分,阈值化处理的图像一般为单通道图像(灰度图),核心要掌握的两个函数:

    14. 图像膨胀腐蚀

    膨胀、腐蚀属于形态学的操作,是图像基于形状的一系列图像处理操作。
    膨胀腐蚀是基于高亮部分(白色)操作的,膨胀是対高亮部分进行膨胀,类似“领域扩张”, 腐蚀是高亮部分被腐蚀,类似“领域被蚕食”。

    膨胀腐蚀的应用和功能:

    核心需要掌握的函数如下:

    形态学其他操作,开运算闭运算顶帽黑帽形态学梯度 这些都是基于膨胀腐蚀基础之上,利用 cv2.morphologyEx() 函数进行操作。

    15. 边缘检测

    边缘检测可以提取图像重要轮廓信息,减少图像内容,可用于分割图像、特征提取等操作。

    边缘检测的一般步骤:

    常用边缘检测算子:

    16. 霍夫变换

    霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,该过程在一个参数空间中,通过计算累计结果的局部最大值,得到一个符合该特定形状的集合,作为霍夫变换的结果。

    本部分要学习的函数:

    17. 图像直方图计算及绘制

    先掌握直方图相关概念,在掌握核心函数,最后通过 matplotlib 模块对直方图进行绘制。计算直方图用到的函数是 cv2.calcHist()

    直方图相关应用:

    18. 模板匹配

    模板匹配是在一幅图像中寻找与另一幅模板图像最匹配(相似)部分的技术。

    核心用到的函数如下:

    19. 轮廓查找与绘制

    核心要理解到在 OpenCV 中,查找轮廓就像在黑色背景中找白色物体。

    常用函数:

    最后应该掌握针对每个轮廓进行操作。

    20. 轮廓特征属性及应用

    这部分内容比较重要,并且知识点比较多,核心内容与函数分别如下:

    21. 高级部分-分水岭算法及图像修补

    掌握分水岭算法的原理,掌握核心函数 cv2.watershed()

    可以扩展补充图像修补技术及相关函数 cv2.inpaint(),学习完毕可以尝试人像祛斑应用。

    22. GrabCut FloodFill 图像分割、角点检测

    这部分内容都需要一些图像专业背景知识,先掌握相关概念知识,在重点学习相关函数。

    23. 特征检测与匹配

    特征点的检测和匹配是计算机视觉中非常重要的技术之一, 在物体识别、视觉跟踪、三维重建等领域都有很广泛的应用。

    OpenCV 提供了如下特征检测方法:

    24. OpenCV 应用部分之运动物体跟踪与人脸识别

    了解何为运动物体检测,OpenCV 中常用的运动物体检测方法有背景减法帧差法光流法,跟踪算法常用的有 meanShiftcamShift粒子滤波光流法 等。

    如果学习人脸识别,涉及的知识点为:

    以上就是一篇文章带你顺利通过Python OpenCV入门阶段的详细内容,更多关于Python OpenCV的资料请关注脚本之家其它相关文章!

    您可能感兴趣的文章:
    • 如何基于OpenCV&Python实现霍夫变换圆形检测
    • Python OpenCV实现边缘检测
    • Python OpenCV实现视频追踪
    • Python OpenCV 针对图像细节的不同操作技巧
    • opencv python简易文档之图像处理算法
    • opencv python简易文档之图片基本操作指南
    上一篇:python通过PyQt5实现登录界面的示例代码
    下一篇:我用Python做个AI出牌器斗地主把把赢
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    一篇文章带你顺利通过Python OpenCV入门阶段 一篇,文章,带你,顺利,通过,