- Бързо изградете камера за заснемане на движение с Raspberry Pi:
- Персонализиране на настройките за мултимедия в движение:
- Как да получите видео емисията през интернет:
Сигурността е основна грижа в наши дни и днес има много технологии, за да запазите мястото си защитено и наблюдавано. Камерите за видеонаблюдение са много полезни, за да следите къщата или офиса си. Въпреки че цените на тези видове камери са намалени значително от самото им начало, но все пак IP камерите, които имат възможност да изпращат и получават датата по мрежата, са много скъпи. А за True Surveillance камерата трябва да има способността да изпраща емисията си през интернет, така че да може да се гледа от всяка точка на света.
Днес правим много евтина камера за заснемане на движение с помощта на Raspberry Pi и уеб камера. Това е страхотен и много по-евтин инструмент за сигурност, който има много конфигурируеми опции и може да бъде изграден за няколко минути. Тук използваме само Raspberry Pi и USB уеб камера, за да изградим тази камера за заснемане на движение. Имаме инсталирана OS Raspbian Jessie на нашата дъска Raspberry Pi. Трябва да проверите тази статия, за да инсталирате Raspbian OS и да започнете с 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 е свързан с интернет, като използвате LAN или Wi-Fi и след това следвайте стъпките по-долу:
Стъпка 1: Първо изпълнете командата по-долу, за да актуализирате Raspbian OS на Raspberry Pi:
sudo apt-get update
Стъпка 2: След това инсталирайте библиотеката "Motion", като използвате командата по-долу:
sudo apt-get инсталирайте движение
Стъпка 3: Сега задайте Motion daemon на 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
Стъпка 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 web camera QHM500LM), която работи безпроблемно с нашата Raspberry Pi, но можете да използвате и качествена камера за по-добра разделителна способност.
Както ще се покаже в браузъра, можете да използвате всяко устройство, за да гледате емисията, която поддържа уеб браузър като мобилен телефон, таблет и т.н. По-долу е една снимка от мобилния телефон:
Винаги можете да стартирате, спрете, рестартирате и да получите статус на услугата Motion, като използвате по-долу четири команди:
sudo /etc/init.d/motion start sudo /etc/init.d/motion stop sudo service motion движение рестартиране sudo service status движение
или можете да рестартирате Raspberry Pi като стъпка за отстраняване на неизправности, когато е необходимо:
sudo рестартиране
Забележка: Ако сте модел 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 ) или да я зададете на „best“:
output_pictures най-добре
Можете също така да правите моментни снимки на редовни интервали, определени от вас, като използвате опцията по-долу:
# Правете автоматизирана моментна снимка на всеки N секунди (по подразбиране: 0 = деактивирана) snapshot_interval 0
Най-атрактивните функции за мен е видеото на timelapse, това е много добра подредба за красиви видеоклипове на 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
Можете също така да решите как да дефинирате движение и да зададете броя на пикселите или кадрите, които трябва да бъдат променени за откриване на True Motion:
# Праг за брой променени пиксели в изображение, което # задейства засичане на движение (по подразбиране: 1500) праг 1500 # Кадрите на картината трябва да съдържат движение поне посочения брой кадри # в ред, преди да бъдат открити като истинско движение. По подразбиране 1 се откриват всички # движения. Валиден диапазон: 1 до хиляди, препоръчително 1-5 minimum_motion_frames 5
По подразбиране Motions записва регистрационните файлове в 'syslog', но можете да дефинирате специален регистрационен файл за Motion:
# Използвайте файл за запазване на съобщения в дневниците, ако не е дефиниран 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 адрес се предоставя от вашия ISP.
Така че по този начин можем лесно да настроим камера за наблюдение с много ниска цена, като използваме Raspberry Pi и проста уеб камера.