ご存知の方も多いと思いますが、riyaというサービスではアップロードした写真の中に顔があるとそれを認識して視覚化したり、物があるとそれを認識してその物に似た商品(場合によってはそのもの)をみつけてくれるという機能があります。一見すごい技術に見えるのですが、実はあるライブラリを使えばこれを簡単に実現することができます。
事の発端は単純に自分が顔認識をやってみたいと思ったからで、そのためのライブラリやソフトウェアがないのかなぁとネットをさまよっていたらこのライブラリに行き着いたというわけです。
そのライブラリは「opencv」といいます。
このopencvは、Intelが開発を行っているものでSourceforgeにてプロジェクトが進められています。このopencvというのは、別に顔認識に特化したライブラリではなく、「OpenCV (Open Source Computer Vision) is a library of programming functions mainly aimed at real time computer vision.」、つまりリアルタイムにコンピュータの画像、映像を扱うためのライブラリで、顔認識はその中の1つの機能となっています。
コンパイルは、Windows・Mac OS X・Linuxのそれぞれで可能となっているようで、自分はdebian上でコンパイルしました。WindowsとMac OS XですとWebCamなどとの連動も簡単に行なうことができるようなので、リアルタイムに顔を認識させるサンプルを見ることもできそうです(未確認)。ちなみにdebian上でのコンパイルは、普通に ./configure && make && sudo make install であっさりいけました。
ソースの中にはサンプルプログラムもありますので、それを参考に顔認識を行なってみたのが以下の写真です。








なんとか購入しました
最高!