l'enregistrement d'une image de la séquence vidéo à l'aide de opencv2

Newbie question et oui, j'ai passé beaucoup de temps à ressasser les mêmes questions et Réponses avec pas de chance.

Ce que je suis en train de faire est d'enregistrer les images à partir d'un fichier vidéo dans un ordre séquentiel. J'ai réussi à enregistrer une image à l'aide de c et je n'arrive pas à enregistrer les images par la suite. J'ai commencé à l'aide de c++ dans opencv au lieu de c et tout ce que je peux faire est de voir la vidéo et pas d'enregistrer des jpg à partir d'elle.

Je suis en utilisant opencv2.4.4 un sur mac si cela aide.
ci-dessous mon c exemple

#include <stdio.h>
#include <stdlib.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <iostream>

using namespace cv;
using namespace std;

int main (int argc, char** argv)
{
//initializing capture from file
CvCapture * capture = cvCaptureFromAVI ("/example/example.mov");

//Capturing a frame
IplImage* img = 0;
if(!cvGrabFrame(capture))      //capture a frame
{
printf)Could not grab a fram\n");
exit(0);
}
img=cvRerieveFrame(capture);    //retrieve the captured frame

//writing an image to a file
if (!cvSaveImage("/frames/test.jpg", img))
printf("Could not save: %s\n","test.jpg");

//free resources
cvReleaseCapture(&capture);

}

Je vous remercie à l'avance

modifier à la ci-dessus.

J'ai ajouté le code ci-dessus qui donne une image pour être enregistrées avec l'test.jpg et puis se réécrit avec l'image suivante. Comment puis-je dire d'opencv pour ne copie pas sur la dernière image et renommer l'image suivante à test_2.jpg par exemple, test_1.jpg, test_2.jpg et ainsi de suite?

double num_frames = cvGetCaptureProperty (capture, CV_CAP_PROP_FRAME_COUNT);

for (int i = 0; i < (int)num_frames; i++)
{
img = cvQueryFrame(capture);
cvSaveImage("frames/test.jpg", img);
}

cvReleaseCapture(&capture);
}