Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    16

    [C++] opencv selzionare webcam

    Sto programmando con le librerie opencv con Xcode. Mi servirebbe acquisire video da una webcam che non sia quella built-in del mio macbook. La webcam è connessa via usb e mi viene riconosciuta da skype.

    Usando la funzione cvCaptureFromCAM(0) mi rinosce la built-in, ma se provo a cambiare numero mi da errore (con un programma ricorsivo ho provato da 1 a 100 ma nessun canale mi fornisce dati).

    Leggendo in giro vedo che molti consigliano di disattivare la built-in e di mettere la usb come predefinita. Esiste altro metodo? Nel caso non esistesse, come faccio a cambiare le opzioni di default?

    Grazie!

  2. #2
    Hai provato con cvCreateCameraCapture?

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    16
    Ciao denis, grazie per la risposta. Anche cvCreateCameraCapture mi da gli stessi risultati di cvCaptureFromCAM.

    Vi mando il codice che uso, magari le uso male. Qui ho fatto un ciclo fino a 400 per vedere se magari non sia più avanti di uno. Trova solo la built-in...
    codice:
    #include <iostream> 
    #include "cv.h" 
    #include "highgui.h"
     using namespace cv; 
    using namespace std;   i
    nt main (){ 	
    int n=0; 	
    IplImage* frame; 	
    cvNamedWindow("video",CV_WINDOW_AUTOSIZE); 	
    while(n<400){ 		
    CvCapture *capture=cvCreateCameraCapture(n); 		
    if (!capture) { 			
    cout << "no"<<endl; 		} 		
    else 		
    {frame=cvQueryFrame(capture); 			cvShowImage("video",frame); 			
    cout << "si"<<endl; 		
    }n++;} 	
    return 0;}
    Ma non esiste una funzione che ritorni tutte le webcam nel sistema? Nelle librerie highgui non l'ho trovato ma nelle cvcam mi è parso di capire che c'era... devo downgradare la versione di opencv che ho (attualmente ho la 2.4.0) oppure esistono altri metodi che sfruttano librerie che non conosco?
    Devrò scrivere in futuro un programma più vasto per delle applicazioni che prevedono anche 2 web attaccate al computer, il che vuol dire è importante sapere quale si utilizza. Se sono sulla cattiva strada meglio saperlo subito...

  4. #4
    Stai usando un mac? La periferica com'è elencata in /dev?
    Cosa scriveresti per vedere il video con vlc a riga di comando?

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    16
    Ciao, scusa il ritardo nella risposta.

    Si ho un mac, il problema è che non so dove venga elencata la periferica su /dev. Non esiste dev/video0 come in linux. Cercando in giro ho trovato un po' di notizie scoraggianti. Però se la webcam mi viene rilevata da skype, un metodo per farla leggere esisterà!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.