LINUX.ORG.RU

[opencv] Детектор движения.

 


0

1

OpenCV 2.2.0

Нигде не смог найти рабочий пример для распознавания движения на видео(с веб-камеры, например).

Или укажите на хороший учебник или сборник примеров/рецептов для opencv. В гугле ничего дельного не нашел.

★★★

Последнее исправление: Xenon (всего исправлений: 1)

Ищи статью в «Практике функционального программирования». Только там без OpenCV обошлись :)

o
()
Ответ на: комментарий от VladimirMalyk

Ок. Жду понедельника :)

Xenon ★★★
() автор топика

motion - вполне себе рабочий пример (не знаю, правда, openCV там или нет - все равно, значения это не имеет).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от VladimirMalyk

Посмотрю. Все равно пригодится.

Xenon ★★★
() автор топика

Так, к слову: глядел на код OpenCV - челюсть отваливалась в некоторых местах от быдлокода. Под быдлокодом юмею ввиду написание кода словно намеренно забивая на его производительность. И это в весьма критичном к производительности проекте.

Pavval ★★★★★
()
Ответ на: комментарий от Eddy_Em

Я вот тоже, посмотрев пару дней opencv стал сомневаться в необходимости его использования. Все, что нужно действительно можно найти в других программах/библиотеках, как мне кажется.

А motion на чем написан? Офф. сайт перестал у меня работать почему-то, не могу глянуть.

Xenon ★★★
() автор топика
Ответ на: комментарий от Pavval

> Так, к слову: глядел на код OpenCV

Мне он тоже не понравился. Писал все вручную (надо было простенький классификатор изображений написать).

pacify ★★★★★
()
Ответ на: комментарий от Xenon

А motion на чем написан?

смотрите зависимости. Он «левые» библиотеки не использует.

А вообще, советую на лептонику посмотреть, там много интересных функций есть.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Pavval

Под быдлокодом юмею ввиду написание кода словно намеренно забивая на его производительность.

Примеры в студию !

AoD314
()
Ответ на: комментарий от Pavval

> Под быдлокодом юмею ввиду написание кода словно намеренно забивая на его производительность. И это в весьма критичном к производительности проекте.

Не смотрел какой там код, не до этого было, но был пример в моей работе:

Надо было реализовать детектирование на видео специфичных объектов, заказали разработку двум независимым командам. Одни ребята с подобными заявлениями что OpenCV тормоз и написан быдлокодерами, писали собственные велосипеды. Вторая команда, а точнее один разработчик, бывший участник проекта OpenCV в Intel'е писал с использованием библиотеки. Итого первый вариант на собственных велосипедах давал производительность 3 FPS, с 30-40% вероятностью детектирования. Второй давал 25 FPS при загрузке проца в 25%, при этом почти в два раза давая лучшие результаты.

Вывод прост, в первую очередь все зависит от программиста, а уж потом от библиотек и прочего! :):):):)

Daeloce
()
Ответ на: комментарий от AoD314

Примеры в студию !

Не будет примеров - лень искать. Но были вещи типа «записать данные в массив int, оттуда перегнать в одномерную матрицу, потом провести копирование с преобразованием формата (в духе uint8 -> uint32) в другую матрицу и уже ее вернуть как результат». Казалось бы что мешало сразу работать в результирующей матрице и в нужном формате.

Pavval ★★★★★
()
Ответ на: комментарий от Daeloce

Надо было реализовать детектирование на видео специфичных объектов, заказали разработку двум независимым командам. Одни ребята с подобными заявлениями что OpenCV тормоз и написан быдлокодерами, писали собственные велосипеды. Вторая команда, а точнее один разработчик, бывший участник проекта OpenCV в Intel'е писал с использованием библиотеки. Итого первый вариант на собственных велосипедах давал производительность 3 FPS, с 30-40% вероятностью детектирования. Второй давал 25 FPS при загрузке проца в 25%, при этом почти в два раза давая лучшие результаты.

Вывод прост, в первую очередь все зависит от программиста, а уж потом от библиотек и прочего! :):):):)

Это конечно. Но: при использовании опционально используемой в OpenCV IPP (Intel® Integrated Performance Primitives) скорость ну очень неслабо возрастет по сравнению с велосипедами. Потому что это специализированная либа для конкретных алгоритмов. Это про производительность. Но распереллеливание в OpenCV очень слабое (его особо и нету), потому грамотно распараллелив код возможно выйдет выиграть даже без IPP. Я бы посоветовал для каждого конкретного применения или поглядеть код OpenCV и возможно его оптимизировать, или же писать с нуля с оглядкой на код OpenCV. Ну или юзать OpenCV, если устаивает.

Pavval ★★★★★
()
16 августа 2011 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.