2017/02/03 JaSST’17 Tokyo
先日Deep Learningでラブライブ!キャラを識別するという記事が話題になっていました。この記事で紹介されている SIG2D 2014を知り合いから貸してもらったので参考にしながら、ご注文は機械学習ですか?のDeep Learning版を作ってみました。 Caffeなど必要なソフトのインストール Ubuntu 14.04の場合は過去記事を参照してください。これ以外にもpython-opencvなどを使いますが、依存関係の全ては把握できていないのでエラーが出たら適宜インストールしてください。 データの準備 Deep Learningでは大量の学習データが必要になると言われているので、まずは大量のデータを用意します。参考記事では6000枚のラブライブ画像を使ったということなので対抗して12000枚以上のごちうさ画像を用意したいと思います。それだけのデータを手動で分類するとそれだけで時間が
ただ、WebRTCで顔認識させようとすると遅くてしかたがなかった。 最初は速いこともあるが、10回ぐらい認識をさせるとすぐに遅くなる。 とりあえず、デモ。 そこで、チューニングをしてみることにした。 まず、JavaScriptの定番の高速化を試してみた。 例えば、正の数で使える「Math.floor(x)」を「(x | 0)」に、整数で使える「x * Math.pow(2, y)」を「x << y」にする等。 これで、10~30%高速化できた。 次に、遅くなっている部分を調べたら、Web Workersで分散するための仕組みが遅くなる原因だとわかった。 これは、Web Workersを使わない場合にも影響が出ていた。 じゃあ、Web Workersを使えば速くなるのかといえばその逆で、20倍遅くなっていた。 詳しくは調べてないけど、多分Workerスレッドに処理データを渡す時にJSON化が
C言語を勉強した人がOpenCVを始める取っ掛かりとして使ってもらえれば嬉しいです。配列とか関数は分かるけど、ポインタはちょっと・・・というくらいの人から読めるように書いてみました。 OpenCVとは OpenCVとは画像処理で使える関数がたくさん用意されている関数群(フレームワーク)です。例えばC言語でファイルを読み込むのにfgets()という関数が用意されているように、OpenCVでは画像を読み込むcvLoadImage()という関数が用意されています。勿論、用意されている関数はこれだけではなく、画像をグレースケール化したり画像中から四角形を検出したり、顔を検出したりする関数まで用意されています。 OpenCVでの処理の流れ OpenCVを使ったプログラムの基本的な流れは といった流れになっています。以下では、まず始めにstep1とstep3だけを行うプログラムを作成したあとに徐々に複
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く