Accueil > Open Source-Logiciel Libre , sécurité , services publics et Services > [Linux] Video Cams: facile que de boire un verre d'eau, Merci en mouvement!

[Linux] Video Cams: facile que de boire un verre d'eau, Merci à la motion!

Si vous êtes intéressés à être mis à jour sur les nouveaux articles publiés sur ce site s'abonner au flux RSS . Merci de votre visite!

J'ai toujours été intrigué par la possibilité de l'utilisation non conventionnelle de ma webcam. Honnêtement depuis que j'ai acheté il ya presque un an, j'ai utilisé jusqu'à 3 ou 4 reprises. Donc, je me suis dit que c'était peut-être le cas en utilisant la webcam pour un usage différent de la vidéo et parce que j'ai souvent rester loin de mon bureau qui reste allumé même en mon absence, n'est pas tout à fait tort idée de vidéo-surveillance . Bien sûr, avec Linux, vous pouvez tout faire, l'impensable ... juste un peu "de temps encore et un peu d'expérience et vous avez terminé. Aujourd'hui, nous parlons de la motion , un logiciel capable de détecter les mouvements dans une source vidéo (comme une webcam ) et directeur de fichiers vidéo et images.

Je sais que beaucoup de gens que vous connaissez le mouvement. Mais d'après ce que j'ai vu autour du filet, il ya des guides en italien que globalement expliquer l'utilisation et la configuration. C'est pourquoi j'ai décidé d'écrire quelques mots à cet égard.

Qui a déjà lu mes articles sait que je me référerai à l'installation du mouvement sur Debian et Ubuntu, mais comme d'habitude, vous pouvez jouer ce que j'écris sur d'autres distributions. En outre, je considère que vous avez une webcam installée et fonctionne. Si non, cherchez le guide pour faire fonctionner votre webcam sous Linux ... voici une liste des appareils compatibles avec Linux ou non.

Inziamo installation comme d'habitude avec le terminal root:

# Apt-get install motion

Cela permet d'installer la nécessité d'utiliser la motion. En fait, dès maintenant, si votre webcam fonctionne, Motion inizerà pour capturer les images et vous trouverez dans le répertoire / tmp / mouvement une myriade d'images JPG. C'est précisément pour cette raison, il est bon de configurer le logiciel pour l'adapter à nos besoins.

Nous allons, en premier lieu, en désactivant le logiciel. D'un type de terminal root la commande suivante:

# / Etc / init.d / stop-motion

Maintenant nous sommes prêts à modifier le fichier "/ etc / motion / motion.conf» et l'un des fichiers "/ etc/motion/thread1.conf" et suiv. Le premier fichier contient toutes les directives nécessaires mentionnées dans le fonctionnement du mouvement et nécessaires pour le fonctionnement d'une webcam unique. Les fichiers "threadX.conf" (où, au lieu de X est un numéro de série) doit être édité institution unique et exclusif, où vous avez plus d'une webcam pour être connecté à votre station de surveillance : D Rappelez-vous ... l'équipe de développement du mouvement ne doit jamais utiliser de caméras USB, sauf si vous avez spéciale carte PCI capable de gérer seul individu "prises" USB. En fait, une webcam USB est extrêmement probable que le canal saturé sur lequel il est attaché! Mais aller de l'avant.

Editez le fichier "motion.conf" avec notre éditeur de texte favori. Je vais utiliser vim, mais vous pouvez utiliser le plus commode ou Gedit Kedit remplacement de la commande, après le mot "vim" avec l'éditeur que vous aimez:

# Vim / etc / motion / motion.conf

Ouvre un fichier très long et plein d'options. Certains d'entre eux est préférable de laisser tel quel, sauf si vous savez exactement ce que vous faites. Je vais vous montrer comment modifier certaines options pour enregistrer des images dans un répertoire plus pratique à consulter, la façon de configurer certains paramètres d'enregistrement et, enfin, la façon d'utiliser l'interface Web avec nom d'utilisateur et mot de passe protégeant (pas activé par défaut !).

