今回は画像から人間の顔認識をしてみます!
たくさんの人数がいる画像でも成功しましたので見ていきましょう!!!
結構実装は簡単で、OpenCVはいろいろと使い道が多いのでこれを機に使ってみましょう!
ライブラリのインストール
OpenCVというライブラリをインストールします。
公式のgithubからカスケード識別器の学習済みファイルをダウンロードします。
顔認識で使うファイルは「haarcascade_frontalface_default.xml」ですが、あとから他のファイルも使うのでまとめてダウンロードします。
opencv/data/haarcascades at master · opencv/opencv · GitHub
プログラムの実装
プログラムの実装は他のサイトのコードを参考にしています。
基本的にXMLファイル、元となる画像、出力先のパスを書き換えて、pythonを実行すれば成功します。
xml_path はダウンロードしたカスケード識別器を置いているパスです。
base_image_path は顔認識させたい画像のパスです。
output_image_path は顔認識させた後の画像の出力先のパスです。
import cv2 # それぞれのパスを指定してください。 xml_path = "haarcascade_frontalface_default.xmlを置いているパス" base_image_path = "顔認識させたい画像を置いているパス" output_image_path = "顔認識させた画像を出力させたいパス" face_classifier = cv2.CascadeClassifier(xml_path) img = cv2.imread(base_image_path) color = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) targets = face_classifier.detectMultiScale(color) for x, y, w, h in targets: cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 4) cv2.imwrite(output_image_path, img)
画像から顔認証させる
今回の画像は無料サイトから適当に持ってきます。
今回はこちらのたくさんの人の顔がある画像を使ってみます。
この画像を実装した顔認識の処理にかけてみると
・
・・
・・・
・・・・
・・・・・
おお!!!
成功しました!!!
たくさん顔認識されてる!!!
猫の顔認証もできる!?
実はこのOpenCVライブラリでは猫の識別もできるみたいです。
そのため、ライブラリのインストールのところで別のXMLファイルも用意しておきました。
ちょっと猫の画像も次回やってみましょう!
【OpenCV】Pythonで猫の画像から顔認識させてみたら全くの別の動物が。。。 - アルの備忘録www.matematetea.com
Pythonで音声認識が気になる方はこちらもどうぞ!
PythonでJuliusを動かして音声認識システム作ってみた!
【日本語】Pythonでspeech recognitionを使って音声認識させてみる!
Pythonでテキストの音声読み上げ機能で寿限無を読み上げてみました。
【pyttsx3】Pythonの音声読み上げ機能で「寿限無」を読ませてみた!
最後まで読んでいただき、ありがとうございます!