インタラクションデザイン演習実習a

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
最新のリビジョン両方とも次のリビジョン
インタラクションデザイン演習実習a [2018/05/23 02:36] – [C++における vector型] babaインタラクションデザイン演習実習a [2018/05/23 03:28] – [Abstract] baba
行 90: 行 90:
 論文読解2の最後にユーザの表情を認識するプログラムを実装しましたが,ここで,厳密にその評価を行うと 一つ問題があることがわかります.眉毛の高さや口の開閉等の中にはその変化の度合いが全て均等とは言い切れません. 例えばx,yにおいて(5,5)と(10,6)はxの値が大きく異るように見えますが,実際の計測データ上ではx:5-10,y:5-6 の範囲で取得されているとします.この場合,そのままユークリッド距離等を計算してしまうと,xの変化によって 識別結果が大きく左右されてしまいます.そこで,一般的には正規化処理を行うことでこの問題に対応します.  論文読解2の最後にユーザの表情を認識するプログラムを実装しましたが,ここで,厳密にその評価を行うと 一つ問題があることがわかります.眉毛の高さや口の開閉等の中にはその変化の度合いが全て均等とは言い切れません. 例えばx,yにおいて(5,5)と(10,6)はxの値が大きく異るように見えますが,実際の計測データ上ではx:5-10,y:5-6 の範囲で取得されているとします.この場合,そのままユークリッド距離等を計算してしまうと,xの変化によって 識別結果が大きく左右されてしまいます.そこで,一般的には正規化処理を行うことでこの問題に対応します. 
 先ほどの例では(10,5), (5,6)でしたが,x:5-10, y:5-6であることから,それぞれを正規化すると (1,0), (0,1)となります.これでそれぞれの次元において,値は異なるものの,変化の度合いを揃えることができます. 先ほどの例では(10,5), (5,6)でしたが,x:5-10, y:5-6であることから,それぞれを正規化すると (1,0), (0,1)となります.これでそれぞれの次元において,値は異なるものの,変化の度合いを揃えることができます.
 +
 +===== ScratchInputZ =====
 +  * [[https://www.dropbox.com/sh/5qjy4qwza6mlyg4/AAACBZELBX4zodlhIl3X89Eza?dl=0|雛形]]
 +
 +
 +まずは上記のテンプレートをダウンロードして実行して下さい.ofxGuiとvector型を用いて記述されています. 一緒に読んでプログラムになにが記述されているかを把握します.
 +
 +<wrap danger>課題</wrap>
 +テンプレートを利用して,数種類のスクラッチインプットを識別するプログラムを記述してみましょう. ただし,特徴量として,次を利用してみます.ピークカウント,正規化周波数積分(0-3000),(3000-8000),(10000-20000). また,認識には論文と同様決定木にて実装してください.
 +
 +{{youtube>re8Kh71v8m4?medium}}
 +
 +====== 論文読解4:You Only Look Once: Unified, Real-Time Object Detection ======
 +[[https://arxiv.org/pdf/1506.02640.pdf]]
 +>Joseph Redmon∗, Santosh Divvala∗†, Ross Girshick¶, Ali Farhadi∗†
 +===== Abstract =====
 +We present YOLO, a new approach to object detection. Prior work on object detection repurposes classifiers to per- form detection. Instead, we frame object detection as a re- gression problem to spatially separated bounding boxes and associated class probabilities. A single neural network pre- dicts bounding boxes and class probabilities directly from full images in one evaluation. Since the whole detection pipeline is a single network, it can be optimized end-to-end directly on detection performance.
 +Our unified architecture is extremely fast. Our base YOLO model processes images in real-time at 45 frames per second. A smaller version of the network, Fast YOLO, processes an astounding 155 frames per second while still achieving double the mAP of other real-time detec- tors. Compared to state-of-the-art detection systems, YOLO makes more localization errors but is less likely to predict false positives on background. Finally, YOLO learns very general representations of objects. It outperforms other de- tection methods, including DPM and R-CNN, when gener- alizing from natural images to other domains like artwork.
 +
 +{{youtube>VOC3huqHrss?medium}}
 +
 +ここでは,リアルタイム物体検出で有名なYOLOの論文を読み,実際にYOLOを利用してみます.YOLOそのものを実装しませんが,深層学習におけるネットワークのデザインや意味に関して概略的に学び,それを利用したアプリケーションを作成するところまでを行ってみます.
 +
 +===== YOLO をOpenframeworksで動かす =====
 +