[OpenCV] モルフォジー変換で白の余白を狭くする

import cv2
import numpy as np

img = cv2.imread('out/result.jpg') 

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# cv2.imwrite("out/gray.jpg", img_gray)

# 二値化
# threshold = 180
# _, img_th = cv2.threshold(gray, threshold, 255, cv2.THRESH_BINARY)
# cv2.imwrite("out/th.jpg", img_th)

# 反転
img_bw = cv2.bitwise_not(gray)
cv2.imwrite("out/bw.jpg", img_bw)

kernel = np.ones((3, 3), np.uint8)

img_ero = cv2.erode(img_bw, kernel, iterations=1)
cv2.imwrite("out/ero.jpg", img_ero)

モルフォジー前

モルフォジー後

iterationsの値を大きくするほど、白の値が狭くなる

反対にcv2.dilate(img_bw, kernel, iterations = 1) として白を白を膨張する事もできる

おおおおおおお
Sugeeeeeeeeeeee