OpenCV学习:Mat类详细解析+源码剖析(一)

本文深入探讨OpenCV中的Mat类,它是图像处理的基础数据结构。通过分析Mat的声明和实现,以及关键成员函数,如构造函数、元素定位函数(at和ptr)和数据成员size和step,为后续的图像处理工作打下基础。
摘要由CSDN通过智能技术生成

Mat类是一种基础的数据结构,属于OpenCV中的C++系列函数(类),摸清Mat的脉络,有助于进行后续的图像处理工作,下面就好好说说Mat类。

OpenCV中Mat类声明路径:opencv-2.4.5/modules/core/include/opencv2/core/core.hpp

OpenCV中Mat类实现路径:opencv-2.4.5/modules/core/include/opencv2/core/mat.hpp

                                                 opencv-2.4.5/modules/core/src/matrix.cpp

Mat类声明如下:

class CV_EXPORTS Mat
{
   //Mat类有许多成员函数,为了理清Mat的结构,这里只列出Mat类的重要的数据成员,其他数据成员以及函数成员以后慢慢解析
    ......
public:
    int flags;//标志位,比如图像有几个波段等
    int dims;//矩阵的维数
    int rows, cols;//矩阵的行数和列数
    uchar* data;//指向数据的指针,Key Point!注意,指向数据的指针这里是unsigned char类型的。

    int* refcount;//指向引用计数器(C++中著名的引用计数器)
    ......
 };

好了,Mat的基础数据结构就如上所示了,下面就从Mat的成员函数入手,揭开Mat这个OpenCV基本数据结构的神秘面纱。

这些函数,我们不能一股

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值