OpenCvを使い、ウェブカメラを用いて、C言語で画像処理のプログラムを作っています。
今やっているプログラムは、
1秒たったら動画から静止画を撮り指定したフォルダにファイル名(file1)として保存
2秒たったら動画から静止画を撮り指定したフォルダファイル名(file2)として保存
・
・
・
10秒たったら動画から静止画を撮り指定したフォルダファイル名(file10)として保存
と、ゆうようなプログラムを作りたいのですが、できなくて困っているのでよかったら教えてください。
画像処理について
Re:画像処理について
動画から静止画をというのはどういう事でしょう?
要するに1秒ごとにカメラの映像をキャプチャしたいのですか?
それならCVにそれ用の関数があります。
CV キャプチャ 保存
などでググればサンプルたくさん出てくると思いますよ。
要するに1秒ごとにカメラの映像をキャプチャしたいのですか?
それならCVにそれ用の関数があります。
CV キャプチャ 保存
などでググればサンプルたくさん出てくると思いますよ。
Re:画像処理について
opencv初心者なので上手く伝えることができないのですが、1秒たつごとにカメラの映像をキャプチャし、それを10秒(10枚)まで保存をするプログラムです。
この文で分かりますかねぇ?
ちなみにググってみたんですが、見つけれませんでした。
この文で分かりますかねぇ?
ちなみにググってみたんですが、見つけれませんでした。
Re:画像処理について
> ちなみにググってみたんですが、見つけれませんでした。
そうですか?沢山出てきましたが・・。
とりあえず、ファイルに書きだすには
int cvSaveImage(
const char* filename, // ファイル名
const CvArr* image // 保存したい IPL イメージ
);
を使います。
使い方は簡単。第一引数にファイル名を書いて、第二引数にIPLイメージを渡せばいいだけです。
しかもファイル形式に応じて自分で変換する必要もなく、ファイルの拡張子から勝手に変換してくれます。
便利ですね~。
対応拡張子一覧
* Windows bitmaps - BMP, DIB;
* JPEG files - JPEG, JPG, JPE;
* Portable Network Graphics - PNG;
* Portable image format - PBM, PGM, PPM;
* Sun rasters - SR, RAS;
* TIFF files - TIFF, TIF;
* OpenEXR HDR images - EXR;
* JPEG 2000 images - jp2.
こちらも参考にして下さい。
HighGUIリファレンスマニュアルより
cvSaveImage
画像をファイルに保存する
int cvSaveImage( const char* filename, const CvArr* image );
filename
ファイル名.
image
保存する画像.
関数 cvSaveImage は,画像を指定したファイルに保存する.画像フォーマットは,filename の拡張子により決定される(cvLoadImage を参照).この関数で保存できるのは,8 ビット 1チャンネル,あるいは 8 ビット3 チャンネル('BGR' の順)画像だけである.フォーマットやデプス,チャンネルの順序などが異なる場合は,保存する前に cvCvtScale と cvCvtColor を使って画像を変換するか,あるいは汎用的な関数 cvSave を利用して XML/YAML フォーマットで保存すること.
そうですか?沢山出てきましたが・・。
とりあえず、ファイルに書きだすには
int cvSaveImage(
const char* filename, // ファイル名
const CvArr* image // 保存したい IPL イメージ
);
を使います。
使い方は簡単。第一引数にファイル名を書いて、第二引数にIPLイメージを渡せばいいだけです。
しかもファイル形式に応じて自分で変換する必要もなく、ファイルの拡張子から勝手に変換してくれます。
便利ですね~。
対応拡張子一覧
* Windows bitmaps - BMP, DIB;
* JPEG files - JPEG, JPG, JPE;
* Portable Network Graphics - PNG;
* Portable image format - PBM, PGM, PPM;
* Sun rasters - SR, RAS;
* TIFF files - TIFF, TIF;
* OpenEXR HDR images - EXR;
* JPEG 2000 images - jp2.
こちらも参考にして下さい。
HighGUIリファレンスマニュアルより
cvSaveImage
画像をファイルに保存する
int cvSaveImage( const char* filename, const CvArr* image );
filename
ファイル名.
image
保存する画像.
関数 cvSaveImage は,画像を指定したファイルに保存する.画像フォーマットは,filename の拡張子により決定される(cvLoadImage を参照).この関数で保存できるのは,8 ビット 1チャンネル,あるいは 8 ビット3 チャンネル('BGR' の順)画像だけである.フォーマットやデプス,チャンネルの順序などが異なる場合は,保存する前に cvCvtScale と cvCvtColor を使って画像を変換するか,あるいは汎用的な関数 cvSave を利用して XML/YAML フォーマットで保存すること.