- Швидко побудуйте камеру зйомки руху з Raspberry Pi:
- Налаштування параметрів медіа в русі:
- Як отримати відеофільм через Інтернет:
Сьогодні безпека є головною проблемою, і сьогодні існує безліч технологій, які забезпечують безпеку і контроль вашого місця. Камери відеоспостереження дуже корисні, щоб стежити за своїм будинком чи офісом. Хоча ціни на ці типи камер значно знизилися з їх початку, але все-таки IP-камери, які мають можливість надсилати та отримувати дату через мережу, дуже дорогі. А для True Surveillance камера повинна мати можливість надсилати свої канали через Інтернет, щоб її можна було спостерігати з будь-якої точки світу.
Сьогодні ми робимо дуже дешеву камеру відеозйомки спостереження за допомогою Raspberry Pi та веб-камери. Це чудовий і дуже дешевий інструмент безпеки, який має безліч налаштованих параметрів і може бути побудований за кілька хвилин. Тут ми використовуємо лише Raspberry Pi та веб-камеру USB для створення цієї камери Motion Capture. На нашій платі Raspberry Pi встановлена ОС Raspbian Jessie. Вам слід переглянути цю статтю, щоб встановити ОС Raspbian та розпочати роботу з Raspberry Pi.
Тут ми спочатку ознайомимося з коротким посібником, щоб ви змогли підготувати свою камеру спостереження за кілька хвилин із усіма конфігураціями за замовчуванням, а після цього ми зануримося в інші деталі та параметри конфігурації, щоб налаштувати її відповідно до ваших потреб.
Але перед цим давайте знати щось про Motion (програмне забезпечення для спостереження), який є суттю цього проекту. Motion - це безкоштовне програмне забезпечення для відеоспостереження з відкритим вихідним кодом, розроблене для Linux. Він виявляє рух і починає записувати його відео. За допомогою програми `` Motion '', встановленої на вашому Raspberry Pi, ви можете чарівним чином перетворити ваш Raspberry Pi на камеру безпеки та отримати такі функції:
1. Ви можете дивитись пряму трансляцію відео у веб-браузері, ввівши IP-адресу Pi разом із портом.
2. Він буде записувати та зберігати Відео щоразу, коли виявить Рух або будь-які порушення в зоні огляду. Він буде продовжувати записувати відео, доки не буде руху, потім зупиниться і збереже файл, який можна буде переглянути пізніше.
3. Він може створити прекрасне відео з Timelapse.
4. Він може робити знімки з регулярним інтервалом або коли відбувається якийсь рух. Знімки також зберігаються на диску для подальшого використання.
Окрім цього, у нього є кілька параметрів конфігурації, які ми обговоримо найближчим часом, і ми також можемо встановити визначені користувачем "тригери" для певних подій. Наразі Motion підтримує лише USB-камеру з коробки, якщо ви хочете використовувати Pi Camera, тоді вам потрібно використовувати спеціальну збірку Motion.
Швидко побудуйте камеру зйомки руху з Raspberry Pi:
Тут вам потрібно виконати лише кілька команд, щоб почати отримувати перший відеопотік по мережі. Перед цим правильно перевірте, чи ваш Raspberry Pi підключений до Інтернету за допомогою локальної мережі або Wi-Fi, а потім виконайте наведені нижче дії.
Крок 1: Спочатку запустіть наведену нижче команду, щоб оновити ОС Raspbian на Raspberry Pi:
sudo apt-get update
Крок 2: Потім встановіть бібліотеку "Motion", скориставшись командою нижче:
sudo apt-get встановити рух
Крок 3: Тепер встановіть для демона Motion значення yes, відредагувавши файл: / etc / default / motion, щоб він завжди працював. Відредагуйте цей файл за допомогою редактора "nano" за допомогою "sudo", як показано нижче:
sudo nano / etc / default / motion
Потім збережіть файл, натиснувши "CTRL + X", потім "Y" та Enter.
Крок 4: Тепер нам потрібно встановити дозвіл для цільового каталогу (/ var / lib / motion /), в якому Motion зберігає всі відеозаписи та файли зображень. Нам потрібно встановити 'Motion' як власника цього каталогу, виконавши команду нижче:
sudo chown motion: motion / var / lib / motion /
Цей дозвіл необхідний, інакше ви отримаєте нижче помилки, коли ви перевіряєте статус служби руху за допомогою цієї команди: sudo service status status
Крок 5: Зараз ми майже закінчили, потрібно лише змінити один параметр конфігурації у файлі конфігурації Motion (/etc/motion/motion.conf ), який вимкнено stream_localhost. Нам потрібно вимкнути потокове потокове передавання з локального хосту, інакше ми не зможемо отримати доступ до каналу відео в нашій мережі, і він буде доступний лише з самого Raspberry Pi. Для цього відредагуйте файл конфігурації руху за допомогою редактора 'nano' та вимкніть його, як показано нижче:
sudo nano /etc/motion/motion.conf
Тепер ми готові отримати готовий канал з веб-камери USB, підключеної до Pi. Просто запустіть службу Motion, використовуючи команду нижче, і відкрийте у своєму браузері IP-адресу Raspberry Pi з портом 8081 (наприклад, 192.168.1.103:8081):
sudo /etc/init.d/motion start
І ви побачите пряму трансляцію з вашої веб-камери, як показано нижче. Тут ми використовували недорогу веб-камеру USB (веб-камера Quantum QHM500LM), яка безперебійно працювала з нашим Raspberry Pi, але ви можете надалі використовувати якісну камеру для кращого дозволу.
Як це відображатиметься в браузері, ви можете використовувати будь-який пристрій для перегляду стрічки, яка підтримує веб-браузер, такий як мобільний, планшетний ПК тощо.
Ви завжди можете запустити, зупинити, перезапустити та отримати статус служби Motion, використовуючи нижче чотирьох команд:
sudo /etc/init.d/motion start sudo /etc/init.d/motion stop sudo service motion restart sudo service status motion
або ви можете перезавантажити Raspberry Pi як крок усунення несправностей, коли це необхідно:
sudo reboot
Примітка: Якщо ви є моделлю Raspberry Pi версії 3, то вам може знадобитися ключ Wi-Fi для бездротового підключення Raspberry Pi до маршрутизатора. Raspberry Pi 3 має вбудований Wi-Fi. Тут ми використали Raspberry Pi 2 Model B із Wi-Fi-ключем.
Налаштування параметрів медіа в русі:
Отже, зараз у нас працює і працює камера спостереження. Тепер ми можемо розглянути деякі дуже корисні варіанти конфігурацій, за допомогою яких ми можемо оптимізувати її відповідно до наших потреб і отримати дуже вражаючі результати. У файлі конфігурації руху всі параметри дуже добре пояснюються за замовчуванням та відновлюваним значенням, просто перевірте це, використовуючи команду нижче:
sudo nano /etc/motion/motion.conf
Окрім отримання живого каналу, Motion записує та зберігає відеофайли, коли виявляє Motion. Таким чином, ви можете налаштувати частоту кадрів, якість, ширину / висоту потокового відео. Ви можете встановити високу частоту кадрів для відео в режимі реального часу, але ваша мережа повинна бути досить швидкою для цього. Нижче наведені значення, які ми використовували, ви можете відповідно їх змінити:
# Ширина зображення (пікселі). Дійсний діапазон: залежить від камери, за замовчуванням: 352 ширина 640 # Висота зображення (пікселі). Дійсний діапазон: Залежно від камери, за замовчуванням: 288 висота 480 # Максимальна кількість кадрів, які слід зробити в секунду. # Дійсний діапазон: 2-100. За замовчуванням: 100 (майже без обмежень). частота кадрів 50 stream_quality 90
Було б добре зберегти кілька фотографій до і після виявлення руху та розпочати запис відео. Для цього використовуйте налаштування нижче:
# Вказує кількість попередньо захоплених (буферизованих) зображень до того, як було виявлено рух #, який буде виведено при виявленні руху. # Рекомендований діапазон: від 0 до 5 (за замовчуванням: 0) pre_capture 0 # Кількість кадрів для захоплення після руху більше не виявляється (за замовчуванням: 0) post_capture 0
За замовчуванням Motion робить занадто багато знімків, коли виявляє Motion, і ви отримаєте стільки файлів "jpg" для невеликого руху. Тож буде добре або вимкнути цей параметр ( output_pictures off ), або встановити його на «найкращий»:
output_pictures найкраще
Ви також можете робити знімки через рівні проміжки часу, визначені Вами, використовуючи опцію нижче:
# Робіть автоматичний знімок кожні N секунд (за замовчуванням: 0 = вимкнено) snapshot_interval 0
Найбільш привабливою функцією для мене є timelapse Video, це дуже хороша композиція для красивих відео timelapse за дуже низькою вартістю. Тут ви можете визначити інтервал для знімків для Timelapse Video:
# Значення за замовчуванням 0 = вимкнено - інакше зберігати кадр кожну N-ту секунду ffmpeg_timelapse 2
Ви можете змінити Каталог цілей, щоб зберегти всі записані файли та зображення, використовуючи 'target_dir' і не забудьте встановити 'Motion' як власника цього каталогу, як пояснювалося раніше.
# Цільовий базовий каталог для фотографій та фільмів # Рекомендовано використовувати абсолютний шлях. (За замовчуванням: поточний робочий каталог) target_dir / var / lib / motion
Ви можете змінити порт веб-трансляції (за замовчуванням 8081):
# Сервер міні-http слухає цей порт для запитів (за замовчуванням: 0 = вимкнено) stream_port 8081
Якщо вам не потрібен довгий відеофайл, тоді ви можете доручити Motion зробити кілька кліпів певної тривалості замість одного великого файлу. Ви можете вказати тривалість кліпів у секундах (0 для нескінченного):
# Максимальна тривалість фільму в секундах # Коли значення перевищено, створюється новий файл фільму. (За замовчуванням: 0 = нескінченний) max_movie_time 30
Ви також можете вирішити, як визначити рух, і встановити кількість пікселів або кадрів, які потрібно змінити для виявлення справжнього руху:
# Поріг кількості змінених пікселів у зображенні, яке # ініціює виявлення руху (за замовчуванням: 1500), поріг 1500 # Кадри зображення повинні містити рух щонайменше вказану кількість кадрів # в ряд, перш ніж вони будуть виявлені як справжній рух. За замовчуванням 1, виявляється весь рух #. Дійсний діапазон: від 1 до тисяч, рекомендовано 1-5 мінімальних_кадрів_5
За замовчуванням Motions зберігає журнали в 'syslog', але ви можете визначити виділений файл журналу для руху:
# Використовуйте файл для збереження повідомлень журналів, якщо не визначено stderr та syslog. (за замовчуванням: не визначено) logfile /tmp/motion.log
Не забудьте зберегти та перезапустити службу Motion після зміни будь-якого налаштування. Щоб зберегти motion.conf, натисніть CTRL + X, потім Y, а потім Enter.
Отже, це деякі загальні налаштування, які можна використовувати для досягнення хороших результатів. Але якщо вам цікаво, тоді більше копайте файл конфігурації та починайте грати з налаштуваннями. Існує безліч варіантів встановити яскравість, контраст, швидкість передачі даних, тригери, автентифікацію за паролем та багато іншого.
Як отримати відеофільм через Інтернет:
Тут ми відстежували канал веб-камери через локальну мережу за допомогою локальної IP-адреси Raspberry Pi. Але якщо ви хочете відстежувати його з будь-якого місця через Інтернет, вам потрібно встановити переадресацію портів у вашому маршрутизаторі / модемі. В основному вам потрібно переслати порт 80 (який використовується для HTTP або Інтернету) на вашу локальну або приватну IP-адресу з вас Raspberry Pi (наприклад (у нашому випадку (192.168 *). Після переадресації портів усі вхідні підключення до порту 80 будуть переадресовані на цю локальну адресу, і ви можете дивитися прямий ефір, вводячи свою загальнодоступну IP-адресу в Інтернеті з потоковим передаванням порт, який ми встановили раніше (8081). Кожен маршрутизатор має інший користувальницький інтерфейс для налаштування переадресації портів, тому ви можете увійти у свій маршрутизатор (192.168.1.1) і знайти варіант для того самого. Але пам’ятайте, що для доступу до Raspberry Pi через Інтернет потрібно мати статичну загальнодоступну IP-адресу, і її не слід змінювати при кожному перезапуску модему. Статичну IP-адресу надає ваш провайдер.
Ось як ми можемо легко налаштувати дуже дешеву камеру спостереження, використовуючи Raspberry Pi та просту веб-камеру.