Nous commençons avec la Motion configurer en tant que démon. Ensuite, nous avons ouvert l'une des premières lignes comme suit:

# Démarrer en daemon (arrière plan) et le mode terminal de sortie (par défaut: désactivé)
démon sur

Continuer de changer le répertoire où le mouvement va créer son pid. Cela vous sera utile lorsque vous démarrez le logiciel de l'utilisateur simple et non comme normalement se passe lorsque l'ordinateur démarre:

# Fichier pour stocker l'ID de processus, également appelé DIP fichier. (Par défaut: non défini)
process_id_file / votre / home / motion.pid

Dirigez-vous vers la section du fichier de configuration appelé "Options du périphérique de capture" et modifier les lignes de la définition de votre webcam

# Largeur de l'image (en pixels). Plage valide: Appareil photo à charge, par défaut: 352
largeur 640

# Hauteur de l'image (en pixels). Plage valide: Appareil photo à charge, par défaut: 288
hauteur de 480

Je suis entré une valeur de 640 × 480 parce que mon appareil photo prend des images de 1 mégapixel. Évidemment, vous devez spécifier les valeurs de votre webcam. Vous pouvez trouver le site du fabricant ou sur les instructions des manuels :) Si vous nous trouver, laisser tout ce que vous trouverez!

Un peu plus bas est Lari sur le nombre d'images par seconde à capturer. La valeur par défaut troveretre valeur est "2". Personnellement, je préfère le lever à 5 :)

# Le nombre maximum d'images à être capturé par seconde.
# Valeurs possibles: 2-100. Par défaut: 100 (pratiquement pas de limite).
framerate 5

Si vous avez une webcam et d'un réseau de caméra USB, détection de mouvement de ses flux de données indiquant l'adresse où est le flux lui-même ou les images capturées. Pour le faire fonctionner, vous devez modifier ces lignes:

# URL à utiliser si vous utilisez une caméra réseau, la taille sera détectée (http:// ftp:// incl ou fichier :///)
# Doit être une URL qui renvoie unique images JPEG ou un flux mjpeg premières. Défaut: Non défini
; Valeur Netcam_url

# Nom d'utilisateur et mot de passe pour la caméra réseau (seulement si nécessaire). Par défaut: non défini
# La syntaxe est: mot de passe
; Valeur Netcam_userpass

Évidemment, vous devez supprimer le symbole de la virgule "et entrez les valeurs correctes! Peu de temps après, nous pouvons ajuster la luminosité, le contraste et la saturation à être utilisés dans l'acquisition des images. Ces options ont une raison d'exister que si l'appareil n'a pas d'auto-détection, comme les webcams moins cher (comme dans mon cas!). J'ai choisi les valeurs après quelques «éléments de preuve, qui est pourquoi je vous conseille de tester les personnes les plus sympathiques à vous:

auto_brightness off

# Plage valide 0-255, par défaut 0 = désactivé
luminosité 24e

# Plage valide 0-255, par défaut 0 = désactivé
Contraste 25

# Plage valide 0-255, par défaut 0 = désactivé
saturation 5

Le reste des options pour le moment, laissons-les aux valeurs par défaut. Nous passons maintenant dans la section intitulée "FFMPEG options connexes." Si vous avez un ordinateur trop vieux pour activer la compression sur les cadres de voler à travers l'utilisation de ffmpeg:

# Utiliser ffmpeg pour encoder les films MPEG en temps réel (par défaut: désactivé)
ffmpeg_cap_new sur

Puis nous continuons coulissant dans le fichier de configuration jusqu'à ce que vous descendez sur les lignes où le codage Dausa pour créer le film pour terminer si la came saisit parfois le mouvement en face de lui. Par défaut, le film sera créé swf. Je préfère utiliser quelque chose de différent et en fait j'ai demandé motion visant à créer un film AVI :)

# Codec utilisé par de ffmpeg pour la compression vidéo.

