内容推荐 《Python OpenCV快速入门到精通》是一本基础与实践相结合的图书。本书从学Python OpenCV到用Python OpenCV的角度出发,在帮助读者朋友快速掌握Python OpenCV基础的同时,引导读者朋友如何使用Python OpenCV开发简单的应用程序。 全书共28章,主要分为3个篇章(基础篇、实战篇、强化篇),基础篇包括搭建开发环境、图像处理基础、NumPy工具包、绘图及交互、图像的几何变换、图像运算、阈值、形态学操作、滤波器、图形检测、图像轮廓、模板匹配、视频处理和人脸检测与识别;实战篇包括更改卡通人物的衣服颜色,图像操作之均分、截取和透视,计算轮廓的面积、周长和极点,掩模调试器,粘贴带透明区域的图像,鼠标操作之缩放和移动图像,机读答题卡,检测蓝色矩形的交通标志牌,滤镜编辑器,给图像打马赛克,给图像的任意区域打马赛克和手势识别;强化篇包括人工瘦脸和MR智能视频打卡系统。 本书提供丰富的源码资源,包含基础篇的实例、基础篇的13个综合实例、实战篇的12个案例和强化篇2个项目,力求为读者朋友打造一本既能学Python OpenCV又能用Python OpenCV的好书。 本书不仅适合作为软件开发者的自学用书,而且适合作为高等院校相关专业的教学参考书,还适合供初入职场的开发人员查阅、参考。 目录 第1篇 基础篇 第1章 搭建开发环境 1.1 Python的下载和安装 1.1.1 下载Python 1.1.2 安装Python 1.1.3 测试Python是否安装成功 1.2 Python OpenCV的下载和安装 1.2.1 下载和安装OpenCV-Contrib-Python工具包 1.2.2 测试OpenCV-Contrib-Python工具包和NumPy工具包是否安装成功 1.3 PyCharm的下载和安装 1.3.1 下载PyCharm 1.3.2 安装PyCharm 1.3.3 启动并配置PyCharm 第2章 图像处理基础 2.1 图像处理的基本操作 2.1.1 读取图像 2.1.2 显示图像 2.1.3 保存图像 2.1.4 获取图像属性 2.2 像素 2.2.1 确定像素的位置 2.2.2 获取像素的BGR值 2.2.3 修改像素的BGR值 2.3 色彩空间 2.3.1 GRAY色彩空间 2.3.2 HSV色彩空间 2.4 通道 2.4.1 拆分通道 2.4.2 合并通道 2.4.3 alpha通道 2.5 综合案例——显示不同艺术效果下的图像 2.6 实战练习 第3章 NumPy工具包 3.1 NumPy工具包与OpenCV 3.2 数组的类型 3.3 创建数组 3.3.1 最常规的array()方法 3.3.2 创建指定维度和数据类型未初始化的数组 3.3.3 创建用0填充的数组 3.3.4 创建用1填充的数组 3.3.5 创建随机数组 3.4 操作数组 3.4.1 加法运算 3.4.2 减法、乘法和除法运算 3.4.3 幂运算 3.4.4 比较运算 3.4.5 复制数组 3.5 数组的索引和切片 3.5.1 索引 3.5.2 切片式索引 3.5.3 二维数组索引 3.5.4 二维数组切片式索引 3.6 创建图像 3.6.1 创建黑白图像 3.6.2 创建彩色图像 3.6.3 创建随机图像 3.7 综合案例——拼接图像 3.8 实战练习 第4章 绘图及交互 4.1 线段的绘制 4.2 矩形的绘制 4.3 圆形的绘制 4.4 多边形的绘制 4.5 文字的绘制 4.5.1 文字的斜体效果 4.5.2 文字的垂直镜像效果 4.5.3 在图像上绘制文字 4.6 鼠标交互 4.7 滑动条 4.8 综合案例——动态绘制图形 4.9 实战练习 第5章 图像的几何变换 5.1 缩放 5.1.1 通过dsize参数实现缩放 5.1.2 通过fx和fy参数实现缩放 5.2 翻转 5.3 仿射变换 5.3.1 平移 5.3.2 旋转 5.3.3 倾斜 5.4 透视 5.5 综合案例——让图像呈现波浪效果 5.6 实战练习 第6章 图像运算 6.1 掩模 6.2 图像的加运算 6.3 图像的位运算 6.3.1 按位与运算 6.3.2 按位或运算 6.3.3 按位取反运算 6.3.4 按位异或运算 6.4 合并图像 6.4.1 加权和 6.4.2 覆盖 6.5 综合案例——为图像添加水印效果 6.6 实战练习 第7章 阈值 7.1 阈值概述 7.2 阈值处理函数 7.3 二值化阈值处理 7.3.1 “非黑即白”的图像 7.3.2 反二值化处理 7.4 零处理 7.4.1 低于阈值零处理 7.4.2 超出阈值零处理 7.5 截断阈值处理 7.6 自适应阈值处理 7.7 Otsu方法 7.8 综合案例——阈值调试器 7.9 实战练习 第8章 形态学操作 8.1 腐蚀 8.2 膨胀 8.3 开运算 8.4 闭运算 8.5 形态学方法 8.5.1 梯度运算 8.5.2 顶帽运算 8.5.3 黑帽运算 8.6 综合案例——矩形膨胀 8.7 实战练习 第9章 滤波器 9.1 图像平滑处理 9.2 均值滤波器 9.3 中值滤波器 9.4 高斯滤波器 9.5 双边滤波器 9.6 综合案例——图像的锐化 9.7 实战练习 第10章 图形检测 10.1 Canny边缘检测 10.2 霍夫变换 10.2.1 直线检测 10.2.2 圆环检测 10.3 综合案例——对噪声图像进行Canny边缘检测 10.4 实战练习 第11章 图像轮廓 11.1 图像轮廓的操作 11.1.1 查找轮廓 11.1.2 绘制轮廓 11.2 轮廓拟合 11.2.1 矩形包围框 11.2.2 圆形包围框 11.2.3 最小三角包围框 11.2.4 最优椭圆包围框 11.3 凸包 11.4 综合案例——计算图形的重心坐标 11.5 实战练习 第12章 模板匹配 12.1 模板匹配方法 12.2 单模板匹配 12.2.1 单目标匹配 12.2.2 多目标匹配 12.3 多模板匹配 12.4 综合案例——查找文件中重复的图像 12.5 实战练习 第13章 视频处理 13.1 读取并显示摄像头视频 13.1.1 VideoCapture类 13.1.2 如何使用VideoCapture类 13.2 播放视频文件 13.2.1 读取并显示视频文件 13.2.2 视频的暂停播放和继续播放 13.2.3 获取视频文件的属性 |