【问题标题】:Find largest TRUE row number of each column in Matlab在Matlab中找到每列的最大TRUE行号
【发布时间】:2014-02-16 00:06:09
【问题描述】:

我有一个二进制图像BW,我想找出每列的最大行数。我知道我可以循环执行,并且在每次迭代中我返回max(find(BW(:,i))); 作为i 列中的行号。但是有没有更简单的方法来实现呢?

注意BW中的所有真实值都是连接的,我想这可能会简化搜索过程。

提前谢谢你。

【问题讨论】:

    标签: image matlab binary


    【解决方案1】:

    改为执行以下矢量化操作。我认为是30个字符。

      [~,idx]=max(flipud(BW), [], 1);
    
      result=(size(BW,1)+1) - idx;
    

    【讨论】:

    • 非常聪明的方法!谢谢!
    • 它假定每一列中至少有一个 TRUE。否则,您将需要额外的处理。
    • 你好,Matt J,我又问了一个数组问题,想听听你的建议:stackoverflow.com/questions/21342609/…谢谢
    猜你喜欢
    • 2014-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-05
    • 1970-01-01
    相关资源
    最近更新 更多