【发布时间】:2013-03-04 00:45:23
【问题描述】:
我有一个 MATLAB 文件 (xyz.mat),该文件中显然有图像数据,但我对 MATLAB 的经验很少,也不知道如何“提取/打开”它们。
这是我唯一的线索:
Matlab 数据文件包含一个结构“data”和一个字段“dataList”,它本身就是一个结构数组,每个图像一个元素。所以第一张图片可以在data.dataList(1).img中找到
在将文件加载到 MATLAB 中(什么都没有发生)并输入命令 data.dataList(1).img(我得到一个巨大的数字列表)后,我仍然没有得到图像。
有什么帮助/想法吗?
【问题讨论】:
-
欢迎来到 SO。不过,这不是一个实际的编程问题,而且您还没有研究过 MATLAB 中的图像和图像。数字图像是一个数组(一维、二维或 N-D 数字),具体取决于表示和数据。如果
data.dataList(1).img是二维的(使用size检查),请尝试imshow(data.dataList(1).img, []),将此二维数组视为图像(灰度或彩色)。 -
非常感谢您的帮助,如果我在不正确的区域发帖,我们深表歉意。我尝试了您发布的 imshow 功能并得到了灰色图像!另外,当我尝试 size(data.dataList(1).img) 时,我得到了输出:ans = 310 342 关于如何获取彩色图片的任何想法?
-
您得到的尺寸表示它是灰度图片,因此您无法从中获得彩色图片。彩色图片由红、绿、蓝三种原色组成。如果它是彩色图片,那么尺寸应该是:
310 342 3。最后 3 表示它有 3 个颜色平面:R、G 和 B。 -
那么我可以假设如果它是灰度图像,图像矩阵中的数字只是某种强度值吗?确定从黑到白的强度?
-
正确。
0是黑色,255是白色。
标签: image matlab arraylist structure datalist