Страница 1 из 2

датчик движения на основе IP камеры

Добавлено: Ср июл 09, 2014 6:26 pm
I_I_Imonder
Доброго времени товарищи. Есть хотелка сделать функцию датчика движения на основе камеры (Axis) и прикрутить это к МЖ.
Кто нибудь делал такое?

Re: датчик движения на основе IP камеры

Добавлено: Ср июл 09, 2014 6:35 pm
Vit
Да это не сложно. Смотря какое по вы используете для камеры и есть ли возможность в нем выполнять файл

Re: датчик движения на основе IP камеры

Добавлено: Ср июл 09, 2014 6:53 pm
I_I_Imonder
а без по не обойтись? использую ispy, но тормозит программа жутко..

Re: датчик движения на основе IP камеры

Добавлено: Ср июл 09, 2014 6:59 pm
Vit
I_I_Imonder писал(а):а без по не обойтись? использую ispy, но тормозит программа жутко..
Я тоже ее использую. Написал в личку.

Re: датчик движения на основе IP камеры

Добавлено: Вт окт 21, 2014 7:33 pm
aurodionov
У моего аксис есть тревожные входа и выхода. Их+запись по детектор движения

Re: датчик движения на основе IP камеры

Добавлено: Вт окт 21, 2014 10:26 pm
dmw
У меня обычная usb-камера (logitech c510) + motion (на ubuntu).
При появлении движения (чувствительность и область обнаружения настраивается) сохраняет файл с видео и скриншот первого кадра.
В MD используя модуль Folders (http://smartliving.ru/Main/ModuleWatchfolders) регистрируется факт.

Re: датчик движения на основе IP камеры

Добавлено: Вт окт 21, 2014 11:26 pm
Ivan
Я использую ZoneMinder. Реакцию на движение пока не рализовывал. Только сохранение

Re: датчик движения на основе IP камеры

Добавлено: Ср окт 22, 2014 10:46 am
Dark_Veter
У меня тоже Zoneminder, отправку данных в MDM при обнаружении движения настроил примерно таким скриптом

Код: Выделить всё

#!/usr/bin/env perl
use strict;
use warnings;
use ZoneMinder;
use Switch;
use LWP::Simple;

$| = 1;

my @monitors;
my $dbh = zmDbConnect();
my $sql = "SELECT * FROM Monitors";
my $sth = $dbh->prepare_cached( $sql ) or die( "Can't prepare '$sql': ".$dbh->errstr() );
my $res = $sth->execute() or die( "Can't execute '$sql': ".$sth->errstr() );

while ( my $monitor = $sth->fetchrow_hashref() ) {
    push( @monitors, $monitor );
}

while (1) {
        foreach my $monitor (@monitors) {
                my $monitorState = zmGetMonitorState($monitor);
        sendState($monitor->{Id}, $monitor->{Name}, $monitorState);
        }
        sleep 1;
}

sub sendState {
        my ($monitor_id, $monitor_name, $state) = @_;
        my $time = localtime();
    my $url;

        switch ($state) {
                case 0 { $url = "http://192.168.1.103/objects/?script=test&monitorState=Idle&monitorStateId=0&monitorId=$monitor_id" }
                case 1 { $url = "http://192.168.1.103/objects/?script=test&monitorState=Prealarm&monitorStateId=1&monitorId=$monitor_id" }
                case 2 { $url = "http://192.168.1.103/objects/?script=test&monitorState=Alarm&monitorStateId=2&monitorId=$monitor_id" }
                case 3 { $url = "http://192.168.1.103/objects/?script=test&monitorState=Alert&monitorStateId=3&monitorId=$monitor_id" }
        }
        get($url);
} 
Чувствительность срабатывания настраивал через веб-морду.

Re: датчик движения на основе IP камеры

Добавлено: Ср окт 22, 2014 5:44 pm
Ivan
Спасибо большое за скрипт.

Сегодняшний тест показал что на камеру у меня шёл изернет провод битый (7 проводов работало 1 оборван). Кинутая времянка, показала 100% работу камеры. Буду теперь городить ваш скрипт.

Но есть ещё одно но. У меня дурной прожектор, включается ночью. И потому камера обнаруживает движение

Re: датчик движения на основе IP камеры

Добавлено: Ср окт 22, 2014 9:25 pm
Dark_Veter
Ivan писал(а): Но есть ещё одно но. У меня дурной прожектор, включается ночью. И потому камера обнаруживает движение
Может попробовать с чувствительностью поиграться?