今天敲matlab代码的时候,用bwboundaries函数来提取图像边界的代码中出现了D=B{1,1}这句代码(这句代码的意思是将边图像中第一个对象的所有边界坐标提取出来),觉得这种表达形式很有意思,查了查资料是元胞数组的利用。
元胞数组里面可以是任意结构的数组(任意大小,任意类型),是一种很方便的结构,这样你就可以把乱七八糟想要放到一个数组里的东西全部放进去,然后想调用的时候直接寻址。
关于元胞数组的寻访存在两种情况:
(1)圆括号D=B(1,1)
这种情况是指第一行第一列的胞元元素
(2)花括号D=B{1,1}
这种情况是指第一行第一列胞元元素的内容
创建元胞数组可以用cell函数
D=cell(N)创建N-N的空元胞数组
D=cell(M×N)创建M×N的空元胞数组