https://slides.com/maaya/pyladies-xr-opencv/live
import cv2
IMAGE_DIR = os.path.abspath(os.path.dirname(__file__)) + '/comparison/'
source = cv2.imread(IMAGE_DIR + '1.png')
# モノクロ画像化
gray = cv2.cvtColor(imread, cv2.COLOR_RGB2GRAY)
# 2値化
ret, th1 = cv2.threshold(gray, 130, 255, cv2.THRESH_BINARY)
import cv2
# 輪郭抽出
ret, contours, hierarchy
= cv2.findContours(th1, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)
# coordinates => 先ほど輪郭抽出で得た座標配列
# X座標準にソート
coordinates.sort(key=lambda x: (x[0], x[1]))
# 外枠データ(xもしくはyに0もしくはmax値を持っているデータを削除
# x=1-max値までのデータが揃っているかチェック
#揃っていない場合は一つ前の値と同じ値を登録する
全部描こうかなとか思ったけどクソ長いのでやめた
def display_image(img):
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
IMAGE_DIR = os.path.abspath(os.path.dirname(__file__))
image_source = cv2.imread(IMAGE_DIR + '/2.png')
gray = cv2.cvtColor(image_source, cv2.COLOR_RGB2GRAY)
display_image(gray)
ret, th1 = cv2.threshold(gray, 130, 255, cv2.THRESH_BINARY)
display_image(ret)
怖いけど。