2023.01.05
Motion Gestures社 SDK1.5.1からSDK1.6.0への変更点
WEBマガジン非接触
1. はじめに
2. ego-centric view対応
3. 手の重なり対応
4. センター方向の検出追加
5. バイナリズーム イン/アウト追加
6. スワイプジェスチャーの戻り判定改善
7. ジェスチャー機能およびY軸反転の切り替え
8. その他改善事項
1. はじめに
当社が取り扱っておりますMotion Gestures社のAIベース・ハンドジェスチャー認識ソフトウェアプラットフォームは、数多くのお客様から無償評価用のSDKをお試しいただいております。
このSDKが2022年4月にVersion 1.5.1 (SDK1.5.1)からVersion 1.6.0 (SDK1.6.0)にバージョンアップされました。
SDK1.6.0では様々な改善点・追加機能が含まれています。
今回はSDK1.5.1からSDK1.6.0の変更点を動画を交えてご紹介いたします。
2. ego-centric view対応
SDK1.6.0からego-centric viewを追加対応しました。
※SDK1.5.1でもある程度の認識精度はありましたが、SDK1.6.0から公式対応となりました。
「ego-centric view」とは「一人称視点」のことであり、下記写真のようにカメラ位置が目の視点と同じもので、Head Mounted Display(HMD)での使用を想定しています。
ego-centric viewとして使用する際には、Y軸の反転なし(ミラー表示なし、左右反転なし)として使用するだけでよく、特にモード設定などは不要です。
SDK1.6.0付属のサンプルプログラム実行中であれば、キーボードのfキーを入力することで、Y軸の反転の切り替えが可能です。
ego-centric view時のSDK1.5.1とSDK1.6.0の比較動画を以下に添付します。
左側がSDK1.5.1、右側がSDK1.6.0での動画です。※以下、他の比較動画も同じ。
3. 手の重なり対応
SDK1.5.1までは手が重なったときに片手だけ認識、または両手とも認識できない状態でしたが、SDK1.6.0では下記写真のとおり、両手ともに認識できるように改善されました。
手を重ねた時のSDK1.5.1とSDK1.6.0の比較動画を以下に添付します。
4. センター方向の検出追加
静的ジェスチャー時のOpen Palm・V・Pointing・Fist時において、SDK1.6.0では手をカメラ方向に向けた状態にした際にセンター(Center)として認識するように機能追加されました。
上記と共にてセンター状態で手の平の向き(小指から親指への向き、PD(Palm Direction))も上・下・右・左として表示できるようになりました。
・Open Plamでセンター状態、手の平の向きは上
・Vでセンター状態、手の平の向きは下
・Pointingでセンター状態、手の平の向きは左
・Fistでセンター状態、手の平の向きは右
センター方向時のSDK1.5.1とSDK1.6.0の比較動画を以下に添付します。
5. バイナリズーム イン/アウト追加
動的ジェスチャーのズームジェスチャーに関して、SDK1.5.1での仕様を以下に記載します。
– 親指と人差し指の2本の指をL字時にし、開いていくとズームイン、閉じていくとズームアウトと認識する。
– 開いた角度によって、ズーム量を数値として認識する(閉じた状態で0~開いた状態で100)。
SDK1.6.0では、上記仕様に加え、下記仕様が追加されています。
– 親指と人差し指の2本の指をL字時にし、完全に閉じた状態→完全に開いた状態でズームイン、完全に開いた状態→完全に閉じた状態でズームアウトと認識する(二値化、これをバイナリズームと呼びます)
– 親指と人差し指の2本指だけではなく、3本指(親指+人差し指・中指)、4本指(親指+人差し指・中指・薬指)、すべての指(親指+人差し指・中指・薬指・小指)でもバイナリズームを認識する。
・ズームイン時
・ズームアウト時
ズームジェスチャー時のSDK1.5.1とSDK1.6.0の比較動画を以下に添付します。
6. スワイプジェスチャーの戻り判定改善
動的ジェスチャーのスワイプジェスチャーに関して、SDK1.5.1では、手の位置をすばやく元の位置に戻した際に逆方向のスワイプとして誤認識することが頻繁にありました(例えば、右スワイプにて、手を左→右で右スワイプ認識後、手の位置をすばやく元の位置に戻す(右→左)と、左スワイプとして認識してしまう)。
SDK1.6.0ではこれを改善し、手の位置をすばやく元の位置に戻した際に逆方向のスワイプを無視するようにしています。この改善により、同じ方向のスワイプジェスチャーを繰り返し処理できるようになりました。
スワイプジェスチャー時のSDK1.5.1とSDK1.6.0の比較動画を以下に添付します。
7. ジェスチャー機能の切り替え
SDK1.6.0では静的ジェスチャー、動的ジェスチャー、描画ジェスチャーを有効/無効に切り替える機能が追加されました。
SDK付属のサンプルプログラム実行中であれば、以下のキー入力で切り替えが可能です。
静的ジェスチャー(S)の有効/無効 切り替え:sキー入力
動的ジェスチャー(D)の有効/無効 切り替え:dキー入力
描画ジェスチャー(W)の有効/無効 切り替え:wキー入力
※描画ジェスチャー有効時には必ず動的ジェスチャーは有効となる。
・すべて無効(画面左上にSDWの表記なし)
・静的ジャスチャーのみ有効、他は無効(画面左上にSのみ表記)
・動的ジャスチャーのみ有効、他は無効(画面左上にDのみ表記)
・動的ジャスチャーと描画ジェスチャーが有効、静的ジェスチャーは無効(画面左上にDWの表記)
8. その他改善事項
その他、写真および動画では説明しにくいSDK1.6.0の変更点・改善点について、記載します。
・Windows版SDKではありませんが、Raspberry Pi 4版SDKにおいて、起動時間が短くなりました。
・手の状態の見積もり精度・手の検出精度を改善しました。
・静的ジェスチャーの精度を改善しました。
・動的ジェスチャーの処理を再設計しました。
・動的ジェスチャーにおいて、推奨FPSを60FPSから30FPSに改善しました。
・動的ジェスチャーの認識精度を改善しました。
・連続した動的ジェスチャーの認識率を改善しました。
・プログラム作成にて、SDK1.5.1ではOpwnCVに依存した記述が必要でしたが、SDK1.6.0では専用のAPIを用いて処理できるように改善しました。
今回はMotion Gestures社ハンドジェスチャー認識ソフトウェアのSDK Version1.6.0の変更点についてご紹介しました。
本コラムに関するご質問やご要望等ございましたら、ページ下部のWEBマガジンお問い合わせフォームより、お気軽にお問い合わせください。