OpenCV的基础数据类型主要分为三类:直接从C++原语继承来的基础数据类型(in、float等);辅助对象(指针、数据范围);大型数组类型(CV::MAT)
基础类型概述:
cv::Vec<> 固定向量类可以看作是处理小型向量的一种更加方便和快捷的手段。我们不会倾向于使用这种形式,相对的我们使用它的别名更多一点,比如cv::Vec2i,cv::Vec3i,cv::Vec4d(分别对应于两个元素的整型向量、三个元素的整型向量、四个元素的双浮点型向量)。
cv::Mat<>固定矩阵类,它是用于一些特定的小型矩阵的操作。我们也经常使用它的别名,cv::Matx{1,2,3,4,6}{1,2,3,4,6}{f,d}
cv::Point类,它是两到三个原语的容器。与固定向量类最大的不同,它们是通过名称变量访问的(myPoint.x,myPoint.y)。我们仍习惯使用它的模板,cv::Point2i, cv:;Point2f, cv::Point2d.
cv::Scalar 本质是一个四维的Point类。一般使用cv::Scalar4d,通过整数的下标进行访问。
cv::Size 与Point类类似,他拥有width和height两个属性
cv::Rect 是整数类型的矩形的别名。我们常使用以下几种形式:
rect.area(); //返回rect的面积 5000
rect.size(); //返回rect的尺寸 [50 × 100]
rect.tl(); //返回rect的左上顶点的坐标 [100, 50]
rect.br(); //返回rect的右下顶点的坐标 [150, 150]
rect.width(); //返回rect的宽度 50
rect.height(); //返回rect的高度 100
rect.contains(Point(x, y)); //返回布尔变量,判断rect是否包含Point(x, y)点
深入了解基础类型
Point类
直接受Point类支持的操作:
默认构造函数:cv::Point2i p;cv::Point3i p;
复制构造函数:cv::Point3f
OpenCV初学(3)--------了解OpenCV 的数据类型
最新推荐文章于 2022-12-11 21:33:06 发布
本文介绍了OpenCV的基础数据类型,包括cv::Vec<>、cv::Mat<>、cv::Point类、cv::Scalar、cv::Size、cv::Rect及其相关操作。通过详细讲解和示例,帮助读者理解OpenCV中常用数据类型的用途和使用方法。
摘要由CSDN通过智能技术生成