logo资料库

OpenCV中文官方文档.pdf

第1页 / 共310页
第2页 / 共310页
第3页 / 共310页
第4页 / 共310页
第5页 / 共310页
第6页 / 共310页
第7页 / 共310页
第8页 / 共310页
资料共310页,剩余部分请下载后查看
OpenCV中文官方文档
0_OpenCV-Python Tutorials
OpenCV-Python教材
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
写在前面的话
目录
OpenCV-Python教程简介
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
OpenCV
OpenCV-Python
OpenCV-Python教程
OpenCV需要您!
贡献者
其他资源
在Windows中安装OpenCV-Python
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
从预编译的二进制文件安装OpenCV
从源代码构建OpenCV
其他资源
练习题
在Fedora中安装OpenCV-Python
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
介绍
从预构建的二进制文件安装OpenCV-Python
从源代码安装OpenCV
强制依赖
可选依赖项
下载OpenCV
配置和安装
其他资源
练习题
在Ubuntu中安装OpenCV-Python
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
从预构建的二进制文件安装OpenCV-Python
从源代码构建OpenCV
所需的构建依赖项
可选依赖项
下载OpenCV
配置和安装
图像入门
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
使用OpenCV
读取图像
显示图像
写入图像
总结
使用Matplotlib
其他资源
练习题
图像入门
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
从相机中读取视频
从文件播放视频
保存视频
其他资源
练习题
OpenCV中的绘图功能
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
代码
画线
画矩形
画圆圈
画椭圆
画多边形
向图像添加文本:
结果
其他资源
练习题
鼠标作为画笔
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
简单演示
更高级的演示
其他资源
练习题
轨迹栏作为调色板
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
代码演示
练习题
图像的基本操作
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
访问和修改像素值
访问图像属性
图像感兴趣区域ROI
拆分和合并图像通道
为图像设置边框(填充)
其他资源
练习题
图像上的算术运算
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
图像加法
图像融合
按位运算
其他资源
练习题
性能衡量和提升技术
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
使用OpenCV衡量性能
OpenCV中的默认优化
在IPython中衡量性能
更多IPython魔术命令
性能优化技术
其他资源
练习题
改变颜色空间
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
改变颜色空间
对象追踪
如何找到要追踪的HSV值?
其他资源
练习题
图像的几何变换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
变换
缩放
平移
旋转
仿射变换
透视变换
其他资源
练习题
图像阈值
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
简单阈值
自适应阈值
Otsu的二值化
Otsu的二值化如何实现?
其他资源
练习题
图像平滑
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
2D卷积(图像过滤)
图像模糊(图像平滑)
1.平均
2.高斯模糊
3.中位模糊
4.双边滤波
其他资源
练习题
形态学转换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
1. 侵蚀
2. 扩张
3. 开运算
4. 闭运算
5. 形态学梯度
6. 顶帽
7. 黑帽
结构元素
其他资源
练习
图像梯度
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
1. Sobel 和 Scharr 算子
2. Laplacian 算子
代码
一个重要事项
附加资源
练习
Canny边缘检测
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的Canny Edge检测
附加资源
练习
图像金字塔
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
使用金字塔进行图像融合
附加资源
练习
轮廓:入门
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
什么是轮廓?
如何绘制轮廓?
轮廓近似方法
附加资源
练习
轮廓特征
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
1. 特征矩
2. 轮廓面积
3. 轮廓周长
4. 轮廓近似
5. 轮廓凸包
6. 检查凸度
7. 边界矩形
7.a.直角矩形
7.b. 旋转矩形
8. 最小闭合圈
9. 拟合一个椭圆
10. 拟合直线
附加资源
练习
轮廓属性
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
1. 长宽比
2. 范围
3. 坚实度
4. 等效直径
5. 取向
6. 掩码和像素点
7. 最大值,最小值和它们的位置
8. 平均颜色或平均强度
9. 极端点
附加资源
练习
轮廓:更多属性
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论和代码
1. 凸性缺陷
2. 点多边形测试
3. 形状匹配
附加资源
练习
轮廓分层
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
层次结构是什么?
OpenCV中的分级表示
轮廓检索模式
1. RETR_LIST
2. RETR_EXTERNAL
3. RETR_CCOMP
4. RETR_TREE
附加资源
练习
直方图-1:查找、绘制和分析
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
寻找直方图
1. OpenCV中的直方图计算
2. numpy的直方图计算
绘制直方图
1. 使用Matplotlib
2. 使用 OpenCV
掩码的应用
附加资源
练习
直方图-2:直方图均衡
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的直方图均衡
CLAHE(对比度受限的自适应直方图均衡)
附加资源
练习
直方图-3:二维直方图
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
介绍
OpenCV中的二维直方图
Numpy中的二维直方图
绘制二维直方图
方法1:使用 cv.imshow()
方法2:使用Matplotlib
方法3:OpenCV示例样式
附加资源
练习
直方图4:直方图反投影
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
Numpy中的算法
OpenCV的反投影
附加资源
练习
傅里叶变换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
Numpy中的傅里叶变换
OpenCV中的傅里叶变换
DFT的性能优化
为什么拉普拉斯算子是高通滤波器?
附加资源
练习
模板匹配
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的模板匹配
多对象的模板匹配
附加资源
练习
霍夫线变换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的霍夫曼变换
概率霍夫变换
附加资源
练习
霍夫圈变换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
学习目标
理论
附加资源
练习
图像分割与Watershed算法
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
代码
附加资源
练习
交互式前景提取使用GrabCut算法
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
示例
附加资源
练习
理解特征
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
解释
附加资源
练习
哈里斯角检测
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的哈里斯角检测
SubPixel精度的转角
附加资源
练习
Shi-tomas拐角检测器和益于跟踪的特征
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
代码
额外资源
练习
SIFT尺度不变特征变换
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
1. 尺度空间极值检测
2. 关键点定位
3. 方向分配
4. 关键点描述
5. 关键点匹配
OpenCV中的SIFT
附加资源
练习
SURF简介(加速的强大功能)
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的SURF
附加资源
练习
用于角点检测的FAST算法
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
使用FAST进行特征检测
让机器学习一个角检测器
非最大抑制
总结
OpenCV中的高速拐角检测器
附加资源
练习
BRIEF(二进制的鲁棒独立基本特征)
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的BRIEF
附加资源
ORB(面向快速和旋转的BRIEF)
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
理论
OpenCV中的ORB
附加资源
练习
特征匹配
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
Brute-Force匹配器的基础
使用ORB描述符进行Brute-Force匹配
什么是Matcher对象?
带有SIFT描述符和比例测试的Brute-Force匹配
基于匹配器的FLANN
附加资源
练习
特征匹配 + 单应性查找对象
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
基础
代码
附加资源
练习
如何使用背景分离方法
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
代码
解释
结果
参考
Meanshift和Camshift
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
学习目标
Meanshift
OpenCV中的Meanshift
Camshift
OpenCV中的Camshift
附加资源
Exercises
光流
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
光流
Lucas-Kanade 方法
OpenCV中的Lucas-Kanade
OpenCV中的密集光流
相机校准
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
基础
代码
开始
另外
校准
不失真
1. 使用cv.undistort()
2. 使用remapping
重投影误差
附加资源
练习
姿态估计
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
基础
绘制立方体
附加资源
练习
对极几何
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
目标
基础概念
代码
附加资源
练习
7_4_立体图像的深度图
目标
基础
代码
附加资源
练习
8_1_理解KNN
目标
理论
OpenCV中的kNN
附加资源
练习
8_2_使用OCR手写数据集运行KNN
目标
手写数字的OCR
英文字母的OCR
附加资源
练习
8_3_理解SVM
目标
理论
线性可分数据
非线性可分数据
附加资源¶
练习¶
8_4_使用OCR手写数据集运行SVM
目标
识别手写数字
附加资源
练习
理解K-Means聚类
目标
理论
T-shirt尺寸问题
如何起作用?
附加资源
练习s
8_6_OpenCV中的K均值
目标
理解参数
输入参数
1. 单特征数据
2. 多特征数据
3.颜色量化
附加资源
练习
9_1_图像去噪
目标
理论
OpenCV中的图像去噪
附加资源
练习
9_2_图像修补
目标
基础
代码
练习
9_3_高动态范围
目标
理论
曝光序列HDR
结果
估计相机响应函数
附加资源
练习
级联分类器
目标
理论
OpenCV中的Haar-级联检测器
附加资源
级联分类器
简介
准备训练数据
正样本
级联训练
可视化级联分类器
OpenCV-Python Bindings 如何工作?
目标
OpenCV-Python bindings如何生成?
如何扩展新的模块到Python?
© 2018 Tangramor OpenCV中文官方文档 页:1 OpenCV中文官方文档 写在前面的话 OpenCV是计算机视觉中经典的专用库,其支持多语言、跨平台,功能强大。 OpenCV-Python为 OpenCV提供了Python接口,使得使用者在Python中能够调用C/C++,在保证易读性和运行效率的 前提下,实现所需的功能。 OpenCV-Python Tutorials是官方提供的文档,其内容全面、简单易 懂,使得初学者能够快速上手使用。 2014年段力辉在当时已翻译过OpenCV3.0,但时隔五年,如 今的OpenCV4.1中许多函数和内容已经有所更新,因此有必要对该官方文档再进行一次翻译。 翻 译过程中难免有所疏漏,如发现错误,希望大家指出,谢谢支持。 OpenCV-Python Tutorials官方 文档:https://docs.opencv.org/4.1.2/d6/d00/tutorial_py_root.html 目录 * OpenCV简介 了解如何在计算机上安装OpenCV-Python • OpenCV中的GUI特性 在这里,您将学习如何显示和保存图像和视频,控制鼠标事件以及创建轨迹栏。 • 核心操作 在本节中,您将学习图像的基本操作、例如像素编辑、几何变换,代码优化、一些数学工具等。 • OpenCV中的图像处理 在本节中,您将学习OpenCV内部的不同图像处理函数。 • 特征检测与描述 在本节中,您将学习有关特征检测和描述符的信息 • 视频分析 在本部分中,您将学习与对象跟踪等视频配合使用的不同技术。 • 相机校准和3D重建
© 2018 Tangramor OpenCV中文官方文档 页:2 在本节中,我们将学习有关相机校准,立体成像等的信息。 • 机器学习 在本节中,您将学习OpenCV内部的不同图像处理函数。 • 计算摄影学 在本节中,您将学习不同的计算摄影技术如图像去噪等。 • 目标检测(objdetect模块) 在本节中,您将学习目标检测技术,例如人脸检测等。 • OpenCV-Python Binding 在本节中,我们将了解如何生成OpenCV-Python Binding 关注我们,获取更多计算机视觉教程,资源。
© 2018 Tangramor OpenCV中文官方文档 页:3 OpenCV 中文官方文档 http://woshicver.com/
© 2018 Tangramor 0_OpenCV-Python Tutorials 页:1 0_OpenCV-Python Tutorials OpenCV-Python教材 作者|OpenCV-Python Tutorials 编译|Vincent 来源|OpenCV-Python Tutorials 写在前面的话 OpenCV是计算机视觉中经典的专用库,其支持多语言、跨平台,功能强大。 OpenCV-Python为 OpenCV提供了Python接口,使得使用者在Python中能够调用C/C++,在保证易读性和运行效率的 前提下,实现所需的功能。 OpenCV-Python Tutorials是官方提供的文档,其内容全面、简单易 懂,使得初学者能够快速上手使用。 2014年段力辉在当时已翻译过OpenCV3.0,但时隔五年,如今的OpenCV4.1中许多函数和内容已 经有所更新,因此有必要对该官方文档再进行一次翻译。 翻译过程中难免有所疏漏,如发现错误,希望大家指出,谢谢支持。 OpenCV-Python Tutorials官方文档:https://docs.opencv.org/master/d6/d00/tutorial_py_root.html 目录 • OpenCV简介: 了解如何在计算机上安装OpenCV-Python • OpenCV中的GUI特性 在这里,您将学习如何显示和保存图像和视频,控制鼠标事件以及创建轨迹栏。 • 核心操作
© 2018 Tangramor 目录 页:2 在本节中,您将学习图像的基本操作、例如像素编辑、几何变换,代码优化、一些数学工具等。 • OpenCV中的图像处理 在本节中,您将学习OpenCV内部的不同图像处理函数。 • 特征检测与描述 在本节中,您将学习有关特征检测和描述符的信息 • 视频分析 在本部分中,您将学习与对象跟踪等视频配合使用的不同技术。 • 相机校准和3D重建 在本节中,我们将学习有关相机校准,立体成像等的信息。 • 机器学习 在本节中,您将学习OpenCV内部的不同图像处理函数。 • 计算摄影学 在本节中,您将学习不同的计算摄影技术如图像去噪等。 • 目标检测(objdetect模块) 在本节中,您将学习目标检测技术,例如人脸检测等。 • OpenCV-Python Binding 在本节中,我们将了解如何生成OpenCV-Python Binding
© 2018 Tangramor OpenCV-Python教程简介 页:1 OpenCV-Python教程简介 作者|OpenCV-Python Tutorials 编译|Vincent 来源|OpenCV-Python Tutorials OpenCV OpenCV由**Gary Bradsky**于1999年在英特尔创立,第一版于2000年问世。**Vadim Pisarevsky**加入Gary Bradsky,一起管理英特尔的俄罗斯软件OpenCV团队。2005年,OpenCV 用于Stanley,该车赢得了2005年DARPA挑战赛的冠军。后来,在Willow Garage的支持下,它的 积极发展得以继续,由Gary Bradsky和Vadim Pisarevsky领导了该项目。OpenCV现在支持与计算 机视觉和机器学习有关的多种算法,并且正在日益扩展。 OpenCV支持多种编程语言,例如C++、Python、Java等,并且可在Windows、Linux、OS X、 Android和iOS等不同平台上使用。基于CUDA和OpenCL的高速GPU操作的接口也正在积极开发中。 OpenCV-Python是用于OpenCV的Python API,结合了OpenCV C++ API和Python语言的最佳特性。 OpenCV-Python OpenCV-Python是旨在解决计算机视觉问题的Python专用库。 Python是由**Guido van Rossum**发起的通用编程语言,很快就非常流行,主要是因为它的简单 性和代码可读性。它使程序员可以用较少的代码行表达想法,而不会降低可读性。 与C/C++之类的语言相比,Python速度较慢。也就是说,可以使用C/C++轻松扩展Python,这使我 们能够用C/C++编写计算密集型代码并创建可用作Python模块的Python包装器。这给我们带来了 两个好处:首先,代码与原始C/C++代码一样快(因为它是在后台运行的实际C++代码),其次, 在Python中比C/C++编写代码更容易。OpenCV-Python是原始OpenCV C++实现的Python包装器。 OpenCV-Python利用了**Numpy**,这是一个高度优化的库,用于使用MATLAB样式的语法进行数 值运算。所有OpenCV数组结构都与Numpy数组相互转换。这也使与使用Numpy的其他库(例如 SciPy和Matplotlib)的集成变得更加容易。
© 2018 Tangramor OpenCV-Python教程 页:2 OpenCV-Python教程 OpenCV引入了一组新的教程,它们将指导您完成OpenCV-Python中可用的各种功能。本指南主要 针对OpenCV 3.x版本(尽管大多数教程也适用于OpenCV 2.x)。 建议先了解Python和Numpy,因为本指南将不介绍它们。要使用OpenCV-Python编写优化的代 码,必须先明白Numpy。 本教程最初由*Abid Rahman K.在*Alexander Mordvintsev*的指导下作为Google Summer of Code 2013计划的一部分*启动。 OpenCV需要您! 由于OpenCV是开放源代码计划,因此欢迎所有人为这个库,文档和教程做出贡献。如果您在本教 程中发现任何错误(从小的拼写错误到代码或概念中的严重错误),请随时通过在GitHub 中:https://github.com/opencv/opencv 克隆OpenCV 并提交请求请求来更正它。OpenCV开发人员 将检查您的请求请求,给您重要的反馈,并且(一旦通过审阅者的批准)它将被合并到OpenCV 中。然后,您将成为开源贡献者:-) 随着新模块添加到OpenCV-Python中,本教程将不得不进行扩展。如果您熟悉特定的算法,并且 可以编写一个包括算法基本理论和显示示例用法的代码的教程,欢迎你这样做。 记住,我们可以**共同**使这个项目取得巨大成功! 贡献者 以下是向OpenCV-Python提交了教程的贡献者列表。 1. Alexander Mordvintsev(GSoC-2013 导师) 2. Abid Rahman K.(GSoC-2013 实习生) 其他资源 1. Python快速指南- [一小部分Python]:http://swaroopch.com/notes/python/ 2. 基本的Numpy教程:http://wiki.scipy.org/Tentative_NumPy_Tutorial 3. numpy示例列表:http://wiki.scipy.org/Numpy_Example_List
© 2018 Tangramor 其他资源 页:3 4. OpenCV文档:http://docs.opencv.org/ 5. OpenCV论坛:http://answers.opencv.org/questions/
分享到:
收藏