OpenCV计算机视觉编程手册:核心函数和数据结构
5星 · 超过95%的资源 需积分: 50 157 浏览量
更新于2024-07-24
6
收藏 2.18MB PDF 举报
OpenCV计算机视觉编程手册(中文)
OpenCV(Open Source Computer Vision Library)是一款开源的计算机视觉编程库,提供了大量的图像处理和计算机视觉相关函数。本手册将对OpenCV的基础结构、数组操作、绘图函数、数据保存和运行时类型信息、错误处理和系统函数等方面进行详细介绍。
**基础结构**
OpenCV的基础结构包括数组操作、动态结构、绘图函数等方面。
* 数组操作:OpenCV提供了多种数组操作函数,例如初始化、获取元素和数组子集、拷贝和填充、变换和置换、算术、逻辑和比较、统计、线性代数、数学函数、随机数生成、离散变换等。
* 动态结构:OpenCV提供了多种动态结构,例如内存存储、序列、集合、图、树等。
**数组操作**
数组操作是OpenCV中最基本的操作,包括:
* 初始化:使用cvCreateMat函数创建一个矩阵,使用cvCreateImage函数创建一个图像。
* 获取元素和数组子集:使用cvGetElem函数获取矩阵或图像的元素,使用cvGetSubRect函数获取矩阵或图像的子集。
* 拷贝和填充:使用cvCopy函数拷贝矩阵或图像,使用cvSet函数填充矩阵或图像。
* 变换和置换:使用cvTranspose函数对矩阵进行转置,使用cvFlip函数对图像进行翻转。
* 算术、逻辑和比较:使用cvAdd函数对矩阵或图像进行算术运算,使用cvCompare函数对矩阵或图像进行比较。
* 统计:使用cvMean函数计算矩阵或图像的均值,使用cvStdDev函数计算矩阵或图像的标准差。
* 线性代数:使用cvGemv函数对矩阵进行矩阵乘法,使用cvSolve函数对矩阵进行线性方程组求解。
* 数学函数:使用cvPow函数对矩阵或图像进行指数运算,使用cvSqr函数对矩阵或图像进行平方运算。
* 随机数生成:使用cvRandu函数生成随机数,使用cvRandn函数生成高斯随机数。
* 离散变换:使用cvDFT函数对矩阵或图像进行离散傅立叶变换,使用cvIDFT函数对矩阵或图像进行离散逆傅立叶变换。
**绘图函数**
OpenCV提供了多种绘图函数,例如:
* 绘制线和形状:使用cvLine函数绘制线,使用cvRectangle函数绘制矩形。
* 绘制文本:使用cvPutText函数绘制文本。
* 绘制点集和轮廓:使用cvDrawContours函数绘制点集和轮廓。
**数据保存和运行时类型信息**
OpenCV提供了多种数据保存和运行时类型信息函数,例如:
* 文件存储:使用cvSave函数保存矩阵或图像到文件。
* 写数据:使用cvWrite函数将矩阵或图像写入到文件。
* 读数据:使用cvRead函数从文件中读取矩阵或图像。
* 运行时类型信息:使用cvGetTypeInfo函数获取矩阵或图像的类型信息。
**错误处理和系统函数**
OpenCV提供了多种错误处理和系统函数,例如:
* 错误处理:使用cvError函数处理错误,使用cvGetErrInfo函数获取错误信息。
* 系统函数:使用cvGetTickCount函数获取系统时间戳,使用cvWaitKey函数等待用户输入。
**其它混合函数**
OpenCV还提供了多种其它混合函数,例如:
* 依字母顺序函数列表:使用cvGetFuncList函数获取函数列表。
* 例子列表:使用cvGetExampleList函数获取例子列表。
**CvPoint**
CvPoint是一个二维整形坐标轴上的点,包括x和y两个坐标。OpenCV提供了多种相关函数,例如:
* 构造函数:使用cvPoint函数创建一个CvPoint对象。
* 转换函数:使用cvPointFrom32f函数将CvPoint2D32f类型转换为CvPoint类型,使用cvPointTo32f函数将CvPoint类型转换为CvPoint2D32f类型。
**CvPoint2D32f**
CvPoint2D32f是一个二维浮点坐标上的点,包括x和y两个坐标。OpenCV提供了多种相关函数,例如:
* 构造函数:使用cvPoint2D32f函数创建一个CvPoint2D32f对象。
* 转换函数:使用cvPointFrom32f函数将CvPoint类型转换为CvPoint2D32f类型,使用cvPointTo32f函数将CvPoint2D32f类型转换为CvPoint类型。
**CvPoint3D32f**
CvPoint3D32f是一个三维浮点坐标上的点,包括x、y和z三个坐标。OpenCV提供了多种相关函数,例如:
* 构造函数:使用cvPoint3D32f函数创建一个CvPoint3D32f对象。
**CvSize**
CvSize是一个矩形框大小,以像素为精度。OpenCV提供了多种相关函数,例如:
* 构造函数:使用cvSize函数创建一个CvSize对象。
2017-03-19 上传
2017-10-27 上传
z13201035
- 粉丝: 0
- 资源: 1
最新资源
- WPF渲染层字符绘制原理探究及源代码解析
- 海康精简版监控软件:iVMS4200Lite版发布
- 自动化脚本在lspci-TV的应用介绍
- Chrome 81版本稳定版及匹配的chromedriver下载
- 深入解析Python推荐引擎与自然语言处理
- MATLAB数学建模算法程序包及案例数据
- Springboot人力资源管理系统:设计与功能
- STM32F4系列微控制器开发全面参考指南
- Python实现人脸识别的机器学习流程
- 基于STM32F103C8T6的HLW8032电量采集与解析方案
- Node.js高效MySQL驱动程序:mysqljs/mysql特性和配置
- 基于Python和大数据技术的电影推荐系统设计与实现
- 为ripro主题添加Live2D看板娘的后端资源教程
- 2022版PowerToys Everything插件升级,稳定运行无报错
- Map简易斗地主游戏实现方法介绍
- SJTU ICS Lab6 实验报告解析