opencv传递mat类size_10、OpenCV中图像和Mat类型(一)

Mat类型可以被认为是OpenCV库的核心。 OpenCV库中绝大多数的函数都是Mat类的成员,以Mat作为参数,或者Mat作为返回值。

a2b3e6512bc6939ee7f1ce255c40e1a8.png

Mat类用于表示任意维数的密集数组。即使对于数组中的该条目为零,也存在与该条目相对应的数据值。大多数图像都以密集阵列的形式存储。在稀疏数组的情况下,通常只存储非零条目。如果许多条目都是零,那么可以节省大量的存储空间。使用稀疏数组而不是密集数组的常见情况是直方图。对于许多直方图,大多数条目都是零,并且存储所有这些零不是必需的。对于稀疏数组的情况,OpenCV有另一种数据结构,SparseMat。

如果你熟悉OpenCV库的C接口(2.1之前的版本),您将会记住IplImage和CvMat的数据类型。 你也可能记得CvArr。 在C ++实现中,所有这些都消失了,用Mat代替。Mat类可以用于任何维数的数组。数据被存储在阵列中,被认为是"光栅扫描顺序"的n维数字。这意味着在一维数组中,元素是顺序的。在二维数组中,数据按行组织,每行依次出现。对于三维阵列,每个平面都是逐行填充的。

每个Mat都包含一个标志元素,指示数组内容,一个dims元素指示维数,rows和cols元素指示行数和列数,指向数据指针的位置数组数据被存储,一个类似于Ptr <>的的引用计数器。数据数组被布置成使得其索引由(i0,ii,...&#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值