Как настроить веб-камеру с функцией обнаружения движения в Ubuntu
В следующей статье вы узнаете, как установить Motion и настроить веб-камеру с функцией обнаружения движения в Ubuntu Linux.
Установить сервер движения
По умолчанию Motion включен в официальный репозиторий Ubuntu. Это значит, что вы можете установить эту программу через ваш менеджер пакетов apt:
sudo apt install motion v4l-utils
Примечание: в этой статье мы упоминаем Ubuntu, но Motion также будет работать с большинством дистрибутивов Linux.
Убедитесь, что Motion Server работает правильно, открыв справку программы:
движение -h
Настройте движение для системы
Перед началом настройки Motion необходимо скопировать файл конфигурации в домашнюю папку, чтобы иметь чистую резервную копию оригинала. Откройте Терминал и скопируйте файл конфигурации в домашнюю папку:
cp /etc/motion/motion.conf ~/motion.conf.backup
Откройте корневую конфигурацию с помощью вашего любимого редактора:
судо нано /etc/motion/motion.conf
Одной из самых простых настроек, которые вы можете сделать на вашем Motion Server, является изменение качества изображения и видеовыходов. По умолчанию сервер устанавливает разрешение 640×480, что может быть слишком маленьким для современных веб-камер.
Чтобы изменить это, выполните следующую команду в новом терминале, чтобы проверить доступные разрешения для камеры:
sudo v4l2-ctl -d /dev/video0 –list-formats-ext
Вернувшись в конфигурацию движения, прокрутите вниз до категории «Обработка изображений», затем найдите переменные ширины и высоты.
Укажите соответствующие значения для желаемого разрешения. В примере я хочу запустить Motion с разрешением 1280×720, поэтому автор ввел «1280» в качестве ширины и «720» в качестве высоты.
Установите значение частоты кадров на частоту кадров, с которой вы хотите записывать видео. По умолчанию это значение установлено на «15», но вы можете уменьшить это значение, чтобы сэкономить место на диске.
Прокрутите вниз до категории «Выход изображения», затем установите значение переменной picture_output на «on». Это позволит Motion захватывать как изображения, так и видео с веб-камеры.
Изменить место сохранения по умолчанию
Еще одна настройка, которую вы можете сделать в Motion Server, — это изменить место сохранения данных. Это может быть полезно, если вы хотите экспортировать захваченные видео и изображения в смонтированную удаленную папку или облачный сервис хранения, такой как Dropbox.
Для начала перейдите к папке, в которой вы хотите сохранить свои данные, или создайте ее:
sudo mkdir /движение/данные
Установите владельца папки на «motion:adm»:
sudo chown -R движение:adm /движение/данные
Убедитесь, что весь путь к папке доступен для чтения всем пользователям:
sudo chmod -R 755 /движение/данные
Вернитесь в конфигурацию Motion, найдите переменную target_dir, затем задайте для нее значение полного пути в каталоге.
Тонкая настройка параметров обнаружения движения
Движение работает, рассматривая разницу между текущим видеопотоком и потоком непосредственно перед ним. Если программа находит достаточно различий между ними, она классифицирует это как «движение» и записывает видео события.
В настоящее время Motion предполагает, что разница в 1500 пикселей достаточна для классификации как «движение». Хотя это позволяет большинству веб-камер легко обнаружить движение, это может быть слишком чувствительным для камер с более высоким разрешением.
Чтобы устранить эту проблему, перейдите в категорию «Обнаружение движения», а затем увеличьте значение пороговой переменной. 5500 пикселей достаточно, чтобы Motion не регистрировал ненужные мелкие движения с веб-камеры.
Вы также можете добавить переменную threshold_maximum, чтобы задать предел для величины разницы, которую Motion считает «движением». Это полезно, если веб-камера охватывает многолюдную зону, и вы хотите, чтобы она работала только при меньшей активности.
Если вы не уверены в значениях threshold и threshold_maximum для вашей веб-камеры, вы можете позволить Motion настроить их для вас. Для этого добавьте переменную threshold_tune и установите ее на 'on'.
Наконец, вы можете настроить Motion для записи моментов до и после обнаружения движения. Для этого перейдите к переменным pre_capture и post_capture и установите их значения на количество дополнительных кадров, которые вы хотите сохранить.
Включить веб-интерфейс Motion
Motion server поставляется с веб-интерфейсом, который позволяет осуществлять удаленный мониторинг веб-камеры. Чтобы включить эту функцию, перейдите в раздел конфигурации «Webcontrol», затем установите значение переменной webcontrol_localhost на «off».
Прокрутите страницу вниз до раздела «Прямая трансляция», затем установите значение stream_localhost на «off».
Примечание: Motion не имеет никаких проверок для своего веб-интерфейса. Поэтому любой, кто знает адрес вашего сервера Motion, может просматривать веб-камеру и управлять службой.
Управляйте сохраненными фотографиями удаленно
Как упоминалось ранее, лучше всего сохранять изображение в папке Dropbox, чтобы к нему можно было получить доступ откуда угодно. Однако, если вы хотите загрузить изображения на свой собственный файловый сервер (через FTP), вы можете использовать команду wput для загрузки изображений:
sudo apt install wput
Откройте конфигурацию Motion Server, затем вставьте следующие строки кода в конец файла:
on_picture_save wput ftp://ВАШЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ:ВАШ-ПАРОЛЬ@АДРЕС-ВАШЕГО-СЕРВЕРА %f on_movie_end wput ftp://ВАШЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ:ВАШ-ПАРОЛЬ@АДРЕС-ВАШЕГО-СЕРВЕРА %f
Карим Винтерс
Обновление 19 июля 2024 г.