タイトル通り,Ovrvision ProのSDKを使ってみようという企画.
簡単にまとめると
- SDKをダウンロードすればすぐ動く
- 重要な説明が全く書いていないため,自分で新しくプロジェクトを作るのはほぼ不可能
- 買って失敗した
UnityやUnreal Engineから使う,それ以上のことはしないという前提で話を進めた方が良い気がする.
ただ,アプリ起動前に行うべきキャリブレーションの方法が分からんので,結局これはダメなんじゃないかと再々確認したって結論.
前提
- Windows 10 64bit
- HTC Viveは設定済み
開発者用ページと公式ドキュメントを見ながら進めていく.
ただ,上述したように重要な説明が欠如しているため,ディレクトリ名から推測して作業をしなければいけない.
精神的にはすごい負担.
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を使ってデモザイキング,歪み補正を適用した後の画像データを出力する.
事前準備
- Visual Studioのインストール
- windows用SDKにはサンプルファイルとしてVisual Studio 2013, 2015のソリューションファイルが入っている
- ひとまず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で開いて実行.
無事動いたけど,自分で新しくプロジェクトを作るのはほぼ不可能.
何のファイルが必要なのか全く記載されていない.
これはクソだわ.