I am Charmie

メモとログ

OvrVision Pro SDK

タイトル通り,Ovrvision ProのSDKを使ってみようという企画.
簡単にまとめると - SDKをダウンロードすればすぐ動く - 重要な説明が全く書いていないため,自分で新しくプロジェクトを作るのはほぼ不可能 - 買って失敗した

UnityやUnreal Engineから使う,それ以上のことはしないという前提で話を進めた方が良い気がする.
ただ,アプリ起動前に行うべきキャリブレーションの方法が分からんので,結局これはダメなんじゃないかと再々確認したって結論.

前提

Ovrvision Proのスペック

カメラのスペック

記載されている解像度とフレームレートの関係は以下の表の通り.
USB 2.0で接続した時のための解像度・フレームレートも定義されていたが,ここでは割愛. |名称?|解像度|FPS| |---|:---:|---:| |OV_CAM6MP_FULL|2560 x 1920|15| |OV_CAM6MP_FHD|1920 x 1080|30| |OV_CAMHD_FULL|1280 x 960|45| |OV_CAMVR_FULL|960 x 950|60| |OV_CAMVR_WIDEL|1280 x 800|60| |OV_CAMVR_VGA|640 x 480|90| |OV_CAMVR_QVGA|320 x 240|120|

取得データ

16bit画像として得られる.
16bitの内訳は以下の通り. - 上位8bit: 左カメラ画像 - 下位8bit: 右カメラ画像

UVC (USB Video Class)規格を使用している.
何も考えないで画像を見ようとすると,2ch画像みたいに扱われちゃうってことかな.

GPUを使ってデモザイキング,歪み補正を適用した後の画像データを出力する.

事前準備

  1. Visual Studioのインストール
  2. windowsSDKにはサンプルファイルとしてVisual Studio 2013, 2015のソリューションファイルが入っている
  3. ひとまず2015で試してみる

SDKのインストール

書いてある手順に従う.

インストール方法

ファイルを展開するとライブラリとヘッダファイルが保存されている.
インストールは自分で勝手にやれってことっぽい.

SDKの内容

C++用のSDK
ここを見ても参考にならないので,自分でファイルを展開して確認した方が良い.
このファイルを見る限り,内部で使われているOpenCVのバージョンは3.0.0のようだ.
- ライブラリ: bin/x86,bin/x64ディレクトリにそれぞれ32bit用,64bit用のlib・dllファイルが保存されている.toolsディレクトリを見ると,ovrvision.dll, ovrvision.libだけあれば良いのかな? - ヘッダ: includeディレクトリに保存されている. - ovrvision_pro.h: カメラの設定・制御用. - ovrvision_ar.h: arucoを使ったAR用.当たり前のようにOpenCVが使われている. - ovrvision_tracking.h: Hand trackingクラスと書いてあるので,手の位置検出用プログラムっぽい.

このドキュメントを書いた人間はアホなのか. これを見るだけでやる気がなくなってくる.買う前にSDKに目を通しておけば,こんなもん絶対買わなかった.

サンプルプログラムの実行

examples/vs2015/ovrvision.slnをVisual Studioで開いて実行.
無事動いたけど,自分で新しくプロジェクトを作るのはほぼ不可能.
何のファイルが必要なのか全く記載されていない.
これはクソだわ.