Je veux créer une application simple dans openCV qui capture la vidéo de la caméra et la stocke dans un fichier. Le problème est:OpenCV, capturer à partir de la caméra et enregistrer dans le fichier
1- comment accéder à la fréquence d'image de mon appareil photo. cvGetCaptureProperty() renvoie toujours une valeur FPS de zéro.
2- comment contrôler le temps où la capture se s'il vous plaît, à savoir comment limiter le temps de capture à 10 secondes par exemple ...
ici est mon code
void main(){
CvCapture *capture = cvCaptureFromCAM(0);
int width = (int)cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH);
int height = (int)cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_HEIGHT);
CvVideoWriter *writer = cvCreateVideoWriter("myCamCapture.avi", -1, 30, cvSize(width, height));
cvNamedWindow("d", CV_WINDOW_AUTOSIZE);
IplImage *frame = 0;
while(1)
{
frame = cvQueryFrame(capture);
cvShowImage("d",frame);
cvWriteFrame(writer, frame);
char c = cvWaitKey(30);
if(c == 27) break;
}
}
merci vous à l'avance
quand j'écris la ligne de code écrit que je reçois fps = 0, notez que je suis la capture à partir d'un appareil photo .... et regarde ma mise à jour de poste pour voir le code que je suis en train d'exécuter le –
fichier résultant a un taux de trame plus élevé que ce que j'ai vu sur la came –
c'est possible alors qu'une partie des images source sont enregistrées plusieurs fois. Mais comme la compression compense cela, vous ne devriez pas avoir d'inconvénients. – Atmocreations