«前の日記(2007年12月18日) 最新 次の日記(2007年12月20日)» 編集

ema log


2007年12月19日 画像処理 [長年日記]

_ [Programming][TGM] OpenCV で動画の解析してみようと思う - 初日

まじめなことをやる気が出なかったので、http://jp.youtube.com/watch?v=jwC544Z37qo みたいな動画のカウンタ部分の認識をさせてみようと思った。

指が冷たくて動かなかったので、ついに暖房を投入。

やりたいこと

LEVEL と TIME の数字をフレーム毎に取得する。手動だと死ぬ。

数字さえとれればOK。最悪スタート地点さえ分かれば、時間はフレーム数で代用できる。消去ライン数は LEVEL の進行で逆算可能なはず。

ただし、スタッフロールを含めると、フィールドの認識が必要。Future Works。

難しいところ

  • 動画毎に、数字の位置は微妙に違う
  • たまに、2P 側でやっている場合があるがこれは無視したら簡単になる?
  • 画質は様々

方針

  • 最初の1枚目のフレームから2つカウンタの1を検出
  • 後は、その情報をもとに、数字を抜き出してマッチングしたらOK?

経過

とりあえず、OpenCV インストールして、VisualStuido 設定して、しこしこコーディング。というか、サンプルをコピペして再構築しただけ。

手元の自分の DivX エンコードした avi は OpenCV でうまく読めなかったので、OpenCVでAVI読み込みに失敗するときは [王様の箱庭] を読んで、非圧縮 AVI に書き出して回避。

いくつかサンプルを動かしてみて遊んでみる。

C++ 忘れてる><。言語仕様は忘れないけど、ライブラリはすぐ忘れる。

スナップショットを撮って、レベルとタイムをテンプレートマッチングで検出しようとしたけど、背景領域が大きくて、背景とマッチングしてしまう。文字だけ切り出してもほかの部分との方が相関が高い。なぜだ。

続く、、、のか?