"人工智障 机器瞎学 数据掩埋" 入门笔记

OpenCV常用数据结构和函数

2018-01-28  本文已影响5人  HeoLis

点的表示:Point类

Point类数据结构表示二维坐标系下的点,即由其图像坐标x,y指定的2D点。
用法如下

Point point;
point.x = 10;
point.y = 8;

或者
Point point = Point(10, 8);

Point_<int>、Point2i、Point互相等价。Point_<float>、Point2f互相等价。

颜色的表示:Scalar类

==注意OpenCV默认的图片通道存储顺序是BGR,即蓝绿红,而不是RGB。==

Scalar()表示具有4个元素的数组,在OpenCV中被大量用于传递像素值,如RGB。如果用不到四个参数,则多余的参数不用写出。
用法如下

Scalar( a, b, c);
// 定义的RGB颜色值:红色分量为c,绿色分量为b,蓝色分量为a。

尺寸的表示:Size类

Size_<int>、Size2i、Size等价
用法如下

// 可以用 xxx.width 和 xxx.height 获取 宽 和 高
Size(5 ,5); // 构造出的Size宽度和高度都为5,即xxx.width和xxx.height都为5

矩形的表示:Rect类

Rect 类的成员变量有x,y,width,height,分别表示左上角点的坐标和矩形的宽高。常用的成员函数有:

求交集并集

Rect rect = rect1 & rect2;  // 交集
Rect rect = rect1 | rect2;  // 并集

平移和缩放

Rect rectShift = rect + point;  // 平移
Rect rectScale = rect + size;   // 缩放

颜色空间转换:cvtColor()函数

原型如下:

void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0);
cvtColor(srcImage, dstImage, COLOR_GRAY2BGR);
上一篇 下一篇

猜你喜欢

热点阅读