サンプルデモ

サンプルデモの起動方法

$(CTRMW_HGR_ROOT)/sampledemos ディレクトリに移動し、omake を実行してください。
$(CTRMW_HGR_ROOT)/sampledemos/HGRLibDemo/images/CTR-TS.Process.MPCore.fast ( or small )/Development/HGRLibDemo.cci に実行ファイルが作成されます。

概要

HGRLibDemoではカメラから入力した画像をHGRライブラリで認識処理し、結果を表示するGUIアプリケーションです。
上部ディスプレイには各種Windowを表示し、下部ディスプレイには入力画像と認識結果を表示しています。

操作方法

上側ディスプレイに表示されているWindowは選択されている場合にタイトル部分が青色で描画され、最前面に表示されています。
L/Rボタンで選択Windowを変更し、「Menu」Windowが選択されている場合には、上下ボタンで項目を選択しA/Bボタンで値を変更することができます。
また、変更された値は即座に反映されます。

上/下ボタン 「Menu」Windowが選択されている場合、カーソル位置を上下に変更します。
Aボタン 「Menu」Windowが選択されている場合、カーソルで選択されている項目の選択と変更を行います。
Bボタン 「Menu」Windowが選択されている場合、カーソルで選択されている項目の値を変更します。
L/R ボタン 選択Windowを切り替えます。
Yボタン アプリケーションを終了します。

各Windowの内容

開始時に「Start up」Windowが表示され、処理が開始されるとその他のWindowが表示されます。
Start up Window アプリケーションを開始時に表示されます。
処理サイズをVGA (640x480)かQVGA (320 x 240)で選択し、Startを選択すると処理が開始します。
Menu Window ライブラリやカメラ等の各種設定を行うことができます。
Debug Timer Window それぞれの処理に対しての処理時間を確認することができます。
左から順に、処理タイトル名、処理時間(ミリ秒)、全体での割合を表示しています。
また、全体での割合が10%を超える処理は赤字で表示しています。
Result Window HGRライブラリの認識結果を確認することができます。
feanumには指認識本数を表示し、認識に成功した場合には各オブジェクトの値を表示しています。
左から番号、指先の座標、方向、長さを表示しています。

「Menu」Windowサブ項目 - 「Setting Application」メニュー
・アプリケーションに関する設定値を変更することができます。
Hand Gesutre ライブラリを使用するか、使用しないかを選択することができます。
ONの場合には毎フレームHGR処理を行い、OFFの場合には何も行いません。
Draw Quality 下Windowに表示されるカメラ画像の描画クオリティを選択します。
1の場合に入力画像をそのまま、2の場合に入力画像を1/2サイズに変更、3の場合には1/4に変更して描画用のテクスチャを作成します。
表示画像が大きい場合には描画精度は高いですが、処理時間が多くかかります。
※この設定で変更されるのは描画のみであり、ライブラリで処理する画像には関係ありません。
Exit 「Main」メニューに戻ります。

「Menu」Window サブ項目 - 「Setting HGRLib」メニュー
・HGRライブラリに対する設定値(HGConfig構造体)の値を変更することができます。
・値の詳細についてはmw::hgr::HGConfig 構造体を参考にしてください。
HG Mode 検出モード値を変更します。
Numb Param 指の認識本数を変更します。
Angle Param 検出方向を変更します。
MinLen Param 指の最小値指を変更します。
MaxLen Param 指の最大値指を変更します。
Exit Mainメニューに戻ります。

「Menu Window」サブ項目 - 「Setting Camera」メニュー
・Hカメラに関する設定値変更することができます。
・値の詳細についてはSDK関数リファレンスのnn::camera::CTR 名前空間を参考にしてください。
Exit 「Main」メニューに戻ります。

「Debug Timer」Window 表示項目
・各処理にかかった時間をミリ秒単位で表示しています。
recv camera バッファから画像を取得するのにかかった時間を表示しています。
create cimg 現在は使用していません。
Proc exec HGRLib認識関数の処理時間を表示しています。
draw disp0 上側ディスプレイの描画時間を表示しています。
create texture 入力画像の表示用テクスチャ作成時間を表示しています。
draw disp1 下側ディスプレイの描画時間を表示しています。
other その他の処理時間を表示しています。
swap buffer 描画の終了待ち時間の処理時間を表示しています。

履歴

2014/05/28
初版