这门课解决什么工作场景

很多做数据分析、自动化测试或后端开发的上班族,经常会遇到需要处理图像的场景:比如批量给产品图加水印、识别表单里的特定颜色区域、把监控截图里的特定画面截取出来做二次分析。这些需求往往不需要动用庞大的深度学习框架,用 OpenCV 的基础图像处理 API 就能快速搞定。这门基于 Python 和 OpenCV4 的课,解决的就是「拿到一堆图片不知道怎么用代码批量处理」的问题,把日常图像操作从手动用修图软件一张张改,变成写几十行脚本自动跑完。

适合什么基础与建议先看的模块

这门课要求你已经能熟练写 Python 基本语法,懂函数调用和文件读写,不需要有图像处理经验。但如果你连 Python 的列表推导式都写不顺,建议先补基础再看。拿到资料后,建议先看环境安装和图像处理基础这两块,把读取、保存、获取图像属性这几个操作跑通,确认本机能正常调用 OpenCV4 的核心 API。接着直接跳到色彩空间转换和通道拆分合并,这两块是后面做目标检测和图像分割的前置知识,理解了 BGR 和 HSV 的区别,才知道为什么提取特定颜色要先转 HSV 色彩空间。不要一上来就死磕每个像素的 BGR 值修改,先跑通整体流程再回头看细节。

学完能独立做什么与资料配合方法

学完这门课后,你能独立写出处理图像的 Python 脚本:比如读取一张彩色图转成灰度图、把图像里某个矩形区域批量涂黑、拆分出图像的某个颜色通道单独保存、把不同通道重新合并成新图。配合资料练习时,先把每节课的代码原样跑一遍确认能出结果,然后自己找几张本地的图片替换进去,观察输出有什么不同。特别在色彩空间和通道这两块,一定要自己动手把 BGR 图像拆成三个通道分别保存,看看每个通道单独长什么样,再试着把 HSV 空间里的 H 通道和 S 通道拿出来重新合并,对比和原图的差异。光看视频不动手改图片参数,基本学完就忘,必须自己拿真实图片反复试。


你将对OpenCV4 for Python的核心API有一个全面深刻的理解

课程目录

*   01 开端/

  *   01 课程概述

  *   02 安装OpenCV for Python

*   02 图像处理基础/

  *   01 读取图像(彩色和灰度)

  *   02 读取图像(将彩色图变成灰度图)

  *   03 保存图像(图像格式转换)

  *   04 获取图像属性

  *   05 OpenCV中的坐标系

  *   06 读取像素中的BGR值

  *   07 修改像素的BGR值

  *   08 将图像指定区域变成纯黑色

*   03 色彩空间/

  *   01 从BGR色彩空间转换到GRAY色彩空间

  *   02 适合图像处理的HSV色彩空间

  *   03 BGR色彩空间与HSV色彩空间互相转换

*   04 通道/

  *   01 拆分BGR图像中的通道

  *   02 拆分HSV图像中的通道

  *   03 合并B通道图像、G通道图像和R通道图像

  *   04 合并H通道图像、S通道图像和V通道图像

  *   05 通过改变通道的值让图像呈现不同的特效

  *   06 调整图像的透明度(alpha通道)

*   05 Numpy与OpenCV/

  *   01 产生纯黑和纯白的图像

  *   02 在黑色图像内部绘制白色图像

  *   03 在黑色图像内部绘制白色同心圆

  *   04 创建彩色图像

  *   05 创建彩色雪花点图像

  *   06 水平拼接

  *   07 垂直拼接

  *   08 拼接图像

*   06 绘制图形/

  *   01 绘制直线

  *   02 绘制矩形

  *   03 绘制实心和空心的同心正方形

  *   04 绘制圆形交通信号灯

  *   05 绘制随机颜色的同心圆

  *   06 绘制随机颜色实心圆

  *   07 绘制多边形

  *   08 绘制文本UnityMarvel

  *   09 绘制斜体文本UnityMarvel

  *   10 绘制镜像文本UnityMarvel

  *   11 在图像上绘制文本

  *   12 跳动的随机颜色小球

