1
画像の処理では、すべての白いピクセルを無視したいと思います。これを行う最善の方法は、初期化するとすぐに白い画素があるマスク配列を変更するようにマスク配列を設定することです。これを行うには、次のコードの最後の行に記載されているメソッドを使用します。numpyを使用して特定の値のピクセルのマスク配列を作成する
with PIL.Image.open(picture) as im:
pix = numpy.array(im, dtype=numpy.float)
[height, width, _] = pix.shape
mask = numpy.zeros((height,width))
mask[numpy.argwhere(pix == [255,255,255])] = 1
しかし、この行は次のエラーを生成します。
File "C:\Users\Alec\zone_map.py", line 19, in zone_map
mask[numpy.argwhere(pix == [255,255,255])] = 1
IndexError: index 5376 is out of bounds for axis 0 with size 4000
どのように私は望ましい結果を達成するために、これを変更することができますか?
あなたは何をすべきか「うまくいかない」という意味ですか?それはエラーを投げますか?予期しない結果を出す? –