electric_snake | Amonchakai a écrit :
Salut !
Je connais pas bien OpenCV, mais je sais qu'il est possible de faire aussi la partie capture de la vidéo au sein de cette librairie. Ca te permettrai d'avoir un truc qui soit beaucoup plus portable que si tu utilisait DirectShow.
Ici, tu as un bout de de doc : http://www.cs.iit.edu/~agam/cs512/ [...] intro.html
Bon, je pense que tu peux trouver mieux, mais ça expliquait déjà comment faire la capture du flux vidéo (et l'affichage également).
En ce qui concerne le matériel j'ai envis de dire peu importe, c'est le rôle de l'OS de faire une abstraction du matériel utilisé...
voila, bon courrage
|
Alors si OpenCV me permet de tout faire, c'est royal ! Merci à toi pour l'info et l'URL
Citation :
Pour avoir galéré (en stage aussi) avec des webcams logitech, openCV, V4l dans le passé, voici mon conseil :
Prendre une cam firewire. C est un standard bien répandu et correctement implémente, ce qui tend a limiter les comportements inexplicables en terme de framerate par exemple (genre la camera ajuste son temps d exposition automatiquement ou autre, de maniere masquee dans le driver)
Il me semble qu on peut trouver des petites webcams firewire a environ 100 euros : ensuite http://damien.douxchamps.net/ieee1394/libdc1394/ .
Bon tout ca c est pour faire de la recherche et des traitements serieux en aval. Autrement dit, pour perdre le moins de temps possible avec le hardware et les API et se concentrer sur les algos. Si ton projet est de pondre un soft qui va tourner sur un max de configurations, je te conseille de ne meme pas aller voir openCV et de prendre la doc directshow directement (car en plus openCV a plusieurs modules d acquisition, qui de toute facon sous win sont bases sur directX)
|
Je ne vais pas utiliser une web cam mais un flux vidéo s-video. Mon thème de stage a pour objectif la poursuite de deux travaux de thèses visant à améliorer la détection des nerfs en échographie. On me demande de programmer un logiciel de traitement en temps réel de l'échographe. Je dois donc capturer la vidéo en temps réel, appliquer un filtre et afficher à l’écran les images modifiées. La machine est la suivante : http://france.sonosite.com/MicroMAXX/MicroMAXX.php il y a pas mal de sorties (VGA, S-video, composite, USB, Ethernet avec format DICOM, enregistrement sur Compact Flash). Je vais essayer de faire quelques tests avec l’Ethernet mais ce n’est indiqué nul par dans la doc si je peux capturer la vidéo en temps réel. Il semblerait que cela serve uniquement à télécharger les séquences vidéo enregistrées sur l’échographe. A part peut être l’Ethernet, visiblement seuls les sorties VGA, S-video et composite permettent de récupérer le flux vidéo en temps réel.
Voila pourquoi j’ai besoin d’une carte d’acquisition. L’application devra tourner sur 2 ou 3 PC tout au plus.
Citation :
Je n ai pas condamné les modules d acquisition d openCV. Sur un stage court de prototypage d algo ca peut etre valable, mais l argument de la portabilite est relativement limite quand on voit le merdier que sont les drivers de webcams. A l epoque de mon stage quelques cams utilisant l USB Video Class commencaient a sortir, ce qui laissait espérer une progressive uniformisation de tout ca. Je ne sais pas ou ca en est maintenant.
On ne sait toujours pas de quoi retourne ce stage. Possiblement, il est dans une boite qui cherche a déployer un petit jeu utilisant un flux video en entree, auquel cas il a plutot interet a coder ca en directX. Si il est dans un labo de recherche, il est etonnant que les permanents n aient pas de solution de capture pour leur matos et leur environnement de dev. (meme si ca a aussi ete mon cas pendant mon stage dans un labo dont l activite n etait pas historiquement la vision), auquel cas je leur conseille encore une fois de prendre des cams firewire pour minimiser les emmerdements ( puisque c est ce qu utilisent les labos de CV avec qui je bosse ).
|
Je suis dans un labo de recherche universitaire spécialisé en « Human Factors ». C’est la première fois qu’ils veulent effectuer ce type de capture vidéo (via carte d’acquisition). Ils ont déjà réalisés des applications pour d’autres projets avec effectivement des caméras en firewire et à chaque fois C++ a été utilisé avec la lib Open CV. Je n’ai hélas pour le moment pas accès aux sources.
Pensez vous que Open CV soit également approprié pour une capture via une carte d’acquisition ? On m’a également parlé de la lib vfw.h ? Est-elle plus intéressante dans mon cas ?
Merci à tous pour toutes les infos Message édité par electric_snake le 17-06-2008 à 17:02:54
|