2016-08-29 2 views
0

私は、画像の両側に到達し、その下のセクションを埋めるような線のバイナリ画像を持っています。私はimfill()を得ることができません。それは単なる線であり、閉じた形ではないので何かをする。画像の下半分に沿って境界線を追加するとおそらくそれを行うと思いますが、私はほとんどのドキュメントを見てきましたが、それを指定できることについて何も見つかりませんでした。私のイメージのラインの下のギャップを埋めることができる方法はありますか?MATLABバイナリ画像の下に塗りつぶす

答えて

1

cummax(累積最大値)を使用すると、これを行うことができます。これにより、各列の1に達するまで0の画像が得られ、その後はすべて1が得られます。これは本質的に、ラインの下の画像を「塗りつぶす」。あなたはR2014bよりも古いですMATLABのバージョンを使用している場合

BW = [0 0 1; 
     0 1 0; 
     1 0 0]; 

BW = cummax(BW, 1); 

%  0  0  1 
%  0  1  1 
%  1  1  1 

、あなたはcumsum

BW = cumsum(BW, 1) > 0; 
+0

と似た何かを行うことができ、実際に境界線を引き出すための方法はありますか? – Mia

+0

@MiaGarbaccioはこれを行う方法を更新しました。 – Suever

+0

私は、画像の境界線の周りに線を描く方法があることを意味しました。 – Mia

関連する問題