1.はじめに
PythonにてOpenCVを用いた画像処理を実施したのでまとめました。
今回はWebアプリを想定しているため、djangoの機能を使用して画像を取り込み、取り込んだ画像をグレースケールに変換してみました。
djangoの使用については、株式会社キカガク殿にて学習した内容を元に作成しました。
2.開発環境
・Windows10
・Python 3.9.12
・opencv-python--headless==4.5.1.48
3.画像の取り込み
djangoの機能を使用して、画像を選択した後取り込むことができるファームを実装しました(今回の説明では割愛します)。
ファームから取り込んだ画像をプログラム上で処理するためcv2.imread()を使用します。下記pathの中身は、ファイル名を指定しています。
import cv2
(省略)
img = cv2.imread(path)
4.グレースケールに変換
画像をグレースケールに変換するためcv2.cvtColor()を使用します。cv2.cvtColor()の引数には、img(上記ファイル名を示します)とcv2.COLOR_BGR2GRAYを指定します。
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
5.結果
下の画像はグレースケールに変換する前と後の画像になります。
無事にグレースケールに変換することができました。
グレースケールに変換することで、ノイズが減り画像処理の誤認識が減らせるそうです。