OpenCVの基本操作の一部
OpenCVをPythonで操作する基本的な話をメモ的に記載します。
ヒストグラム
import cv2 import matplotlib.pyplot as plt img = cv2.imread("画像データのPath") #カラー画像の場合 color_list = ["blue", "green", "red"] for i,j in enumerate(color_list): hist = cv2.calcHist([img], [i], None, [256], [0, 256]) plt.plot(hist, color = j) #グレースケール画像の場合 img_gray = cv2.imread("画像データのPath", 0) hist2 = cv2.calcHist([img_gray], [0], None, [256], [0,256]) plt.plot(hist2) #ヒストグラムの均一化 img_eq = cv2.equalizeHist(img) hist_e = cv2.calcHist([img_eq], [0], None, [256], [0, 256]) plt.plot(hist_e)
γ変換
画面を明るくしたり暗くしたりする処理
import numpy as np #明るくするにはgamma > 1 gamma = 1.5 gamma_cvt = np.zeros((256, 1), dtype=np.uint8) for i in range(256): gamma_cvt[i][0] = 255 * (float(i)/255) ** (1.0/gamma) img_gamma = cv2.LUT(img, gamma_cvt) #暗くするにはgamma < 1 gamma = 0.4 gamma_cvt = np.zeros((256, 1), dtype=np.uint8) for i in range(256): gamma_cvt[i][0] = 255 * (float(i)/255) ** (1.0/gamma) img_gamma = cv2.LUT(img, gamma_cvt)
以上、簡単な操作の一部でした。