漢字と遊びたくて手認識もどきを書いたよ −− OpenCV & 手認識事始め

漢字と遊べるようにしたいな、ということでプロジェクトをはじめました。

http://www.vbl.kyoto-u.ac.jp/?p=4379
# ひとつだけ変ちくりんなのが・・・ Yes it's my project.あれ、でもよく見ると他にも変わったのあるな・・・

こんな風になるといいなという絵:

漢字と遊ぼう

当初はマーカーを持って触ってる感を出せばいいかなと思っていて、提案書にもそう書いたのですが、マーカーなしの方がかっこよいぞ!と少しがんばってみることに。以前やりかけて放置していた OpenCV にまた手を出すのです。

アメリカで秋発売予定の MicrosoftKinect いいなーと思って、また C# + XNA + PhysX で。emgu という .Net 向の OpenCV ラッパーを使っています。

emguはデリケートなやつぽいですが、OpenCVも含めてごちゃっとしている内に何となく慣れます。でも慣れるまでは泣きそう・・・。ただ、これ OpenCV ならではのデリケートさという気もして、仮に C++ で書いてもメモリ問題など根っこが同じ問題でプギャーってなるんじゃないかな、特に私みたいなガサツな人は(==)

手認識についは以下のウェブページを参考にしました。

こんな感じになりました:

Hand Recognition

まだ指判定はしていないものの、カーブによって手が閉じているか開いているかは判定できそうなので、指を細かく判定する必要はないのかも。あとは、もっと大事な問題として、実世界の画像に遊んでいる様子をかぶせる時は、

  • 顔とか足も入ってくる(顔は顔認識して黒く塗りつぶせばOK?足どうしよw)
  • 手は二本ある
  • 人ひとりだけじゃない

というところを考慮しないといけなくてこっちの方が大事かなと。

しかし、OpenCV たのしいですね。物理エンジン使って神様になった気がした時とは違う感覚ですが、同じくらいたのしい!

そんなこんなの手認識事始めでした。

■ 余談1 OpenCV で作りたいお遊びアプリケーション

今回顔認識でも少し遊んでみて(これは util みたいなのがあるので簡単なものなら数行で書けちゃう)、むっとした顔して仕事をしていると、「笑いなよー」と言ってくれるプログラムを書きたいなと思いました(^^;

■ 余談2 Xbox ほしい

いわゆるゲームはもうあまりする気になれないのですが(だってよっぽど自分の人生の方がベンチャー・・・ry)、Xbox + Kinect は使ってみたい。

Wi-Fi内蔵のスリムな新型「Xbox 360」発表 Kinectは11月発売 - ITmedia NEWS

これ向けにプログラム書いて家に散らばる情報たちを表現したいなと。

MSMS 大好き。