ffmpeg_video_codec mpeg1

Dans les sections suivantes de motion.conf pouvez configurer la façon dont les fichiers doivent être enregistrés des images et des fichiers vidéo. Personnellement je suis parti tout défaut, le droit d'établir à un moment plus tard, si quelque chose modifiée en dernier lieu. Le seul paramètre qui a été modifiée sur le répertoire pour enregistrer les fichiers. Par défaut, il est réglé sur "/ tmp / mouvement." Néanmoins, j'ai aimé et j'ai créé un dossier dans ma maison:

$ Mkdir ~ / motion

C'est ce que je puis inséré dans le fichier de configuration en changeant la motion par défaut:

# Répertoire de base cible pour les photos et le film
# Recommandé d'utiliser un chemin absolu. (Par défaut: le répertoire courant)
target_dir / home / Zeno / motion

Maintenant pour le nom d'utilisateur et mot de passe de configuration pour l'interface web. Comme dit précédemment, nous pouvons contrôler le mouvement au travers d'une interface web simple et minimale. Mais qui serait accessible à toute personne ayant accès à notre ordinateur, car il n'est pas protégé par un mot de passe. Depuis que nous n'aimons pas cela, entrez les paramètres de mots de passe. Allons dans la configuration de l'appareil de motion intitulée «HTTP Control" et modifiez la ligne qui nous intéresse comme suit:

Authentification # pour le contrôle basé sur HTTP. nom d'utilisateur Syntaxe: mot de passe
# Par défaut: pas défini (handicapés)
control_authentication VOSTRO_USERNAME: VOSTRA_PASSWORD

Maintien de la configuration, nous découvrons quelque chose d'intéressant: vous pouvez mettre en mouvement de sorte que quand elle détecte un mouvement dire à notre ordinateur pour effectuer une action. Imaginez quelles mesures pourraient être prises? Qu'en est-il une belle e-mail? Ou peut-être un SMS? Vous pouvez le faire en modifiant ces lignes:

# Commande à exécuter Lorsqu'un événement démarre. (Par défaut: aucun)
# Un événement débute à la première motion détectée après une période d'absence de mouvement défini par Gap
; Valeur On_event_start

# Commande à exécuter Quand un événement se termine après une période d'absence de mouvement
# (Par défaut: aucun). La période d'absence de mouvement est défini par écart option.
; Valeur On_event_end

l'ajout d'une commande à exécuter sur "<commande> on_event_start" sera, par exemple, a envoyé un e-mail lorsqu'un mouvement est détecté tôt webcam et d'un courriel subséquent nous l'envoyer quand le mouvement se termine! La limite de cette vous pouvez faire est dictée uniquement par votre imagination!

La dernière partie du fichier de configuration sur l'utilisation éventuelle d'une base de données pour stocker des images, très utile si volesimo faire un système de vidéo surveillance réelle, qui doit être stocké beaucoup de photos et très rapide. Pourtant, les dernières lignes motion.conf utilisée pour déterminer les configurations de plus loin que la première webcam. Dans ce dernier cas, il est essentiel threadX.conf modifier le fichier, une pour chaque caméra. Son montage est simple et intuitive. Sachez que dans Debian et Ubuntu exemples de fichiers sont déjà présents dans le répertoire "/ etc / motion / threadX.conf" et il y aura assez de les modifier!

Maintenant, nous sommes prêts à faire la touche finale à lancer manuellement le début du mouvement et l'empêcher de s'exécuter automatiquement à chaque démarrage. Nous commençons avec les «insérer notre groupe d'utilisateurs en mouvement afin de permettre à l'utilisateur d'utiliser le même mouvement, ses commandes et ses config d'origine et nous vient de changer. Ouvrez un terminal root (si pas déjà ouvert) et tapez la commande suivante:

# Adduser VOSTRO_USER motion

Notez que pour que les changements prennent effet il aura à redémarrer le serveur X. Vous pouvez faire dès maintenant ou se terminer avant de suivre le guide, puis redémarrer le serveur graphique. Vous choisissez!

