cvCaptureFromAVIとcvQueryFrameで動画から画像を読み込む

CvCapture* cvCaptureFromAVI(const char* filename);

filenameで指定した動画像を読み込み,CvCapture*型で返す

引数

  • filename:const char*型のファイル名.

返り値

  • キャプチャするためのCvCapture型のポインタを返す.

解説

  • filenameの動画像を読み込む.
  • 読み込める動画はシステムに依存する. 早い話がWindows Media Playerで読み込めなかったら読み込めない.
  • ファイルのオープンに成功すると,中身を返すのではなく,CvCapture型のポインタを返す.
  • このCvCapture*型をcvQueryFrameに渡してやると,フレームを1枚1枚取得できる.
  • 関数の名の通り,AVIのみ.MPEGファイルは×.
  • 内部ではffmpegを利用しているので,Windows以外のバージョンではffmpegを最新にしてOpenCV自体をmakeしなおす必要があったりする
  • ffmpegではMPEGファイルをサポートしているので,MPEGが読めないのは何か別の問題かも.

サンプルコード

char       filename[] = "./test.avi";
CvCapture  *capture
IplImage   *image;

capture = cvCaptureFromAVI(filename);
image = cvQueryFrame(capture);

実体ファイル

  • otherlibs/highgui/highgui.h
  • otherlibs/highgui/cvcap.cpp

ジャンル:OpenCV:OpenCV 1.0準拠


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-05-27 (木) 13:32:37 (2738d)