OpenCVを利用すると簡単に顔認識が出来る。
スクリプト
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# -*- coding: utf-8 -*- import cv2 #顔検出器をロード face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') #入力画像の読み込み img = cv2.imread('lena_std.jpg') #gray scaleヘ変換 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) #顔検出 faces = face_cascade.detectMultiScale(gray, 1.3, 5) #赤枠 for (x,y,w,h) in faces: cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),2) #結果の表示 cv2.imshow('img',img) cv2.waitKey(0) cv2.destroyAllWindows() |
入力画像(lena_std.jpg)
実行結果
ここで使用している画像は、画像圧縮の評価の際によく利用される標準画像lennaを使用しています。