正如标题所说,只是想知道是否有一个函数可以用作字段名(http://www.mathworks.co.uk/help/matlab/ref/fieldnames.html),但适用于单元格。
所以如果我有类似的东西:
a = imread('redsquare.bmp');
b = imread('bluesquare.bmp');
c = imread('yellowsquare.bmp');
d = imread('greysquare.bmp');
e = {a, b, c, d};
我正在尝试检索:a、b、c、d 或不带扩展名的图像名称。
我努力了fn = fileparts(e)
and fntemp = cell2struct(e,2)
,但我无法让它工作。
希望这是有道理的
谢谢
元胞数组不包含任何元信息,例如字段名或文件名。如果您想访问该信息,您需要更改数据存储结构。一些选项包括:
标量结构适合只有一个名称可供参考的情况。
images.red = imread('redsquare.bmp');
images.blue = imread('bluesquare.bmp');
Use fieldnames(images)
得到名字。
结构体数组更一般一点。如果需要,允许完全通用的名称(包括特殊字符和空格)和附加元数据(例如“大小”、“作者”)
images(1).name = 'red';
images(1).im = imread('redsquare.bmp');
images(2).name = 'blue';
images(3).im = imread('bluesquare.bmp');
Use {fieldnames.name}
只获取名称。
容器.map可能比您在这里需要的更多,但很高兴了解一下。help comtainers.map
了解更多。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)