Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Учет работы ЖД переезда! Учет работы ЖД переезда 
:(
    Опции темы
madbob
Дата 11.3.2013, 07:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 29.8.2010

Репутация: нет
Всего: нет



Здравствуй, всяк это читающий!
Задача поставлена следующая: иметь фотографию рабочего дня ЖД переезда.
На данный момент времени решено поступить следующим образом:
- поставить камеру и наблюдать за световой сигнализацией;
- раз в секунду делать стоп - кадр и считать кол-во красных пикселей в изображении;
- по наличию пульсирующих с частотой приблизительно 1 Герц изменений судить о состоянии сабжа (закрыт - открыт);
- все пишем в базу с сохранением скриншотов (для фиксации фактов);
- оформляем все в виде web странички с формой запроса к базе. На выходе - отчет за период (день, месяц, год);

Пока решается вопрос с владельцем опоры для установки камеры, решил сфотографировать семафор и попробовать распознать режимы.

Код

<?php
  //Загрузка JPG-изображения из файла small.png
  $image = imageCreateFromPng("small.png");
  //Определяем размеры картинки
  $x_dimension = imagesx($image); 
  $y_dimension = imagesy($image); 
  $size_pix_arr = $x_dimension * $y_dimension; //количество пикселей на картинке, для усреднения значений по цветам
  $count_R = 0;
  $count_G = 0;
  $count_B = 0;
  for ($x = 0; $x < $x_dimension; $x++) { 
            for ($y = 0; $y < $y_dimension; $y++) { 
         
                $rgb = imagecolorat($image, $x, $y); 
                $r = ($rgb >> 16) & 0xFF; 
                $g = ($rgb >> 8) & 0xFF; 
                $b = $rgb & 0xFF; 
         $count_R = $count_R + $r;
         $count_G = $count_G + $g;
         $count_B = $count_B + $b;
                
            } 
         
        } 
  //среднее арифметическое RGB цветов на картинке
  $r_sr = intval($count_R/$size_pix_arr);
  $g_sr = intval($count_G/$size_pix_arr);
  $b_sr = intval($count_B/$size_pix_arr);
  // выводим результаты 
  echo "<br />";
  echo "R_all: ".$count_R."<br />";
  echo "G_all: ".$count_G."<br />";
  echo "B_all: ".$count_B."<br />";
  echo "R_srednee: ".$r_sr."<br />";
  echo "G_srednee: ".$g_sr."<br />";
  echo "B_srednee: ".$b_sr."<br />";
  echo "Size_On_X - ". $x_dimension."<br />";
  echo "Size_On_Y - ". $y_dimension."<br />";
  echo "All_Pixels_On_Image - ".$size_pix_arr."<br />";
  
//Освобождаем ресурсы сервера
  imageDestroy($image);
  ?>


По количеству красного цвета можно, с большой вероятностью, судить о том, что переезд закрыт.
Как это все в базу запихать описывать не буду.

Вопрос у меня один: Как делать стоп - кадр с определенной частотой???  smile 

Из браузера выхватывать  получается следующим кодом:

Код

<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://www.geocam.ru/view/cam531x3122_tomsk_webcam.html");


/* еще работает? */
while ($browser->Busy) {
    com_message_pump(4000);
}

$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "Image.png");
include ('Q:\home\192.168.10.25\www\resize_crop.php');
//обрезание всего лишнего с помощью библиотеки resize_crop
crop('Image.png', 'small.png', array(10, 300, -500, -10));
imagedestroy($im);
?>


А как из видеопотока делать? Пока для меня задача. 
Интернет перерыл больше чем полностью.
Если кто подскажет быстрее чем я решу сам - буду очень признателен и благодарен.
Весь код, после достижения окончательного решения, выложу здесь.
Наверняка не только у нас, почти частная компания РАО РЖД "сворачивает кровь" автомобилистам своими закрытыми переездами.
PM MAIL   Вверх
Akina
Дата 11.3.2013, 08:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 20
Всего: 454



А почему нельзя подключиться датчиком непосредственно к лампе? шлагбауму? заградительному устройству? снимать и накапливать данные по событиям, и с некоторой периодичностью сливать накопленню статистику в центр обработки?

Цитата(madbob @  11.3.2013,  08:41 Найти цитируемый пост)
- поставить камеру и наблюдать за световой сигнализацией;
- раз в секунду делать стоп - кадр и считать кол-во красных пикселей в изображении;

Ну если в кадр гарантированно не попадёт стоп-сигнал остановившегося автомобиля...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
madbob
Дата 11.3.2013, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 29.8.2010

Репутация: нет
Всего: нет



Благодарю за интерес к теме и желание помочь.
Нельзя вносить изменения в сигнализацию ЖД переезда.
Просто ни кто не даст.

PM MAIL   Вверх
Akina
Дата 11.3.2013, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 20
Всего: 454



 smile Я и не предлагаю паять провода к цоколю лампы. Поставь фотодиод в паре сантиметров от стекла (ну ещё прикрой от солнца) и регистрируй... поставь контактный тумблер на шлагбаум и регистрируй включения и выключения... или просто снимай с питающего провода наведёнку - понять, идёт по проводу полампера или десять миллиампер - элементарно... необязательно вмешиваться в работу устройства, чтобы снимать сведения о переключении его режимов.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
_Y_
Дата 12.3.2013, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1651
Регистрация: 27.11.2006

Репутация: 8
Всего: 34



Копи-постю свою же фразу

И еще неоднократно выйдет зайчик погулять... О чем это я?... Ах да, и еще неоднократно буду рекомендовать эту книжку.

Там есть хорошая глава на тему как распознавать образы. Геометрические фигуры типа глаза светофора распознаются на ура.


--------------------
Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:)
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0753 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.