1 Mat对象与IplImage对象
- Mat对象OpenCV2.0之后引进的图像数据结构、自动分配内存、不存在内存泄漏的问题,是面向对象的数据结构。分了两个部分,头部与数据部分
- lpllmage是从2001年OpenCv发布之后就一直存在,是c语言风格的数据结构,需要开发者自己分配与管理内存,对大的程序使用它容易导致内存泄漏问题 (建议不要使用)
1-1 Mat对象构造函数与常用方法
构造函数 |
---|
Mat::Mat() |
Mat::Mat(int rows, int cols, int type) |
Mat::Mat(Size size, int type) |
Mat::Mat(int rows, int cols, int type, const Scalar& s) |
Mat::Mat(Size size, int type, const Scalar& s) |
常用方法 | 注释 |
---|---|
void copyTo(Mat mat) | 拷贝Mat(拷贝头部和数据) |
void convertTo(Mat dst, int type) | 拷贝Mat并指定类型 |
Mat clone() | 拷贝Mat(拷贝头部和数据) |
int channels() | 查看Mat通道 |
int depth() | 查看Mat的深度 |
bool empty() | 判断Mat是否为空 |
uchar* ptr(i=0) | 获取Mat的指针i表示Mat的行 |
2 Mat对象使用
2-1 定义Mat对象src
Mat src;
src = imread("1.png");
if (src.empty()) {
return -1;
文章来源地址https://www.toymoban.com/news/detail-826671.html
文章来源:https://www.toymoban.com/news/detail-826671.html
到了这里,关于OpenCV 3 - Mat对象介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!