一、基础类型与图像视频读取
1、基础类型
1、接口类
类型 | 说明 |
---|---|
InputArray | 只读输入数组传递到 OpenCV 函数的代理类 |
OutputArray | 这种类型与 InputArray 非常相似,只是它用于输入/输出和输出函数参数 |
InputOutputArray | 继承了OutputArray,作为输入输出接口,增加了一些功能 |
InputArrayOfArrays | typedef InputArrayInputArrayOfArrays |
OutputArrayOfArrays | typedef OutputArrayOutputArrayOfArrays |
InputOutputArrayOfArrays | typedef OutputArrayInputOutputArrayOfArrays |
输入排列:InputArray
输出排列:OutputArray
输入输出排列:InputOutputArray
后三者是ArraysOfArrays,是前三者的排列,即排列的排列,定义使用了typedef。
2、Mat图像类
Mat本质是一个n维密集运算数组,是Matrix的简写。相似的有UMat,表示GPU Mat,GMat,表示G-API的Mat接口。
3、运算类
类型 | 说明 |
---|---|
Matx | 定阶矩阵类,即确定规模大小的矩阵类 |
Vec | 向量类 |
4、定义类
类型 | 说明 |
---|---|
Point | 二维点类 |
Point3 | 三维点类 |
Rect | 矩形类 |
RotatedRect | 旋转矩形类 |
Range | 范围类 |
Scalar | 通道类 |
Size | 规格类 |
2、图像视频io
1、函数
- Mat cv::imread (const String&filename,int flags = IMREAD_COLOR)
- //从指定文件加载图像,如果无法读取,那么函数会返回一个空矩阵(Mat::data==NULL)
- bool cv::imwrite ( const String & filename,InputArray img,const std::vector> & params = std::vector< int >() )
- //imwrite函数将图像保存到指定的文件中。根据文件扩展名选择图像格式(有关扩展名列表,请参阅cv::imread)。通常,使用此功能只能保存8位单通道或3通道(具有“BGR”通道顺序)图像
2、类
1、VideoCapture
常用函数
VideoCapture (const String &filename, int apiPreference=CAP_ANY)
VideoCapture (int index, int apiPreference=CAP_ANY)
virtual bool open (const String &filename, int apiPreference=CAP_ANY)
virtual bool open (int index, int apiPreference=CAP_ANY)
virtual bool isOpened () const</