下面的MATLAB代码是什么意思?
L = bwlabel(B,8)
mx= max(max(L))
有什么想法吗?
发布于 2010-11-26 22:08:05
默认情况下,max
在第一个非单元素维度上取数组的最大值。如果L
是一个2D数组(如果您调用bwlabel
,它应该是2D数组),第一次调用max
将折叠第一维,因此只有一行包含列maxima,第二次调用折叠第二维,因此只剩下一个标量最大值。在本例中,max(max(L))
等同于max(L(:))
由于bwlabel
执行连接分量标记(即使用唯一的连续整数标记每个连接的像素组),因此mx
会告诉您图像中像素组的数量。
编辑
正如@gnovice在评论中提到的那样,由bwlabel
分配的最高标签将作为其第二个输出参数返回:[L,mx] = bwlabel(B,8);
发布于 2010-11-26 22:08:18
bwlabel
返回连接组件的2D矩阵。像这样的嵌套max()
返回2D矩阵中的单个最大值,因此,找到的最高分量。
https://stackoverflow.com/questions/4288833
复制相似问题