のびっこ日記

(*|         |*)v ういっすー。 VRとかコンピュータービジョンとかARとかに興味があります。OpenCVとかPCLとかOculusRiftとかUnityとかKinectとかLeapMotionとか手を出していますが、いろいろドツボにハマっててくじけそう。誰か教えてー

激安3D ウェブカメラ(DS-3DW300)とOpenCVで遊んでみる

だらだら書きます。

f:id:nobikko_nobinobi:20140523003658j:plain

実は前からWebカメラで視差計算してDepthMapを作れたら、Kinectっぽくて楽しいなとか思っていました。

 

↓このminoru3Dってのが前から欲しかったのですが、

http://nma.web.nitech.ac.jp/fukushima/minoru/minoru3D.html

どうやら完売してしまったみたいで、売ってないのです。しょんぼり。(´・ω・`)

構成としてはただ単にWebカメラが横に2つ連なった物のようなので、単純にWebカメラ2つ買ってきて、ものすごく硬いかまぼこ板にでも2つカメラを貼り付けたら似たものが作れそうですが、明らかに手軽では無くなってしまうので、躊躇していました。

 

ところが最近Twitterでお友達になったizmさんに、激安の3D Webカメラが540円で売ってるのを教わったので、買ってみたところ・・。

<(注:アフェリエイト付きです)

確かに3Dで撮れるのですが、付属の専用アプリじゃないと、Side-by-sideで3Dキャプチャができないのです。

このままだとOpenCVとかでいじれないので、DepthMapを取るのは夢のまた夢だったのですが、実はOpenCVやDirectShowアプリなど、3Dでキャプチャしたいアプリで先にキャプチャを開始してから、付属ソフトを後から実行してコントロールすると、なんとなくSide-By-Side(左右の画像が横方向に合成された状態)の画像が撮れることがわかりました。

 

手動でキャプチャを試したのがこちら。

f:id:nobikko_nobinobi:20140523003658j:plain

 

キイロイトリ(うちではぴよちゃんと呼んでいます)が、DirectShowの標準アプリ(AMCAP)でSide-by-sideで撮れてます。

起動する順番は、AMCAPでキャプチャ開始してから、CHUSEI 3D Webcam.exeを起動する感じです。その後、CHUSEI 3D Webcam.exeの一番右側のSideBySideモードを選んで下さい。するとAMCAP側に流れてくるキャプチャの画像がSideBySideになります。

この激安3Dカメラは、Minoruと違って320x480が2つ、Side-by-sideで合成されてからフレームとしてキャプチャされて来るみたい。ちょっと残念なのは、横方向が半分になってしまうところ。

横の解像度で深さ方向が決まるので、これが半分なのはちょっと悲しい。

でも代わりに左右のフレームが同期しているので、動く物体を捉えるには非常に良さそう。

これ利用して、なんか面白いことできないかと試行錯誤中です。。