Maintenant, nous éliminons l'exécution automatique de mouvement lorsque vous allumez votre ordinateur:

# Update-rc.d-f retirer la motion

A partir de maintenant nous allons déterminer le moment d'initier le mouvement et la vidéo, par exemple, notre PC : D Tous avec une commande de terminal simple et facile à utiliser simple:

Proposition $

Lorsque le démon est démarré, la gestion de la motion peut être présentée par l'interface web. Ouvrez votre navigateur et le point à cette adresse:

http://localhost:8080

Vous aurez accès à une motion de minimalissima interface avec laquelle vous pouvez éditer le fichier de configuration, en notant les paramètres actuels et en particulier pour démarrer ou pour interrompre la détection de mouvement. Aussi, vous pouvez suivre en temps réel ce que votre webcam est saisie interface web plus. Est-ce que votre navigateur allez à cette adresse d'autres:

http://localhost:8081

Et nous avons fait. CCTV Profitez de votre ordinateur lorsque vous êtes absent!

Vous avez aimé cet article? Abonnez-vous à notre newsletter pour être informé des mises à jour blog:

Votre email:

Articles connexes:

  1. [Logiciel Linux] Envoyer à un rappel: plus jamais oublier un anniversaire! Qu'est-ce que je parle aujourd'hui est un seul logiciel ...