*   07 阈值函数/

  *   01 不同阈值的处理效果

  *   02 对图像进行反二值化处理

  *   03 低于阈值零处理

  *   04 高于阈值零处理

  *   05 截断处理

  *   06 让图像拥有清晰的轮廓

  *   07 自动技术阈值

  *   08 (新增)用多阈值分别转换灰度图像和彩色图像

*   08 几何变换/

  *   01 按指定尺寸缩放图像

  *   02 按指定比例缩放图像

  *   03 用三种方式翻转图像

  *   04 向左下角和右下角平移图像

  *   05 旋转图像

  *   06 向左和向右倾斜图像

  *   07 图像的透视效果

*   09 图像运算/

  *   01 创建掩模图像

  *   02 图像的加法运算

  *   03 利用图像加法叠加三色光

  *   04 使用掩模覆盖叠加颜色

  *   05 十字掩模与风景画做与运算

  *   06 十字掩模与风景画做或运算

  *   07 对风景画做取反运算

  *   08 对风景画做异或运算

  *   09 加密图像和解密图像

  *   10 利用加权和叠加多张图像

  *   11 截图和贴图

  *   12 透明图像的拼接

  *   13 计算图像矩阵中的最大值和最小值

  *   14 计算图像矩阵中的平均值和标准差

  *   15 比较两个图像,并取最大值和最小值

  *   16 比较两幅图像,并显示最大值图像和最小值图像

  *   17 用min函数和max函数截图

  *   18 显示红色图像(min函数的应用案例)

  *   19 两幅图像的位操作

*   10 滤波器/

  *   01 均值滤波器

  *   02 中值滤波器

  *   03 高斯滤波器

  *   04 双边滤波器

*   11 形态学方法/

  *   01 腐蚀

  *   02 膨胀

  *   03 开运算(先腐蚀,再膨胀)

  *   04 闭运算(先膨胀,再腐蚀)

  *   05 梯度运算(掏空图像)

  *   06 顶帽运算(保留图像的外部细节)

  *   07 黑帽运算(保留图像的内部细节)

*   12 图形检测/

  *   01 检测和绘制图像的轮廓

  *   02 不同轮廓的效果

  *   03 为多个花朵绘制轮廓

  *   04 为小蜘蛛绘制一个矩形的笼子

  *   05 为小蜘蛛绘制一个圆形的笼子

  *   06 为小蜘蛛绘制凸包

  *   07 Canny边缘检测

  *   08 检测图像中的钢笔

  *   09 检测图像中的金币

*   13 匹配模板/

  *   01 找出图像中的卡通图

  *   02 搜索相同的图片

  *   03 找出图像中所有相似的卡通图像

  *   04 统计北京地铁站的站点数量

  *   05 在图像上搜索多组相同的卡通图(多模板匹配)

*   14 视频处理/

  *   01 打开摄像头,并显示影像

  *   02 将摄像头视频转换为灰度视频

  *   03 保存摄像头拍摄的图像

  *   04 播放视频文件

  *   05 用灰度效果播放视频文件

  *   06 视频的暂停播放和继续播放

  *   07 获取视频文件的属性

  *   08 在视频播放窗口上显示播放进度

  *   09 用摄像头录制视频

  *   10 录制时长为5秒的视频

  *   11 截取视频

*   15 人脸识别/

  *   01 级联分类器

  *   02 人类识别相关API

  *   03 用红框标记人脸

  *   04 给每一个小姐姐都带上眼镜

  *   05 为眼睛做标记

  *   06 识别猫脸

  *   07 行人跟踪

  *   08 识别车牌

  *   09 使用Eigenfaces进行人脸分类

  *   10 使用Fisherfaces进行人脸分类

  *   11 使用LBPH进行人脸分类