MATLAB中max(max(L))的含义是什么?

时间:2010-11-26 22:05:58

标签: matlab

MATLAB中的以下代码意味着什么?

L = bwlabel(B,8)
mx= max(max(L))

任何想法?

2 个答案:

答案 0 :(得分:8)

默认情况下,

max采用沿第一个非单一维度的数组的最大值。如果L是一个2D数组(在您调用bwlabel时它应该是这个数组),第一次调用max会折叠第一个维度,因此只有一行包含最大列,第二个调用折叠第二个维度,因此只剩下一个标量最大值。在此示例中,max(max(L))相当于max(L(:))

由于bwlabel执行连通分量标记(即用唯一的连续整数标记每个连接的像素组),mx会告诉您图像中像素组的数量。

修改

正如@gnovice在评论中提到的那样,bwlabel分配的最高标签将作为其第二个输出参数返回:[L,mx] = bwlabel(B,8);

答案 1 :(得分:4)

bwlabel返回连接组件的2D矩阵。这样的嵌套max()返回2D矩阵中的单个最大值,因此找到了最高的组件。