OpenCV 2.1参考手册:核心结构与API介绍

需积分: 3 6 下载量 62 浏览量 更新于2024-10-15 收藏 73KB PDF 举报
"OpenCV参考手册,版本2.1,由OpenCV中文论坛会员HEYOUP翻译并整理,主要介绍了OpenCV的核心功能——CAPI,包括CvPoint、CvPoint2D32f、CvPoint3D32f和CvPoint2D64f等基本结构。" OpenCV是一个开源的计算机视觉库,它提供了大量的图像处理和计算机视觉功能。该参考手册是针对OpenCV 2.1版本的,主要关注的是旧版的CAPI(Core API)部分,这部分内容主要是关于数据结构和基础类型。下面将详细解释这些基本结构。 1. **CvPoint**: 这是一个表示二维整数坐标的结构体,常用于描述图像中的像素位置。它有两个成员变量,`x`和`y`,分别代表横坐标和纵坐标,通常以0为原点。`cvPoint`是一个内联函数,用于快速创建一个CvPoint对象,传入两个整数参数表示坐标值。 2. **CvPoint2D32f**: 这是一个表示浮点数坐标点的结构体,常用于需要更高精度的情况。同样包含`x`和`y`两个浮点数成员。`cvPoint2D32f`函数用于创建一个CvPoint2D32f对象,接收两个浮点数参数。此外,`cvPointTo32f`函数则可以将CvPoint转换为CvPoint2D32f。 3. **CvPoint3D32f**: 这个结构体用于表示三维浮点坐标,有三个成员变量:`x`,`y`和`z`。`cvPoint3D32f`函数用于构造一个CvPoint3D32f对象,接收三个浮点数参数,表示三维空间中的坐标。 4. **CvPoint2D64f**: 类似于CvPoint2D32f,但使用双精度浮点数,提供更高的精度。包含`x`和`y`两个双精度浮点数成员。`cvPoint2D64f`函数用于创建CvPoint2D64f对象,而`cvPointTo32f`可以将CvPoint转换为CvPoint2D64f。 在OpenCV中,这些基本结构是处理图像、进行几何变换、特征检测等操作的基础。例如,当你需要在图像上标记特定点时,CvPoint是一个常用的选择;而CvPoint2D32f或CvPoint2D64f在计算图像特征或进行精确的几何操作时更为适用。 除了这些基本结构,OpenCV还提供了其他数据结构,如CvSize、CvRect等,用于表示图像的尺寸和矩形区域。CAPI还包括了各种矩阵操作、颜色空间转换、滤波、图像金字塔、边缘检测等图像处理和计算机视觉的函数。在实际应用中,开发者需要结合这些工具和函数来实现复杂的视觉任务。 OpenCV的API不断更新和发展,从2.x版本开始,逐渐引入了C++接口(C++ API),它更加面向对象且功能更强大,同时支持模板元编程,使得代码更加高效和易用。尽管如此,对于理解和学习OpenCV的基本概念,这份CAPI参考手册仍具有很高的价值。