ブログの説明
パソコンやアンドロイドなどの情報を収集しまとめているブログです。

記事内に張られている画像はクリックすると見やすいサイズの画像が表示されるようになっています。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
アクセスカウンター
検索フォーム
カレンダー
10 | 2017/11 | 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

OpenCVを使って複数の静止画から動画にするサンプル(C++)

複数の静止画から動画を作成するサンプルです。
このサンプルではカメラからキャプチャしたものをcv::Mat型に入れていますが、cv::Mat型に入ればなんでも応用可能です。
例えばimreadを使えば大量のjpg画像から動画ファイルを作成することもできます。

#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;

int main()
{
     VideoCapture cap(0); // デフォルトカメラをオープン
    if(!cap.isOpened())  // 成功したかどうかをチェック
        return -1;



     //ビデオファイルのオープンとビデオキャプチャクラスのインスタンス生成
     //VideoCapture cap("video.avi");

     //ウィンドの生成
     namedWindow( "image", CV_WINDOW_AUTOSIZE);

     //ビデオライタクラスのインスタンス生成
     //ファイルファイルの初期化
     //"test1.avi"というファイル名で作成する
	 //フレームレートは10fps
     VideoWriter writer( "test1.avi", CV_FOURCC_DEFAULT, 10, Size(640, 480), true);

     int c;
     while ( true)
     {
           Mat Img;

            //新しいフレームを取得する
           cap >> Img;

            //フレームが空か?
            if (Img.empty()) // 再生終了時にはemptyが設定される
                 break;

            //ウィンドに表示
           imshow( "image", Img);

            //フレームの保存
           writer << Img;

            //イベント待ち。ウィンドに表示させる場合はイベント待ちが必要です。
           c = waitKey(30);
            if( c == 27 ) break;
     }

     return 0;

}

COMMENT

EDIT COMMENT

非公開コメント

最新トラックバック
ブロとも申請フォーム
QLOOKアクセス解析
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。