OpenCV ハンズオン 2

下の四文字を分割するタスク import cv2 # OpenCVライブラリ import numpy as np from matplotlib import pyplot as plt # 画像を描画するライブラリ matplotlib image_bgr = cv2.imread("../images/2A2X.png") image_gray = cv2.cvtColor(image_bgr, cv2.COLOR_BGR2GRAY) plt.imshow(image_gray, cmap='gray') plt.show() print(image_bgr.shape) 結果: (24, 72, 3) # https://algorithm.joho.info/image-processing/otsu-thresholding/ ret, threshd_img = cv2.threshold(image_gray, 0, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU) plt.imshow(threshd_img, cmap='gray') plt.show() image_contour, contours, hierarchy = cv2.findContours(threshd_img.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) print(type(contours)) print(len(contours)) # 四つ輪郭 結果: <class 'list'> 4 letter_image_regions = [] for contour in contours: (x, y, w, h) = cv2.

OpenCV ハンズオン1

画像をBGRで表示、BGRはRGB色を逆転するだけ import cv2 # OpenCVライブラリ import numpy as np from matplotlib import pyplot as plt # 画像を描画するライブラリ matplotlib image_bgr = cv2.imread("../images/Lenna.png", cv2.IMREAD_COLOR) print(image_bgr.shape) # 変なBGR色の画像が表示される #print(image_bgr) plt.imshow(image_bgr) plt.show() 結果: (512, 512, 3) 画像をRGBで表示 import cv2 import numpy as np from matplotlib import pyplot as plt image_bgr = cv2.imread("../images/Lenna.png", cv2.IMREAD_COLOR) image_rgb = cv2.cvtColor(image_bgr, cv2.COLOR_BGR2RGB) #print(image_rgb.shape) #print(image_rgb) plt.imshow(image_rgb) # rgb色の画像が表示される plt.show() 画像をGrayscaleで表示 import cv2 import numpy as np from matplotlib import pyplot as plt image_bgr = cv2.