OpenCV教程:基础篇(附光盘)
分類: 图书,计算机/网络,图形图像 多媒体,其他,
作者: 刘瑞祯,于仕琪 编著
出 版 社:
出版时间: 2007-6-1字数: 730000版次: 1页数: 443印刷时间: 2008/06/01开本: 16开印次: 2纸张: 胶版纸I S B N : 9787811240351包装: 平装内容简介
目前,OpenCV逐步成为一个通用的基础研究和产品开发平台。本书是国内第一本全面介绍OpenCV的中文版图书,对OpenCV开放源代码计算机视觉库进行了详细讲解。OpenCV由一系列C函数和C++类构成,功能涵盖图像处理、计算机视觉和模式识别等领域。OpenCV实现了大量通用算法,涉及到图像处理、结构分析、运动检测、摄像机定标、三维重建以及机器学习等方面,并有较高的运行效率。书中所有实例均提供了C/C++语言的源代码。
本书附光盘1张,内容包括OpenCV 1.0分别在windows和Linux下的安装程序,以及书中所有实例的源代码。
本书可作为信息、图像处理和模式识别等领域的高年级本科生、研究生的教学用书,也可作为学生课题项目、科研项目以及公司产品开发的参考手册。
目录
第1章 概 述
第2章 OpenCV入门
2.1 下载0penCV
2.2 VC6.O下安装与配置
2.2.1 安装OpenCV
2.2.2 安装DirectX SDK
2.2.3 编译OpenCV
2.2.4 设置VC6.0环境
2.2.5 在项目中运用OpenCV
2.2.6 以Makefile方式编译程序
2.3 VC.net 2003下安装与配置
2.3.1 定制全局选项
2.3.2 创建新项目
2.4 VC 2005 Express下安装与配置
2.4.1 安装VC 2005 Express
2.4.2 安装Microsoft Platform SDK
2.4.3 配置VC 2005 Express
2.4.4 建立OpenCV项目
2.5 Linux环境下的安装
2.5.1 下载源码
2.5.2 解压文件
2.5.3 检查软件配置
2.5.4 编译OpenCV
2.5.5 安装OpenCV
2.5.6 更新动态链接库
2.6 Delbian下安装
2.7 创建0penCV控制台项目
2.8 在MFC中使用OpenCV
2.8.1 创建新项目
2.8.2 设置OpenCV环境
2.8.3 分步创建MFC例程
2.8.4 读入图像并显示处理
2.8.5 在MFC窗口中显示图像
2.9 创建0penCV的静态链接库
2.9.1 生成CXCOREL的工程文件
2.9.2 生成CXCOREL的调试版静态库
2.9.3 生成CXCOREL的正式版静态库
2.9.4 生成CV/CVAux/HIGHGuI的静态库
2.9.5 独立发布的运行程序
第3章 OpenCV基础
3.1 OpenCV命名规则
3.2 基本数据结构
3.3 矩阵的使用与操作
3.3.1 分配与释放矩阵
3.3.2 访问矩阵元素
3.3.3 矩阵和向量操作
3.4 GUI命令
3.4.1 窗口管理
3.4.2 输入处理
3.5 图像的使用与操作
3.5.1 分配和释放图像
3.5.2 图像的读写
3.5.3 访问图像元素
3.5.4 图像转换
3.5.5 绘制命令
3.6 视频的使用与操作
3.6.1 从视频序列中捕捉图像帧
3.6.2 获取视频帧信息
3.6.3 保存视频文件
3.7 对摄像头和视频流的使用与操作
3.7.1 一般用法
3.7.2 选择摄像头
3.7.3 视频流的处理
3.7.4 获取摄像头属性
第4章 数据结构与数据操作
4.1 基础结构
4.1.1 CvPoint
4.1.2 CvPoint2D32f
4.1.3 CvPoint3D32f
4.1.4 CvSize
4.1.5 CvSize2D32f
4.1.6 CvRect
4.1.7 CvScalar
4.1.8 CvTermCriteria
4.1.9 CyMat
4.1.10 CvMatND
4.1.11 CvSparseMat
4.1.12 IplImage
4.1.13 CvArr
4.2 数组操作
4.2.1 初始化
4.2.2 获取元素和数组子集
4.2.3 复制和添加
4.2.4 变换和置换
4.2.5 算术、逻辑和比较运算
4.2.6 统计
4.2.7 线性代数
4.2.8 数学函数
4.2.9 随机数生成
4.2.10 离散变换
4.3 动态结构
4.3.1 内存存储
4.3.2 序列
4.3.3 集合
4.3.4 图
4.3.5 树
4.4 绘图函数
4.4.1 曲线与形状
4.4.2 文本
4.4.3 点集和轮廓
4.5 数据保存和运行时类型信息
4.5.1 文件存储
4.5.2 写数据
4.5.3 读取数据
4.5.4 运行时类型信息和通用函数
4.6 其他混合函数
4.7 错误处理和系统函数
4.7.1 错误处理
4.7.2 系统函数
第5章 模式识别与图像处理
5.1 图像处理
5.1.1 梯度、边缘和角点
5.1.2 采样、插值和几何变换
5.1.3 形态学操作
5.1.4 滤波器与彩色变换
5.1.5 金字塔及其应用
5.1.6 连接部件
5.1.7 图像与轮廓矩
5.1.8 亮度变换与直方图
5.1.9 特殊图像变换
5.1.10 匹配
5.2 结构分析
5.2.1 轮廓处理函数
5.2.2 计算几何
5.2.3 平面划分
5.3 运动分析与对象跟踪
5.3.1 背景统计量的累积
5.3.2 运动模板
5.3.3 对象跟踪
5.3.4 光流
5.3.5 预估器
5.4 目标检测
5.5 摄像机定标和三维重建
5.5.1 针孔摄像机模型和变形
5.5.2 摄像机定标
5.5.3 姿态估计
5.5.4 对极几何
第6章 运动物体跟踪
6.1 基本结构
6.1.1 团块
6.1.2 团块列表
6.1.3 团块跟踪参数
6.2 模块描述
6.2.1 前景检测模块
6.2.2 新团块检测模块
6.2.3 团块跟踪模块
6.2.4 轨迹生成模块
6.2.5 轨迹后处理模块
6.2.6 跟踪流程模块
6.3 运动跟踪例程
6.3.1 打印帮助
6.3.2 分析输入参数
6.3.3 打开视频
6.3.4 打印参数
6.3.5 创建所需要的模块
6.3.6 处理视频
6.3.7 例程使用
6.3.8 小结
6.4 添加自定义模块
6.4.1 新算法代码编写
6.4.2 新算法加入到框架
6.4.3 运行新程序
附录A 实例检索
附录B 附图检索
附录C 结构和函数检索
书摘插图
第1章概述
Opencv是由Intel公司资助的开源计算机视觉库。它由一系列c函数和少量c++类构成,实现图像处理和计算机视觉方面的很多通用算法。
1.OpenCV的特征
OpenCV具有以下特征:
①开源计算机视觉库采用C/C++编写。
②使用目的是开发实时应用程序。
③独立于操作系统、硬件和图形管理器。
④具有通用的图像/视频载人、保存和获取模块。
⑤具有底层和高层的应用开发包。
2.OpenCV的功能
应用OpenCV能够实现以下功能:
①对图像数据的操作,包括分配、释放、复制、设置和转换数据。
②对图像和视频的输入输出,指文件和摄像头作为输入,图像和视频文件作为输出。
③具有对矩阵和向量的操作以及线性代数的算法程序,包括矩阵积、解方程、特征值以及奇异值等。
④可对各种动态数据结构,如列表、队列、集合、树和图等进行操作。
⑤具有基本的数字图像处理能力,如可进行滤波、边缘检测、角点检测、采样与差值、色彩转换、形态操作、直方图和图像金字塔等操作。
⑥可对各种结构进行分析,包括连接部件分析、轮廓处理、距离变换、各种距的计算、模板
⑦对摄像头的定标,包括发现与跟踪定标模式、定标、基本矩阵估计、齐次矩阵估计和立体对应。
⑧对运动的分析,如对光流、运动分割和跟踪的分析。
⑨对目标的识别,可采用特征法和隐马尔可夫模型(HMM)法。
⑩具有基本的GUI功能,包括图像与视频显示、键盘和鼠标事件处理及滚动条等。
……