imerode
-
説明:侵食操作:指定された構造要素を使用して元の画像を侵食させます。この構造要素は、最小値を取るピクセルの近隣の形状を決定します。マルチチャネル画像の場合、各チャネルは個別に処理されます。
-
引数
- img (
np.ndarray):入力画像。 - ksize (
Union[int, Tuple[int, int]]):構造要素のサイズ。デフォルトは (3, 3)。 - kstruct (
str | int | MORPH):要素の形状。MORPH.CROSS/RECT/ELLIPSE、文字列"CROSS"/"RECT"/"ELLIPSE"、または OpenCV の整数値を指定できます。デフォルトはMORPH.RECT。
- img (
-
例
import numpy as np
from capybara.vision.morphology import imerode
img = np.array([[0, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 1, 1, 1, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 0]], dtype=np.uint8)
eroded_img = imerode(img, ksize=3, kstruct='RECT')
# Kernel will be like this:
# >>> np.array([[1, 1, 1],
# [1, 1, 1],
# [1, 1, 1]], dtype=np.uint8)
# After erosion, the image will be like this:
# >>> np.array([[0, 0, 0, 0, 0],
# [0, 0, 0, 0, 0],
# [0, 0, 1, 0, 0],
# [0, 0, 0, 0, 0],
# [0, 0, 0, 0, 0]], dtype=np.uint8)