|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Sep 2012
Messaggi: 3
|
Selezionare webcam con OpenCv in OSX
Salve a tutti!
Spero di scrivere nella sezione giusta. Devo scrivere un programma in C++ su Mac che usi le librerie Opencv. Come sorgente video devo usare una webcam esterna collegata via USB. Il problema è che non riesco a usare indipendentemente da quale funzione usi (cvCaptureFromCAM cvCreateCameraCapture..) la webcam, riesco solo ad accedere alla built-in. Ho provato così a tentare di accedere alla webcam direttamente da terminale ma non so dove viene elencata in /dev (non è come nel buon vecchio linux /dev/video0). Visto che la webcam mi viene riconosciuta da skype quindi funziona, come faccio ad accederci in qualche modo? Sono a un punto morto da circa una settimana, quindi ogni aiuto è gradito e ben accetto. Ringrazio tutti quelli che mi aiuteranno. Lorenzo |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Quote:
C'e' una funzione gia' pronta all'uso, che ovviamente non ricordo. Pero' l'ho dovuto fare poco tempo fa in Java (usando javacv, il quale e' solo un wrapper delle librerie C. Quindi se java lo fa, a maggior ragione C/C++): Codice:
String[] videoInputs = VideoInputFrameGrabber.getDeviceDescriptions(); Una volta fatto questo tentativo, dai un'occhiata agli esempi di OpenCV: ce ne sono parecchi ed e' probabile che ce ne sia almeno uno che ti permetta di fare il listing delle telecamere collegate, selezionare ed acquisire. Se trovi un esempio del genere sei a cavallo. Tienici informati. E' interessante conoscere qualcuno che lavora con opencv....
__________________
In God we trust; all others bring data |
|
|
|
|
|
|
#3 |
|
Moderatore
Iscritto dal: Nov 2006
Messaggi: 22047
|
hai provato a cercare in /dev essenso osx a base *nix tutte le periferiche dovrebbero avere il device file li
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Feb 2005
Città: Lancusi (SA)
Messaggi: 193
|
Provato con cvCaptureFromCAM(–1)? E cvCaptureFromCAM(0)?
Ho usato abbastanza OpenCV per la tesi dell'università Inviato dal mio Galaxy Nexus con Tapatalk 2 |
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: Sep 2012
Messaggi: 3
|
Ringrazio tutti per le risposte.
Analizzando un problema per volta: guardando in /dev c'è ovviamente di tutto ma non trovo/so quale sia il file della webcam. Provarli uno per volta mi pare un po' troppo, per questo chiedevo se qualcuno mi dicesse come sono indicizzate. Ho avuto delle novità usando la funzione cvCaptureFromCAM(n): ho creato un ciclo in cui faccio andare n da 0 a 1000 per vedere se magari il device mi viene letto in una posizione che non sia la 1 (dato che la 0 p la built-in). In effetti mi trova qualcosa alla posizione 500. Il problema è che quando provo ad accederci direttamente mi arrivano una sfilza di errori "Camera dropped frame!" e il video che mi visualizza è quello della built-in. Una cosa simile mi succede quando con Skype provo a usare la suddetta webcam ma (penso per ragioni di compatibilità) non riesce ad accederci: mi visualizza il video della built-in ma su source rimane selezionata la web esterna. Per risolvere il problema basta che riavii il computer con la webcam inserita Insomma usare osx e web esterna è un po' come stare sulle sabbie mobili però spero di cavarci fuori qualcosa |
|
|
|
|
|
#6 |
|
Junior Member
Iscritto dal: Sep 2012
Messaggi: 3
|
Avrei un altro quesito. Io prima (parecchio tempo fa) ho usato la libreria cvcam per gestire i dati I/O, ora opencv ha smesso di usarla e usa la highgui.
Esiste nella suddetta libreria una funzione che, come diceva sottovento, mi restituisca tutti i dispositivi trovati? Io non l'ho trovata guardando il reference manual e cercando in rete trovavo solo esempi che utilizzano le cvcam... grazie per le risposte!! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:04.




















