- Szybko zbuduj kamerę bezpieczeństwa Motion Capture z Raspberry Pi:
- Dostosowywanie ustawień multimediów w ruchu:
- Jak pobrać kanał wideo przez Internet:
W dzisiejszych czasach bezpieczeństwo jest głównym problemem i obecnie istnieje wiele technologii zapewniających bezpieczeństwo i monitorowanie Twojego miejsca. Kamery CCTV są bardzo przydatne, aby mieć oko na swój dom lub biuro. Chociaż ceny tego typu kamer zostały znacznie obniżone od początku ich istnienia, to jednak kamery IP, które mają możliwość wysyłania i odbierania danych przez sieć, są bardzo drogie. A w przypadku True Surveillance kamera musi mieć możliwość wysyłania obrazu przez Internet, aby można go było oglądać z dowolnego miejsca na świecie.
Dziś tworzymy bardzo tanią kamerę do przechwytywania ruchu do monitoringu, używając Raspberry Pi i kamery internetowej. To świetne i bardzo tańsze narzędzie bezpieczeństwa, które ma wiele konfigurowalnych opcji i można je zbudować w kilka minut. Tutaj używamy tylko Raspberry Pi i kamery internetowej USB do budowy tej kamery Motion Capture. Mamy zainstalowany system operacyjny Raspbian Jessie na naszej płycie Raspberry Pi. Powinieneś sprawdzić ten artykuł, aby zainstalować Raspbian OS i rozpocząć pracę z Raspberry Pi.
Tutaj najpierw przejdziemy przez przewodnik szybkiego startu, abyś mógł mieć gotową kamerę monitorującą w ciągu kilku minut ze wszystkimi domyślnymi konfiguracjami, a następnie zagłębimy się w inne szczegóły i opcje konfiguracji, aby dostosować ją do twoich potrzeb.
Ale zanim to nastąpi, powiedzmy coś o Motion (oprogramowaniu do nadzoru), które jest sercem tego projektu. Motion to darmowe oprogramowanie CCTV typu open source do wykrywania ruchu, opracowane dla systemu Linux. Wykrywa ruch i rozpoczyna nagrywanie go. Dzięki `` Motion '' zainstalowanemu w Raspberry Pi możesz w magiczny sposób zamienić Raspberry Pi w kamerę bezpieczeństwa i uzyskać następujące funkcje:
1. Możesz oglądać transmisję wideo na żywo w przeglądarce internetowej, wprowadzając adres IP Pi wraz z portem.
2. Nagrywa i zapisuje wideo za każdym razem, gdy wykryje ruch lub jakiekolwiek zakłócenia w obszarze widoku. Będzie nagrywać wideo do momentu wystąpienia ruchu, a następnie zatrzyma się i zapisze plik, który będzie można obejrzeć później.
3. Potrafi stworzyć piękny film poklatkowy.
4. Może robić zdjęcia w regularnych odstępach czasu lub w przypadku ruchu. Migawki są również zapisywane na dysku do późniejszego wykorzystania.
Oprócz tego ma kilka opcji konfiguracyjnych, które omówimy wkrótce, a także możemy ustawić zdefiniowane przez użytkownika „wyzwalacze” dla niektórych zdarzeń. Motion obsługuje obecnie tylko kamerę USB po wyjęciu z pudełka, jeśli chcesz używać kamery Pi, musisz użyć specjalnej kompilacji Motion.
Szybko zbuduj kamerę bezpieczeństwa Motion Capture z Raspberry Pi:
Tutaj wystarczy uruchomić tylko kilka poleceń, aby rozpocząć pobieranie pierwszego źródła wideo przez sieć. Wcześniej sprawdź, czy Twój Raspberry Pi jest podłączony do Internetu za pomocą sieci LAN lub Wi-Fi, a następnie wykonaj poniższe czynności:
Krok 1: Najpierw uruchom poniższe polecenie, aby zaktualizować system operacyjny Raspbian na Raspberry Pi:
sudo apt-get update
Krok 2: Następnie zainstaluj bibliotekę ` ` Motion '' za pomocą poniższego polecenia:
sudo apt-get install motion
Krok 3: Teraz ustaw demona Motion na tak, edytując plik: / etc / default / motion, aby zawsze działał. Edytuj ten plik za pomocą edytora `` nano '' z `` sudo '', jak podano poniżej:
sudo nano / etc / default / motion
Następnie zapisz plik, naciskając „CTRL + X”, następnie „Y” i Enter.
Krok 4: Teraz musimy ustawić uprawnienia do katalogu docelowego (/ var / lib / motion /), w którym Motion zapisuje wszystkie nagrania wideo i pliki obrazów. Musimy ustawić „Motion” jako właściciela tego katalogu, wydając poniższe polecenie:
sudo chown motion: motion / var / lib / motion /
To uprawnienie jest konieczne, w przeciwnym razie pojawi się poniższy błąd, podczas sprawdzania stanu usługi ruchu za pomocą polecenia: stan ruchu usługi sudo
Krok 5: Teraz już prawie skończyliśmy, musimy tylko zmienić jedną opcję konfiguracji w pliku konfiguracyjnym Motion (/etc/motion/motion.conf ), która jest wyłączona stream_localhost. Musimy wyłączyć to lokalne przesyłanie strumieniowe przez hosta, w przeciwnym razie nie będziemy mogli uzyskać dostępu do źródła wideo w naszej sieci i będzie dostępne tylko z samego Raspberry Pi. Aby to zrobić, edytuj plik konfiguracji ruchu za pomocą edytora „nano” i wyłącz go, jak pokazano poniżej:
sudo nano /etc/motion/motion.conf
Teraz jesteśmy gotowi, aby uzyskać transmisję na żywo z kamery internetowej USB podłączonej do Pi. Po prostu uruchom usługę Motion za pomocą poniższego polecenia i otwórz adres IP swojego Raspberry Pi z portem 8081 w przeglądarce (np. 192.168.1.103:8081):
sudo /etc/init.d/motion start
Zobaczysz transmisję na żywo z kamery internetowej, jak poniżej. Tutaj użyliśmy niedrogiej kamery internetowej USB (kamera internetowa Quantum QHM500LM), która działała bezproblemowo z naszym Raspberry Pi, ale możesz również użyć dobrej jakości kamery dla lepszej rozdzielczości.
Jak pokaże się w przeglądarce, możesz użyć dowolnego urządzenia, aby oglądać kanał, który obsługuje przeglądarkę internetową, taką jak telefon komórkowy, tablet itp. Poniżej znajduje się jedna migawka z telefonu komórkowego:
Zawsze możesz uruchomić, zatrzymać, zrestartować i uzyskać status usługi Motion za pomocą poniższych czterech poleceń:
sudo /etc/init.d/motion start sudo /etc/init.d/motion zatrzymaj ruch usługi sudo uruchom ponownie stan ruchu usługi sudo
lub w razie potrzeby możesz ponownie uruchomić Raspberry Pi jako krok rozwiązywania problemów:
sudo reboot
Uwaga: jeśli jesteś modelem Raspberry Pi poniżej wersji 3, możesz potrzebować klucza Wi-Fi do bezprzewodowego połączenia Raspberry Pi z routerem. Raspberry Pi 3 ma wbudowane Wi-Fi. Tutaj użyliśmy Raspberry Pi 2 Model B z kluczem Wi-Fi.
Dostosowywanie ustawień multimediów w ruchu:
Więc teraz nasza kamera monitorująca działa i działa. Teraz możemy przyjrzeć się kilku bardzo przydatnym opcjom konfiguracji, za pomocą których możemy zoptymalizować ją zgodnie z naszymi potrzebami i uzyskać bardzo imponujące wyniki. W pliku konfiguracji ruchu wszystkie ustawienia są bardzo ładnie wyjaśnione z ich domyślną i ponownie uruchomioną wartością, po prostu sprawdź to za pomocą poniższego polecenia:
sudo nano /etc/motion/motion.conf
Oprócz otrzymywania transmisji na żywo, Motion nagrywa i zapisuje pliki wideo po wykryciu ruchu. Możesz więc dostosować liczbę klatek na sekundę, jakość, szerokość / wysokość przesyłanych strumieniowo wideo. Możesz ustawić wysoką liczbę klatek na sekundę dla filmów w czasie rzeczywistym, ale Twoja sieć musi być wystarczająco szybka dla tego. Poniżej znajdują się wartości, których użyliśmy, możesz je odpowiednio zmienić:
# Szerokość obrazu (piksele). Prawidłowy zakres: zależny od kamery, domyślnie: 352 szerokość 640 # Wysokość obrazu (piksele). Prawidłowy zakres: zależny od kamery, domyślnie: 288 wysokość 480 # Maksymalna liczba klatek do przechwycenia na sekundę. # Prawidłowy zakres: 2-100. Domyślnie: 100 (prawie bez limitu). framerate 50 stream_quality 90
Dobrze będzie zapisać kilka zdjęć przed i po wykryciu ruchu i rozpocząć nagrywanie wideo. Użyj do tego poniższych ustawień:
# Określa liczbę wstępnie przechwyconych (zbuforowanych) obrazów sprzed wykrycia ruchu, które zostaną wyświetlone po wykryciu ruchu. # Zalecany zakres: od 0 do 5 (domyślnie: 0) pre_capture 0 # Liczba klatek do przechwycenia po tym, jak ruch nie jest już wykrywany (domyślnie: 0) post_capture 0
Motion domyślnie wykonuje zbyt wiele zdjęć, gdy wykryje ruch, a otrzymasz tak wiele plików „jpg” dla małego ruchu. Dlatego dobrze będzie albo wyłączyć to ustawienie ( output_pictures off ), albo ustawić je na „best”:
output_pictures best
Możesz także robić migawki w regularnych, zdefiniowanych przez Ciebie odstępach czasu, korzystając z poniższej opcji:
# Wykonuj automatyczną migawkę co N sekund (domyślnie: 0 = wyłączone) snapshot_interval 0
Najbardziej atrakcyjne dla mnie funkcje to wideo poklatkowe, to bardzo dobra aranżacja dla pięknych filmów poklatkowych w bardzo niskich kosztach. Tutaj możesz zdefiniować interwał migawek dla filmu poklatkowego:
# Wartość domyślna 0 = wyłączone - w przeciwnym razie zapisuj klatkę co n-tą sekundę ffmpeg_timelapse 2
Możesz zmienić katalog docelowy, aby zapisać wszystkie nagrane pliki i obrazy, używając „target_dir” i nie zapomnij ustawić „Motion” jako właściciela tego katalogu, jak wyjaśniono wcześniej.
# Docelowy katalog podstawowy dla zdjęć i filmów # Zalecane użycie bezwzględnej ścieżki. (Domyślnie: bieżący katalog roboczy) katalog_docelowy / var / lib / motion
Możesz zmienić port przesyłania strumieniowego w Internecie (domyślnie 8081):
# Serwer mini-http nasłuchuje żądań na tym porcie (domyślnie: 0 = wyłączone) stream_port 8081
Jeśli nie chcesz długiego pliku wideo, możesz poinstruować Motion, aby utworzył kilka klipów o określonym czasie trwania zamiast jednego dużego pliku. Możesz wymienić czas trwania klipów w sekundach (0 oznacza nieskończoność):
# Maksymalna długość filmu w sekundach # Po przekroczeniu wartości tworzony jest nowy plik filmowy. (Domyślnie: 0 = infinite) max_movie_time 30
Możesz także zdecydować, jak zdefiniować ruch i ustawić liczbę pikseli lub ramek, które należy zmienić, aby wykryć True Motion:
# Próg liczby zmienionych pikseli w obrazie, który # wyzwala wykrywanie ruchu (domyślnie: 1500) próg 1500 # Ramki obrazów muszą zawierać ruch co najmniej określoną liczbę klatek w rzędzie, # zanim zostaną wykryte jako prawdziwy ruch. Przy domyślnej wartości 1 wykrywany jest cały ruch #. Prawidłowy zakres: od 1 do tysięcy, zalecane 1-5 minimum_motion_frames 5
Domyślnie Ruchy zapisuje dzienniki w 'syslog', ale możesz zdefiniować dedykowany plik dziennika dla Motion:
# Użyj pliku do zapisania komunikatów dziennika, jeśli nie zdefiniowano stderr i używany jest syslog. (domyślnie: nie zdefiniowano) logfile /tmp/motion.log
Nie zapomnij zapisać i ponownie uruchomić usługi Motion po zmianie jakichkolwiek ustawień. Aby zapisać motion.conf, naciśnij CTRL + X, a następnie Y, a następnie Enter.
Oto kilka typowych ustawień, które można wykorzystać do osiągnięcia dobrych wyników. Ale jeśli jesteś ciekawy, poszukaj więcej pliku konfiguracyjnego i zacznij bawić się ustawieniami. Istnieje wiele opcji ustawiania jasności, kontrastu, szybkości transmisji, wyzwalaczy, uwierzytelniania hasłem i wiele innych.
Jak pobrać kanał wideo przez Internet:
Tutaj monitorowaliśmy obraz z kamery internetowej w sieci lokalnej przy użyciu lokalnego adresu IP Raspberry Pi. Ale jeśli chcesz monitorować to z dowolnego miejsca przez Internet, musisz ustawić przekierowanie portów w routerze / modemie. Zasadniczo musisz przekierować port 80 (używany do HTTP lub Internetu) na lokalny lub prywatny adres IP of you Raspberry Pi (jak (w naszym przypadku 192.168 *). Po przekierowaniu portu wszystkie połączenia przychodzące na port 80 zostaną przekierowane na ten adres lokalny i możesz oglądać transmisję na żywo, wprowadzając swój publiczny adres IP w Internecie za pomocą transmisji strumieniowej port, który ustawiliśmy wcześniej (8081). Każdy router ma inny interfejs użytkownika do konfigurowania przekierowania portów, więc możesz zalogować się do routera (192.168.1.1) i znaleźć odpowiednią opcję. Pamiętaj jednak, że aby uzyskać dostęp do Raspberry Pi przez internet musisz mieć statyczny publiczny adres IP i nie należy go zmieniać przy każdym restarcie modemu.Statyczny adres IP jest dostarczany przez dostawcę usług internetowych.
W ten sposób możemy łatwo skonfigurować bardzo niskobudżetową kamerę monitorującą za pomocą Raspberry Pi i prostej kamery internetowej.