1

値の 2D グリッドがあります。たとえば、次のようになります。

0 0 0 0 0 0 0 0 0 0 0
0 1 1 1 1 1 1 1 1 1 0 
0 1 1 1 1 1 1 1 1 1 0 
0 1 0 0 0 1 1 0 0 1 0
0 1 0 0 0 1 1 0 0 1 0
0 1 0 0 0 1 1 0 0 1 0
0 1 0 0 0 1 1 0 0 1 0
0 1 1 1 1 1 1 1 1 1 0
0 1 1 1 1 1 1 1 1 1 0 
0 0 0 0 0 0 0 0 0 0 0

私がやりたいことは、1 に含まれるすべての 0 を別の値に設定することです。

基本的に、行または列で 1 の最初のインスタンスと 1 の最後のインスタンスを取得し、この境界内の 0 を別の値に設定したいと考えています。

最初と最後のインスタンスを取得してから手動で設定することでブルートフォースできますが、これをより効率的に行う方法はありますか?

4

1 に答える 1

1

一般にskimage、より多くの画像処理を行う場合、いくつかのアルゴリズムが追加される可能性があります。この問題は、 によって適切にカバーされていscipy.ndimage.binary_fill_holesます。

于 2012-10-01T10:17:18.387 に答える