手作業でNumpyを使用してカーネルを定義していました。
OpenCVでは、様々な形のカーネルをかんたんに作るための関数、cv2.getStructuringElement()が提供されています。
本稿では実際に、宣言の仕方を確認します。
サンプルコード
import cv2
rect = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5)) # 矩形
print("cv2.MORPH_RECT")
print(rect)
ellipse = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (5, 5)) # 楕円形
print("cv2.MORPH_ELLIPSE")
print(ellipse)
cross = cv2.getStructuringElement(cv2.MORPH_CROSS, (5, 5)) # 十字型
print("cv2.MORPH_CROSS")
print(cross)