如何在MATLAB中找到bw矩阵每行的第一个和最后一个?

时间:2018-03-21 17:02:35

标签: matlab image-processing matrix

假设我有一个矩阵

bw=[
0 0 1 1 1 0;
1 1 1 1 1 0;
0 1 1 1 0 0;
0 0 0 1 1 1
];

我想找到每行和最后一行中出现的前1个列号。列号应显示在两个不同的向量中,如下所示。 上述矩阵的输出应为:

first = [3 1 2 4]
last  = [5 5 4 6]

1 个答案:

答案 0 :(得分:1)

这样做:

bw=[0 0 1 1 1 0;1 1 1 1 1 0;0 1 1 1 0 0;0 0 0 1 1 1];
for i = 1:size(bw,1)
    first(i) = find(bw(i,:),1);
    last(i) = find(bw(i,:),1,'last');
end