web-dev-qa-db-fra.com

Capturez des images en mouvement avec plusieurs webcams

J'essaie de capturer des images quand il y a un mouvement quelconque en utilisant 2 webcams, chacune dirigée vers un angle différent. J'ai commencé à essayer motion mais je commence à croire que ce n'est que pour une seule webcam. Est-ce pour plusieurs? et si non, quel autre terminal ou application graphique GUI est-il à capturer uniquement lorsqu'un mouvement est impliqué à partir de 2 webcams ou plus?

2
Luis Alvarado

Essayer la suggestion d'AbrahamVanHelpsing était une bonne chose. Zoneminder qui existe déjà dans Ubuntu a fonctionné, mais après plusieurs minutes de configuration, il a été configuré. La mauvaise chose est, il n'a pas détecté l'une des webcams, il a seulement jeté un écran noir lors de la vérification. Quoi qu'il en soit, il est recommandé d'utiliser celui-ci car il est plus robuste que le mouvement.

Installez-le avec Sudo apt-get install zoneminder. Les informations de configuration sont dans leur site web .

Mais après avoir jeté un œil dessus, je suis revenu au mouvement parce que j’ai trouvé étrange qu’une application appelée MOTION n’ait pas d’option pour plusieurs webcams. J'avais raison.

Juste au cas où, installer Motion est aussi simple que Sudo apt-get install motion

Dans le fichier /etc/motion/motion.conf, les dernières options concernent plusieurs webcams:

##############################################################
# Thread config files - One for each camera.
# Except if only one camera - You only need this config file.
# If you have more than one camera you MUST define one thread
# config file for each camera in addition to this config file.
##############################################################

# Remember: If you have more than one camera you must have one
# thread file for each camera. E.g. 2 cameras requires 3 files:
# This motion.conf file AND thread1.conf and thread2.conf.
# Only put the options that are unique to each camera in the
# thread config files. 
; thread /usr/local/etc/thread1.conf
; thread /usr/local/etc/thread2.conf    
; thread /usr/local/etc/thread3.conf
; thread /usr/local/etc/thread4.conf

J'ai donc édité les dernières lignes pour ressembler à ceci:

thread /etc/motion/thread1.conf
thread /etc/motion/thread2.conf
; thread /usr/local/etc/thread3.conf
; thread /usr/local/etc/thread4.conf

Notez que j'ai changé l'emplacement du dossier car il n'y a pas de fichiers thread.conf dans /usr/local/etc. Ils se trouvent au même endroit que motion.conf.

Après cela, je devais aller dans chaque fichier thread.conf et le changer pour ce dont j'avais besoin. Il y a 3 options qui devraient être éditées:

videodevice - Doit être réglé sur le /dev utilisé par votre webcam. Pour le savoir, tapez simplement find /dev -name video* dans le terminal. Il devrait vous montrer les webcams que vous avez. Dans mon cas, c'était video0 et video1.

input - Ceci devrait être réglé sur 8 si vous allez utiliser une webcam, sinon utilisez 1 si vous utilisez une carte TV.

target_dir - Il devrait être réglé sur l'emplacement souhaité pour les images capturées.

Enfin, toutes les autres options sont dans le fichier motion.conf comme le serveur Web, le nombre d'images capturées lorsqu'un mouvement est détecté, etc.

Après cela, lancez le mouvement avec Sudo Sudo motion pour commencer la capture.

2
Luis Alvarado