DejaVu: Integrated Support for Developing Interactive Camera-Based Programs

'12 IDE NUI ACM UIST '12

本研究の成果物である統合開発環境は、現在のところ公開される予定はありません。

概要

カメラ入力を用いたインタラクティブなアプリケーション開発が一般的になるにつれ、その特徴的な開発フローが既存の統合開発環境に馴染まないことが明らかになってきた。そこで本研究では、統合開発環境の拡張機能DejaVuを提案する。我々は、カメラからの入力が与えられるたびに画像処理のパイプラインが走るプログラムの構造に着目して、既存の統合開発環境に2つのインタフェースCanvasとTimelineを追加した。Canvasインタフェースは、カメラからの入力とプログラム内の処理結果およびウィンドウ出力をリアルタイムかつ継続的に可視化し続ける。Timelineインタフェースは、同データを容易に記録、再生できる。また、ソースコードに変更があった際、記録したカメラ入力を用いて、プログラム内の処理結果とウィンドウ出力を更新できる。DejaVuは、3名のベテランターゲットユーザーによる予備的な試用の結果、好意的に受け入れられた。

本研究は、Microsoft Research Asia HCI Groupにおける3か月強のインターンの成果物である。Xiang CaoおよびSean McDirmidがメンターであった。

DejaVu IDE

我々は以下の2つのインタフェースを、一般的な統合開発環境に追加した。実装のベースにはSharpDevelopを用いたが、VisualStudioやEclipse、Xcodeに同様の機能拡張を施すこともできるだろう。

Canvas

  • 変数のドラッグ&ドロップによる可視化
  • カメラ入力、変数の中身、ウィンドウ出力のリアルタイム更新
  • スケッチによるアノテーション
Canvas

Timeline

  • Canvasインタフェースに可視化されている項目が自動的に表示される
  • カメラ入力、変数の中身、ウィンドウ出力の自動録画と再生
  • ソースコードに変更があった場合に、カメラ入力の録画を用いて変数の中身とウィンドウ出力を自動更新
Timeline

発表文献