登录论坛

查看完整版本 : MATLAB中的max(max(L))是什么意思?


poster
2019-12-10, 20:48
MATLAB中的以下代码是什么意思?

L = bwlabel(B,8) mx= max(max(L)) 有任何想法吗?



回答:

默认情况下, max会沿第一个非单维度标注一个数组的最大值。如果L是2D数组(在调用bwlabel情况下应该是2D数组),则max的第一个调用将折叠第一个维,因此只有一行具有bwlabel列,第二个调用将折叠第二个维,从而仅剩一个标量最大值。在此示例中, max(max(L))等同于max(L(:))

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

编辑

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



更多&回答... (https://stackoverflow.com/questions/4288833)