Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1743 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  openCV

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

openCV

n°1367815
elo29
Posté le 16-05-2006 à 16:38:36  profilanswer
 

Bonjour!!
 
 
Je dois, pour mon projet de fin d'études, récupérer et stocker en format bmp toutes les images filmées par ma caméra lorsque je lance un enregistrement.Je m'affranchis donc de la vidéo avi.
 
Je viens de découvrir opencv qui me semble tout à fait adapté à ce que je désire faire. Cependant, j'ai quelques soucis à comprenrde les codes qui sont en exemple dans la doc opencv.  
 
Si quelqu'un connait le code qui fait exactement cela, car je pense que ça existe, je veux bien un peu d'aide s'il vous plaît.
 
Merci d'avance pour toute réponse qui m'aidera à avancer. :)  
 

mood
Publicité
Posté le 16-05-2006 à 16:38:36  profilanswer
 

n°1367853
yobbas
The Unit
Posté le 16-05-2006 à 16:58:48  profilanswer
 

Bonjour,  
J'utilise également OpenCV (pour mon projet de fin d'études itou). Pour l'instant je n'utilise pas encore les possibilités vidéo de cette librairie, je fais uniquement du traitement d'images. Mais je pense que tu trouveras ton bonheur avec l'un de ces liens, http://groups.yahoo.com/group/OpenCV/ ou http://opencvlibrary.sourceforge.net/ . Seul bémol, il faut que tu maitrises la langue de Shakespeare, car il n'y a pas à ma connaissance de tuto OpenCV en français. Bonne continuation

n°1367865
elo29
Posté le 16-05-2006 à 17:04:32  profilanswer
 

Je regarde ça, Merci beaucoup!!!

n°1369356
elo29
Posté le 18-05-2006 à 09:34:51  profilanswer
 

Bonjour!!
 
Ces liens m'ont bien aidés, j'ai pu programmé la capture et l'enregistrement d'une vidéo provenant de ma caméra. Maintenant je dois enregistrer les images en .bmp dans un dossier au lieu de les écrire dans un .avi.  
Penses-tu cela possible avec cvsaveimage, je n'arrive pas à bien l'appliquer...
 
Merci

n°1370283
pfuitt
Posté le 19-05-2006 à 09:30:41  profilanswer
 

oui cela est possible avec cvSaveImage + le path de sauvegarde.
le path doit etre valide (pas de dossier manquant) et l'extension précise à la fonction sous quel format on sauve l'image.  
En ce qui concerne la sauvegarde en jpg, on ne peut pas choisir le taux de compression (il est fixé à 75 ...de mémoire) à moins de modifier les codes des lib puis de les recompiler...ce qui à mon avis dépasse surement le but du projet
 
@ pluche


---------------
Fight with the best, die with the rest ...
n°1371865
elo29
Posté le 22-05-2006 à 09:14:44  profilanswer
 

ok merci, je regarde ça!!

n°1371918
elo29
Posté le 22-05-2006 à 10:32:13  profilanswer
 

Salut!!
 
Voici le code que j'ai réalisé pour le moment mais je ne vois pas comment y appliquer le cvSaveImage, peux -tu me mettre sur la voie stp?
 
Merci
 
 
#pragma comment (lib,"highgui.lib" )
 
#include "cv.h"
#include "highgui.h"
#include <stdio.h>
 
 
// Capture vidéo (reconnaissance caméra)
//A simple camera capture framework
int main(){
 
 int isColor=1;
 int fps=15;
 int frameW=640;
 int frameH=480;
 
 IplImage* img=0;
 int nFrames=50;
 int i;
 
 CvCapture* capture=cvCaptureFromCAM(CV_CAP_ANY);
 if(capture){
  printf("OK!!\n" );
 }else{
  fprintf(stderr,"ERROR: capture is NULL \n" );
  getchar();
  return -1;
 }
 
 //Create a window in which the captured images will be presented
 cvNamedWindow("Capture caméra", CV_WINDOW_AUTOSIZE);
 
 //Show the image captured from the camera in the window and repeat
 while(1){
 
 
  //Get one frame
  IplImage* frame=cvQueryFrame(capture);
  if(!frame){
   fprintf(stderr,"ERROR:frame is null...\n" );
   getchar();
   break;
  }
  cvShowImage("Capture caméra",frame);
  int c=cvWaitKey(50);
   
// Quand on presse ESC, l'enregistrement commence et prend le nombre d'images nFrames indiqué.
  //If ESC key pressed, c=0x10001B under OpenCV 0.9.7 (linux version),
  //remove higher bits using AND operator
  if((c&255) == 27)
   break;
 
CvVideoWriter* writer = cvCreateVideoWriter("c:\\out.avi", CV_FOURCC('M','J','P','G'),fps,cvSize(frameW,frameH),isColor);
   
 
for(i=0;i<nFrames;i++){
 cvGrabFrame (capture);//Capture a frame
 img=cvRetrieveFrame(capture);//retrieve the captured frame
 cvWriteFrame(writer, img);//add the frame to the file
}
 
 
 }
 
 //Release the capture device housekeeping
 cvReleaseCapture(&capture);
 cvDestroyWindow("Capture caméra" );
 cvReleaseVideoWriter(&writer);
 
 
 return 0;
}

n°1372453
pfuitt
Posté le 22-05-2006 à 18:50:30  profilanswer
 

bonjour,
mis a part que je ne saisis pas bien ce que fais ton code (il sauve systematiquement 50 image en mjpg ???)  
voila ce que je 'ferais' :
je remplace le bloc :
 
CvVideoWriter* writer = cvCreateVideoWriter("c:\\out.avi", CV_FOURCC('M','J','P','G'),fps,cvSize(frameW,frameH),isColor);
   
 
for(i=0;i<nFrames;i++){
 cvGrabFrame (capture);//Capture a frame
 img=cvRetrieveFrame(capture);//retrieve the captured frame
 cvWriteFrame(writer, img);//add the frame to the file
}  
par le bloc
  if((c&255) == 's')//! on sauve si on appuie sur 's'
  {
   img=cvRetrieveFrame(capture);//recupere la derniere image et construit img
   cvSaveImage( "c:\\pipo.jpg", img);//sauve img à la racine sous le joli nom de pipo.jpg
  }  
 
bon là tu ecrases à chaque fois la derniere image, cela se palit en faisant un tit incrément à chaque fois que tu appuies sur 's' et en concatenant, mais bon...là je vais pas te prendre pour un neuneu...c'est juste pour te montrer "l'esprit" :)
 
addendum : le taux de compression est fixé à 90 dans la lib.
si tu as besoin d'autres details  
 
@ pluche

n°1372455
pfuitt
Posté le 22-05-2006 à 18:50:59  profilanswer
 

oups... si tu as besoin d'autres details mail moi !
desolé j'ai deux mains gauches et dix pouces ce soir

n°1372809
elo29
Posté le 23-05-2006 à 09:29:18  profilanswer
 

ok Merci pour la réponse en tout cas!!!!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  openCV

 

Sujets relatifs
OpenCVAfficher une image d'openCV dans un pixmap de QT
utilisation de la lib opencvOpenCv FaceDetection
Equivalent OpenCV Javaconversion de type en openCV
calibration de caméra avec openCV 
Plus de sujets relatifs à : openCV


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR