iPhoneアプリのカメラアプリには顔を判別して
写真加工したり、眼鏡をかける画像を置いたりできるものがあります。
わたしも顔検出を使ったアプリを作成したいと思って
作り方を調べていたのですが、その中で「顔検出」と「顔認識」は
別物だということがわかってきました。
「顔検出」は人の顔があるかどうかを調べて
顔の場所を検出することができます。
「顔認識」は人の顔を検出して、さらにその顔から
どの人物かを調べることができます。
iOSではiOS5から「顔検出」ができるAPIが
開発者向けに使えるようになっています。
「CIDetector」で調べると解説ページが
いくつもでてきます。
iOSでは「CIDetector」を使えば簡単に
「顔検出」を使ったアプリを作ることができることが
わかりました。
問題は「顔認識」の方です。
「CIDetector」では顔の位置は検出できますが
目の形や口の形を調べることはできません。
調べてみた結果、「顔認識」をするためには
「OpenCV」を使うと良いようです。
■OpenCVの参考サイト
OpenCV for iOSの使い方
http://qiita.com/shu223/items/3ff48a8bd6edd910e780
CocoaPodsとOpenCV 2.4.6で始める画像処理 for iOS
http://www.casleyconsulting.co.jp/blog-engineer/iphone/cocoapods%E3%81%A8opencv-2-4-6%E3%81%A7%E5%A7%8B%E3%82%81%E3%82%8B%E7%94%BB%E5%83%8F%E5%87%A6%E7%90%86-for-ios/
アプリ開発をしながら学ぶ,iOSのためのOpenCV 1
http://orzup.blogspot.jp/2013/05/iosopencv.html
【opencv2.framework】iOSアプリでもOpenCVを使いたい【Xcode4.5.1】
http://reiji1020.hatenablog.com/entry/2012/11/18/165804
iPhone + OpenCV で顔認識
http://crocell01.blog18.fc2.com/blog-entry-328.html