opencv图像处理——存储结构 Mat (Matrices)

在opencv中,图像用一个矩阵数组表示,类名为Mat(Matrices的前三个字母的缩写)。类Mat表示一个n维密度数值的单通道或多通道数组。它可用于存储实数或复数向量、以及矩阵、灰度图像或彩色图像、立体像素(voxel)体积、向量域(fields)、点云(point clouds,一系列在三维空间中描述物体几何形状的点)、张量(tensors)、直方图(不过,非常高维的直方图可能存储在 SparseMat 中更好)。数组M的数据布局由数组M.step\[\]所定义,因此,元素 的地址(其中, )计算为

在二维数组的情况下,上述公式缩减为

注意, ( 事实上,

这意味着,二维矩阵是逐行存储的三维矩阵逐平面存储的 ,如此,等等。 是最小的,并且总是等于元素数目 M.elemSize()。因此,Mat 中的数据布局与标准工具包和 SDK 中的大多数密度数组类型兼容,例如 Numpy (ndarray)、Win32(独立设备位图)等,即使用逐步 (steps)(或大步(strides))的任何数组来计算像素的位置。由于这种兼容性,可以为用户分配的数据创建 Mat 头文件并使用 OpenCV 函数就地处理它。

相关推荐
A.说学逗唱的Coke12 分钟前
【大模型专题】别再用 HTTP 直连 Agent 了:用 Kafka 承载 A2A 协议,从 PoC 走到生产
人工智能·kafka·a2a
资讯综合21 分钟前
2026企业AI平台选型指南:多维视角下的主流方案解析
人工智能
资讯综合22 分钟前
向日葵 vs ToDesk 个人远控横评:PC/手机/弱网/远程开机实测(26年9月更新)
人工智能
布吉岛的石头28 分钟前
Java 程序员第 48 阶段15:Transformer 架构总览与自注意力直觉,注意力权重可视化:用 Java 打印注意力矩阵理解模型在看什么
人工智能·深度学习·transformer
正经教主34 分钟前
【FDE系列】阶段1Day 11:Prompt — 给模型立规矩
人工智能·fde
海上小飞龙1 小时前
LangChain 模型调用:invoke、stream、batch 到底该怎么选?
人工智能·语言模型·自然语言处理
美狐美颜sdk1 小时前
直播APP开发技术栈详解:视频美颜SDK、人脸识别与实时渲染
android·人工智能·音视频·美颜sdk·直播美颜sdk
jason_renyu1 小时前
Windows 环境下 Python 方式安装 Milvus 向量库与 Attu 避坑指南
人工智能·milvus·windows安装milvus·windows安转向量库
tianxuanjg1 小时前
机器人谐波减速器柔轮结构件采购指南:复杂薄壁精密件加工选型要点
人工智能·经验分享·机器人·无人机·制造