OpenCV常用数据结构和函数
点的表示:Point 类
Point 类数据结构表示二维坐标系下的点,即由其图像坐标 x,y 指定的 2D 点。
用法如下
1 | Point point; |
Point、Point2i、Point 互相等价。Point、Point2f 互相等价。
颜色的表示:Scalar 类
注意 OpenCV 默认的图片通道存储顺序是 BGR,即蓝绿红,而不是 RGB。
Scalar()表示具有 4 个元素的数组,在 OpenCV 中被大量用于传递像素值,如 RGB。如果用不到四个参数,则多余的参数不用写出。
用法如下
1 | Scalar( a, b, c); |
尺寸的表示:Size 类
Size_、Size2i、Size 等价
用法如下
1 | // 可以用 xxx.width 和 xxx.height 获取 宽 和 高 |
矩形的表示:Rect 类
Rect 类的成员变量有 x,y,width,height,分别表示左上角点的坐标和矩形的宽高。常用的成员函数有:
- Size()返回值为 Size;
- area()返回矩形的面积;
- contains(Point)判断点是否在矩形内;
- inside(Rect)判断矩形是否在该函数内;
- tl()返回左上角点的坐标;
- br()返回右下角点的坐标;
求交集并集
1 | Rect rect = rect1 & rect2; // 交集 |
平移和缩放
1 | Rect rectShift = rect + point; // 平移 |
颜色空间转换:cvtColor()函数
原型如下:
1 | void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0); |
- 参数一:输入图像
- 参数二:输出图像
- 参数三:颜色空间转换标识符(参表)
- 参数四:目标图像的通道数,若参数为 0,表示目标图像取源图像的通道数。
用法如下
1 | cvtColor(srcImage, dstImage, COLOR_GRAY2BGR); |
本文作者 : HeoLis
原文链接 : https://ishero.net/OpenCV%E5%B8%B8%E7%94%A8%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E5%92%8C%E5%87%BD%E6%95%B0.html
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
学习、记录、分享、获得