OpenCVで動画を読み込んで、1フレ-ム毎に画像として出力したいです。
#define _CRT_SECURE_NO_WARNINGS #define _USE_MATH_DEFINES #include <iostream> #include <string> #include <cmath> #include <opencv2/opencv.hpp> using namespace std; using namespace cv; string win_src = "src"; string win_dst = "dst"; int main() { Mat img; VideoCapture cap("video.MP4");//入力動画 int max_frame = cap.get(CV_CAP_PROP_FRAME_COUNT); //フレーム数 for (int i = 0; i<max_frame; i++) { cap >> img; //1フレーム分取り出してimgに保持させる imwrite("picture.png", img); } system("pause");//キー入力待ち return 0; }
によって、動画をpicture.pngとして出力できることはわかりました。
しかしこれでは毎回picture.pngに上書きされてしまいます。
どうすれば別のファイル?といいますかpicture1.png,picture2.png,,,,のように、画像を出力できるのでしょうか。よろしくお願いいたします。
読み込みが質問ではなく書き出しが質問ですね。もう回答が得られていますが。
回答1件
あなたの回答
tips
プレビュー