Articles connexes générée par le plugin Yet Another Related Posts .

  1. mauro21
    Août 30, 2008 à 23:05 | # 1

    c'est à dire qu'il semble aller ... Je commence par la commande de mouvement, puis, lorsque "quelque chose se passe" Je dis enregistrer l'image en mouvement ... donc tout est ok ... mais après que vous remorquer le démon ...

    Pourquoi?

  2. Stefano
    Août 31, 2008 at 12:53 | # 2

    @ Mauro21:
    Bonjour Mauro,
    nous devons essayer de comprendre ce que le problème procédant de cette façon:
    1) modifier le fichier / etc / motion / motion.conf afin de ne pas exécuter le logiciel en mode démon, puis modifiez la ligne "démon sur" off en démon;

    2) redémarrer le mouvement à partir d'un terminal et lire la sortie. Vous pouvez parier que s'affiche sur le terminal en raison de la fermeture.

    Quoi qu'il en soit, je voudrais savoir si le démon feuilles d'un dossier d'images simples. Dans ce cas, c'est une question de droits d'écriture sur le répertoire où vous avez enregistré l'image et le film :) Juste un simple chmod 777 dir sur la référence et le démon qui fonctionne bien :)

    Faites-moi savoir!

  3. MCV
    Septembre 1, 2008 à 10:46 | # 3

    Bonjour, Moi aussi j'ai le même problème ... Mauro
    la console donne ce résultat:

    motion
    [0] Traitement thread 0 - fichier de configuration / etc / motion / motion.conf
    [0] Motion 3.2.9 en route
    [0] Motion va mode démon
    motion luca @ Trinité-64: ~ $
    [0] Traitement thread 0 - fichier de configuration / etc / motion / motion.conf
    [0] Motion 3.2.9 en route
    [0] Motion va mode démon
    luca @ Trinité-64: ~ $ sudo geany / etc / motion / motion.conf
    motion luca @ Trinité-64: ~ $
    [0] Traitement thread 0 - fichier de configuration / etc / motion / motion.conf
    [0] Motion 3.2.9 en route
    [0] ffmpeg LIBAVCODEC_BUILD LIBAVFORMAT_BUILD 3352064 3344896
    [0] Thread 1 est dans / etc / motion / motion.conf
    [1] Thread 1 a commencé
    [1] cap.driver: "uvcvideo"
    [1] cap.card: "portable Webcam intégrée"
    [1] cap.bus_info: "0000:00:1 d.7"
    [1] = 0 × 04000001 cap.capabilities
    [1] - VIDEO_CAPTURE
    [1] - Streaming
    [1] palettes en charge:
    [1] 0: MJPG (MJPEG)
    [1] 1: YUYV (YUV 4:2:2 (YUYV))
    [0] motion-httpd/3.2.9 cours d'exécution, d'accepter les connexions
    [0] motion-httpd: en attente des données sur le port TCP 8080
    [A] Test YUYV palette (640 × 480)
    [1] Utilisation de la palette YUYV (640 × 480) 614 400 1280 sizeimage bytesperlines colorimétrique 00000008
    [1] constaté que le contrôle 0 × 00980900, «Luminosité», la gamme 0,200
    [1] «Luminosité», par défaut de 90, en cours 90
    [1] constaté que le contrôle 0 × 00980901 "Contraste", la gamme 5,50
    [1] «Contraste», par défaut, 30, courant 30
    [1] constaté que le contrôle 0 × 00980902, "Saturation", 0.100
    [1] "Saturation", par défaut 64, actuel 64
    [1] constaté que le contrôle 0 × 00980903 "Hue", intervalle 0.255
    [1] "Hue", par défaut 0, courant 0
    [1] constaté que le contrôle 0 × 00980910, "Gamma", la gamme 1,4
    [1] "Gamma", par défaut 2, courant 2
    [1] constaté que le contrôle 0 × 08000000, "Backlight Compensation", comprise entre 0,3
    [1] «Backlight Compensation", par défaut 3, actuelle 3
    [1] constaté que le contrôle 0 × 08000001, "Power Line Fréquence", comprise entre 0,2
    [1] "Power Line Fréquence", par défaut 2, courant 2
    de l'information [1] mmap:
    [1] = 4 cadres
    [1] 0 = longueur 614400
    [1] 1 longueur = 614400
    [1] 2 = longueur 614400
    [1] 3 = longueur 614400
    [1] Utilisation de V4L2
    [1] Server started webcam cours d'eau dans le port 8081
    [1] *** mpeg1 de soutien pour les vidéos normales *** a été réduite
    [1] Erreur ffopen_open création (nouveau) le fichier [/ home/aaa/motion/01-20080901103520]: Invalid argument
    [1] du fichier de type 1 enregistré: / home/aaa/motion/01-20080901103520-01.jpg
    [1] Fil sortie
    [0] httpd - Finition: Succès
    [0] Fermeture httpd
    [0] Motion fin

    dernière chose que j'ai fait une copie de l'article à cette adresse: http://linux.cividini.org/blog/2008/09/videosorveglianza-con-webcam-motion/

  4. MCV
    Septembre 1, 2008 à 10:50 | # 4

    edit: le problème est dans l'encodage vidéo, en lui apportant de swf plus de problèmes!

    Merci pour votre aide!

  5. Stefano
    Septembre 1, 2008 à 12:51 | # 5

    @ MCV:
    Merci pour l'écriture sur la façon de résoudre l'erreur :) Comme vous pouvez le voir simplement en lisant la sortie de la motion de comprendre que ...

    [1] *** mpeg1 de soutien pour les vidéos normales *** a été réduite
    [1] Erreur ffopen_open création (nouveau) le fichier [/ home/aaa/motion/01-20080901103520]: Invalid argument
    [1] du fichier de type 1 enregistré: / home/aaa/motion/01-20080901103520-01.jpg
    [1] Fil sortie

    :)

  6. mauro21
    Septembre 1, 2008 à 12:52 | # 6

    J'ai aussi retrouvé en mettant swf ... parfait ...
    autre chose, mais comment voulez-vous faire faire quelque chose quand quelque chose se passe "(mail amndare type, un son, etc)?

    Merci

  7. Stefano
    Septembre 1, 2008 à 13:51 | # 7

    mauro21 a écrit:

    J'ai aussi retrouvé en mettant swf ... parfait ...
    autre chose, mais comment voulez-vous leur faire faire quelque chose quand quelque chose se passe "(mail amndare type, un son, etc)?
    Merci

    Vous pouvez utiliser deux méthodes. Le premier est ce que j'ai dans la conduite est de mettre deux valeurs de chaîne "on_event_start" et "on_event_end. La seconde méthode consiste à ajouter de la valeur de la chaîne "on_motion_detected. Dans ce dernier cas, vous pouvez, par exemple, invoquer une commande pour lire les fichiers wav lorsqu'un mouvement est détecté.

  8. mauro21
    Septembre 1, 2008 à 13:56 | # 8

    et mais comme je les écris? dans une langue?
    es x x bœuf envoyer un e-mail pour ouvrir un bruit que je fais?

  9. Stefano
    Septembre 1, 2008 à 15:04 | # 9

    mauro21 a écrit:

    et mais comme je les écris? dans une langue?
    es x x bœuf envoyer un e-mail pour ouvrir un bruit que je fais?

    Absolument! Pas de langue! Vous devez entrer une commande exactement comme vous entrez dans un terminal. Par exemple, si je voulais lancer un son WAV vous entrez dans cette chaîne:

    aplay on_motion_detected / home / user / suono.wav

    Évidemment lfile après avoir changé / etc / motion motion.conf mouvement / redémarrage :)

  10. Novembre 1, 2008 à 07:06 | # 10

    Bonjour et félicitations pour votre premier disque, j'ai un domandina. Ayant un espace web illimité et avoir peur de vol Je voudrais mettre les vidéos sur l'espace web. Je n'ai trouvé aucune autre solution que de créer un script simple pour monter le dossier à l'aide curlftpfs Web, puis donner ce répertoire en sortie. Vous avez d'autres options plus «rapide et pratiques? parce que je n'ai pas testé, mais curl m'a toujours donné de grands problèmes avec le montage et souvent tout au long de gouttes. Faites-moi savoir Dado

  11. Stefano
    Novembre 1, 2008 à 19:55 | # 11

    Nut @:
    Bonjour,
    alors de la main, je pense que la réponse que vous prenez est valide. Une autre possibilité dépend beaucoup de ce que vous pouvez faire avec votre espace web. Si vous pouvez y accéder via un shell que vous pourriez faire beaucoup de choses vraiment bien. Un exemple pourrait être de synchroniser le dossier à distance avec les autorités locales afin que le dossier distant est le miroir rsync local ... vous dire quelque chose?

  12. Novembre 2, 2008 à 04:27 | # 12

    Stephen @:
    rsync est certainement utilisé dans le LAN pour synchroniser Firefox, mais j'ai mis en place mon idée et j'ai de bons résultats, de sorte que le site web que j'ai créé un script php UNP (avec copie à la réalité ») que j'ai utilisé comme un indice permet à un liste des fichiers pour voir les photos et la vidéo. Maintenant, j'ai l'habitude de mettre Aruba si je peux écrou shell ... Merci encore

  13. Novembre 2, 2008 à 4:28 | # 13

    «Maintenant, j'ai l'habitude de mettre" .... volonté »que sont la pizza et nous comprenons, mais a voulu informer que vous dites! lol

  14. Stefano
    Novembre 2, 2008 à 4:44 | # 14

    écrou a écrit:

    «Maintenant, j'ai l'habitude de mettre" .... volonté »que sont la pizza et nous comprenons, mais a voulu informer que vous dites! lol

    auhzahzuuazhzuahuaz
    est que cela est beau!
    Si vous Aruba Je suis désolé mais vous n'avez pas shell : ( Sauf si vous avez un VPS :)

  15. Paul
    4 août 2010 à 12:14 | # 15

    Fantastic! Merci, c'est la première fois que je utiliser le terminal, mais vous avez expliqué très bien et je travaille bien avec un Netbook!

  16. Stefano
    4 août 2010 à 14:48 | # 16

    @ Paul:
    Je suis heureux d'être utile ;)

  1. Août 30, 2008 à 13:11 | # 1
  2. Septembre 1, 2008 à 10:41 | # 2