Motion – это полезный инструмент, который может превратить вашу обычную веб-камеру в камеру наблюдения. Для этого он отслеживает сигнал с веб-камеры и делает скриншоты и видео, когда обнаруживает движение. Здесь мы покажем вам, как установить Motion и настроить веб-камеру с функцией обнаружения движения в Ubuntu Linux.
Установка сервера Motion
Программа Motion по умолчанию включена в официальный репозиторий Ubuntu. Это означает, что вы можете установить эту программу через менеджер пакетов apt:
sudo apt install motion v4l-utils
Примечание: Хотя в этой статье мы рассматриваем Ubuntu, Motion будет работать и в большинстве дистрибутивов Linux.
Убедитесь, что ваш сервер Motion работает правильно, открыв подсказку программы:
motion -h
Настройка Motion для вашей системы
Прежде чем мы начнем настраивать Motion, нам нужно скопировать файл конфигурации в папку Home, чтобы у нас была чистая резервная копия оригинала. Откройте терминал и скопируйте файл конфигурации в папку Home:
cp /etc/motion/motion.conf ~/motion.conf.backup
Откройте оригинальный конфиг с помощью вашего любимого текстового редактора:
sudo nano /etc/motion/motion.conf
Одна из самых простых настроек, которые вы можете сделать для своего сервера Motion, – это изменить качество выводимого изображения и видео. По умолчанию сервер устанавливает разрешение 640×480, что может быть слишком мало для современных веб-камер.
Чтобы изменить это, выполните следующую команду в новом сеансе терминала, чтобы проверить доступные разрешения для вашей камеры:
sudo v4l2-ctl -d /dev/video0 --list-formats-ext

Вернитесь к конфигурации Motion, прокрутите вниз до категории «Image Processing», затем найдите переменные width
и height
.

Установите соответствующие значения для нужного вам разрешения. В моем случае я хочу запустить Motion в разрешении 1280×720, поэтому я ввожу «1280» в качестве ширины и «720» в качестве высоты.

Установите значение framerate
на частоту кадров, с которой вы хотите снимать видео. По умолчанию установлено значение «15», но вы можете снизить его, чтобы сэкономить место на диске.

Прокрутите вниз до категории «Вывод изображения», затем установите значение переменной picture_output
на «on». Это позволит Motion захватывать как изображение, так и видео с веб-камеры.

Изменение местоположения сохранения по умолчанию
Еще одна настройка, которую вы можете сделать для своего сервера Motion, – это изменить место сохранения данных. Это может быть полезно, если вы хотите экспортировать отснятые видео и изображения в смонтированную удаленную директорию или в облачное хранилище типа Dropbox.
Для начала перейдите или создайте каталог, в который вы хотите сохранить данные:
sudo mkdir /motion/data
Установите право собственности на каталог «motion:adm»:
sudo chown -R motion:adm /motion/data
Убедитесь, что весь путь к вашей директории доступен для чтения всем пользователям:
sudo chmod -R 755 /motion/data
Вернитесь в конфигурацию Motion, найдите переменную target_dir
, затем установите ее значение на полный путь к вашей директории.

Настройка параметров обнаружения в движении
Функция Motion работает по принципу разницы между текущей видеозаписью и той, что была за мгновение до нее. Если программа находит достаточную разницу между ними, она классифицирует это как «движение» и записывает видео этого события.
В настоящее время Motion считает, что разницы в 1500 пикселей достаточно для классификации «движения». Хотя это позволяет легко обнаруживать движение для большинства веб-камер, для камер с высоким разрешением это может быть слишком чувствительно.
Чтобы уменьшить этот параметр, перейдите в категорию «Обнаружение движения», а затем увеличьте значение переменной threshold
. Я считаю, что 5500 пикселей достаточно, чтобы Motion не записывала ненужные мелкие движения с веб-камеры.

Вы также можете добавить переменную threshold_maximum
, чтобы установить предельную разницу, которую Motion считает «движением». Это полезно, если ваша веб-камера смотрит на оживленное место, и вы хотите, чтобы она работала только тогда, когда активность меньше.
Если вы не уверены в значениях threshold
и threshold_maximum
для вашей веб-камеры, вы можете позволить Motion настроить их за вас. Для этого добавьте переменную threshold_tune
и установите для нее значение «on».

Наконец, вы можете настроить Motion на запись моментов до и после обнаружения движения. Для этого перейдите к переменным pre_capture
и post_capture
и установите их значения на количество дополнительных кадров, которые вы хотите сохранить.

Включение веб-интерфейса Motion
Сервер Motion поставляется с веб-интерфейсом, который позволяет удаленно наблюдать за веб-камерой. Чтобы включить его, перейдите в раздел конфига «Webcontrol», затем установите значение переменной webcontrol_localhost
на «off».
Прокрутите вниз до раздела «Live stream», затем установите значение переменной stream_localhost
на «off».

Примечание: В веб-интерфейсе Motion нет проверок подлинности. Поэтому любой, кто знает адрес вашего сервера Motion, может смотреть на вашу веб-камеру и управлять службой.
Удаленное управление сохраненными записями
Как я уже говорил, лучше всего сохранять изображения в папке Dropbox, чтобы иметь к ним доступ в любом месте. Однако если вы предпочитаете загружать изображения на свой собственный файловый сервер (по FTP), вы можете использовать команду wput
для загрузки изображений:
sudo apt install wput
Откройте конфигурацию вашего сервера Motion, затем вставьте следующие строки кода в конец файла:
on_picture_save wput ftp://YOUR-USERNAME:YOUR-PASSWORD@YOUR-SERVER-ADDRESS %f on_movie_end wput ftp://YOUR-USERNAME:YOUR-PASSWORD@YOUR-SERVER-ADDRESS %f

Запуск и тестирование сервера Motion Server
Обязательно сохраните файл конфигурации Motion, а затем выполните следующую команду для запуска сервера:
sudo systemctl enable --now motion.service
Убедитесь, что сервер работает правильно, открыв веб-браузер и перейдя на IP-адрес вашей машины, за которым следует :8080.

В результате откроется веб-страница, на которой будет показана текущая видеозапись с вашей веб-камеры, а также меню, содержащее дополнительные действия для вашего сервера. Например, вы можете нажать Action -> Snapshot, чтобы сделать снимок с веб-камеры.

Проверьте, обнаруживает ли Motion и записывает ли движение с веб-камеры, пронеся объект перед камерой и проверив содержимое каталога target_dir
.

Существует также прямая трансляция, которую можно открыть с помощью медиаплеера или веб-браузера. Чтобы получить доступ к нему, перейдите по IP-адресу вашего компьютера, за которым следует :8081.

Превращение обычной веб-камеры в систему обнаружения движения – это лишь одна из вещей, которые вы можете сделать с камерами в Linux. Узнайте больше о некоторых из лучших приложений для веб-камер в Linux, которые вы можете установить и опробовать уже сегодня.
Комментарии (0)