警告:このページは自動(機械)翻訳です。疑問がある場合は、元の英語のドキュメントを参照してください。ご不便をおかけして申し訳ありません。
TrackEye
TrackEyeレビュー
- 技術の名前: TrackEye
- リンク: http://www.codeproject.com/Articles/26897/TrackEye-Real-Time-Tracking-Of-Human-Eyes-Using-a
- 価格: 自由
- 人気: コンペティション「2008年6月のベストC ++ / MFC記事」で受賞者を獲得。
- 最小限の物理的要件: 患者は目を自由に動かせる必要があります。
詳細な説明:
目は人間の顔の最も重要な特徴です。ユーザーとコンピューターのインターフェースでの通信技術としての眼球運動の効果的な使用は、さまざまなアプリケーション分野で位置を見つけることができます。
アイトラッキングとアイの特徴によって提供される情報は、人間とコンピューターの相互作用(HCI)システムでコンピューターと通信する興味深い方法になる可能性があります。そのため、このモチベーションにより、リアルタイムの目特徴追跡ソフトウェアの設計がこのプロジェクトの目的です。
このプロジェクトの目的は、以下の機能を備えたリアルタイムの目機能トラッカーを実装することです。
- スケールと回転の不変性を備えたリアルタイムの顔追跡
- 目の領域を個別に追跡する
- 目の特徴の追跡
- 視線方向検出
- 目の動きを使用したリモートコントロール
TrackEyeを実行および再構築する手順
TrackEye_Executable.zipファイルを抽出します。 TrackEye_636.exeを実行する前に、2つのファイルSampleHUE.jpgおよびSampleEye.jpgをC:\フォルダーにコピーします。これらの2つのファイルは、CAMSHIFTおよびテンプレート一致アルゴリズムに使用されます。
ユーザーがソフトウェアを実行するために従うべき他のステップはありません。 DLLが静的に組み込まれた状態でソフトウェアが構築されたため、DLLの依存関係はありません。
適切な追跡を実行するために行われる設定
顔と目の検出の設定
Under TrackEye Menu --> トラッカー設定。
- 入力ソース:ビデオ
- [ファイルの選択]をクリックし、.. \ Avis \ Sample.aviを選択します
- 顔検出アルゴリズム:Haar顔検出アルゴリズム
- 「目も追跡」チェックボックスをオンにします
- 目検出アルゴリズム:適応PCA
- 「分散チェック」のチェックを外します
- データベースイメージの数:8
- EigenEyesの数:5
- 視空間からの最大許容距離:1200
- 顔の幅/目のテンプレートの幅の比率:0.3
- PCA中に使用するColorSpaceタイプ:CV_RGB2GRAY
- 瞳孔検出の設定
「目を詳細に追跡する」をチェックしてから、「目の瞳孔も検出する」をチェックします。 「パラメーターの調整」ボタンをクリックします。
- 「しきい値」として「120」を入力します
- [設定を保存]をクリックし、[閉じる]をクリックします
- ヘビの設定
「アクティブなヘビを使用して目の境界を示す」をチェックします。 「蛇の設定」ボタンをクリックします。
- 使用するColorSpaceを選択:CV_RGB2GRAY
- 単純なしきい値を選択し、「しきい値」として100を入力します
- [設定を保存]をクリックし、[閉じる]をクリックします
- バックグラウンド
- これまでに目検出に関する多くの作業があり、プロジェクトの前に、実装された方法を決定するために以前の方法が慎重に研究されました。目に関する研究は、以下にリストする2つの主要なカテゴリーに分類できます。
特別な機器ベースのアプローチ
これらのタイプの研究は、軌道上の目の位置に比例するある種の信号を与える必要な機器を使用します。現在使用されているさまざまな方法は、電気眼球運動図法、赤外線眼球運動図法、強膜サーチコイルです。これらのメソッドは完全にプロジェクトから外れています。
画像ベースのアプローチ
画像ベースのアプローチは、画像上で目の検出を実行します。画像ベースの方法のほとんどは、目の特徴を使用して目を検出しようとします。これまでに使用された方法は、知識ベースの方法、機能ベースの方法(色、グラデーション)、単純なテンプレートマッチング、外観の方法です。別の興味深い方法は、幾何学的モデルのエネルギーを最小化することにより、目画像上で幾何学的目テンプレートを照合することに基づく「変形可能なテンプレート照合」です。
TrackEyeの実装
実装されたプロジェクトは、次の3つのコンポーネント上にあります。
- 顔検出:スケール不変の顔検出を実行します
- 目検出:このステップの結果として両目が検出されます
- 目の特徴の抽出:目の特徴は、このステップの最後に抽出されます
- 顔検出
プロジェクトには2つの異なる方法が実装されました。彼らです:
- 連続適応平均シフトアルゴリズム
- ハール顔検出方法
- 連続適応平均シフトアルゴリズム
- 適応平均シフトアルゴリズムは、人間の顔を追跡するために使用され、密度勾配を登って平均シフトアルゴリズムと呼ばれる確率分布のモード(ピーク)を見つけるための堅牢なノンパラメトリック手法に基づいています。ビデオシーケンスで顔が追跡されるため、平均シフトアルゴリズムが変更され、色の確率分布が動的に変化する問題に対処します。アルゴリズムのブロック図を以下に示します:
ハール顔検出法
2番目の顔検出アルゴリズムは、Haar-Like機能で動作する分類器(つまり、Haarのような機能で動作するブーストされた分類器のカスケード)に基づいています。まず、数百の顔のサンプルビューでトレーニングされます。分類器が学習された後、入力画像の関心領域に分類器を適用できます。分類器は、領域に顔が表示される可能性が高い場合は「1」を出力し、そうでない場合は「0」を出力します。画像全体でオブジェクトを検索するには、検索ウィンドウを画像全体に移動し、分類子を使用してすべての場所を確認します。分類器は、目的のオブジェクトをさまざまなサイズで見つけることができるように簡単に「サイズ変更」できるように設計されており、画像自体のサイズ変更よりも効率的です。