Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/30: Рейтинг темы: голосов - 30, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 21.01.2013
Сообщений: 44

Распознавание образов с IP-камеры

14.02.2014, 10:14. Показов 6097. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
доброго времени суток. возник такой вопрос.
есть ип-камера, я получаю с нее картинку. мне нужно, скажем, каждый 5 кадр с нее сверять с известной картиной(png или jpg). и если есть совпадение сообщить об этом как нибудь.(сигнал или функция)
подскажите пожалуйста как это реализовать. и где можно посмотреть описание с примерами.

зы. как вывести изображение на форму а не в отдельном окне

pps использую opencv и qt5

образцы картинок и исходники в архиве
Вложения
Тип файла: rar camera.rar (120.5 Кб, 78 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.02.2014, 10:14
Ответы с готовыми решениями:

Распознавание образов
Здравствуйте, хотел бы спросить совета у вас. Вообщем надо написать курсовую работу по теме "алгоритмы статистического обучения в...

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

распознавание образов
уважаемые форумчане кто из вас пользовался продуктами для распознавания букв\цифр? что можете посоветовать (бесплатное\триал) ? чтобы...

5
 Аватар для alexey_rage
596 / 396 / 79
Регистрация: 23.10.2013
Сообщений: 1,143
14.02.2014, 12:24
Немного приходилась заниматься распознаванием объектов на изображении. Решал задачу сшивки кадров аэро-фотосъемки. Для этого я вырезал небольшие участки на одном изображении, брал эти участки в качестве шаблона и искал похожие участки на другом изображении с помощью OpenCV. Ниже приведу код функции поиска участка на изображении по шаблону. Данный пример давал неплохие результаты. Но я не успел довести его до идеала, ибо ушел работать в другую контору. А сейчас все руки не доходят взяться и доделать. В общем выкладываю код, может чем-то поможет:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
QRect CSearchObjects::searchObjectByTemplate(QString srcImgName, QString templImgName)
{
    QRect resultRect = QRect(-1, -1, -1, -1);
    QRect CCORR_result;
    QRect SQDIFF_result;
    QPair <QRect, QRect> resultPair;
 
    resultPair.first = QRect(0, 0, 0, 0);
    resultPair.second = QRect(1, 1, 0, 0);
 
    double min,max;
    CvPoint minpos, maxpos;
 
    char* imgName =  srcImgName.toAscii().data();
    char* templName = templImgName.toAscii().data();
 
    IplImage *src = NULL;
    IplImage *templ = NULL;
    IplImage *result = NULL;
 
    src = cvLoadImage(imgName, CV_LOAD_IMAGE_GRAYSCALE);
 
    templ = cvLoadImage(templName, CV_LOAD_IMAGE_GRAYSCALE);
 
    if(!src || !templ)
    {
        qDebug("LOADING ERROR!!!");
        return resultRect;
    }
 
    result = cvCreateImage(cvSize( src->width - templ->width + 1,src->height - templ->height + 1),32,1);
 
    cvMatchTemplate( src, templ, result, CV_TM_CCORR_NORMED);
    cvNormalize( result, result, 1, 0, CV_MINMAX );
    cvMinMaxLoc(result,&min,&max,&minpos,&maxpos);
 
    CCORR_result = QRect(maxpos.x, maxpos.y, templ->width, templ->height);
 
    cvMatchTemplate( src, templ, result, CV_TM_SQDIFF_NORMED);
    cvNormalize( result, result, 1, 0, CV_MINMAX );
    cvMinMaxLoc(result,&min,&max,&minpos,&maxpos);
 
    SQDIFF_result = QRect(minpos.x, minpos.y, templ->width, templ->height);
 
    resultPair.first = CCORR_result;
    resultPair.second = SQDIFF_result;
 
    if(resultPair.first.x() == resultPair.second.x() &&
        resultPair.first.x() == resultPair.second.x());
    {
        resultRect = resultPair.first;
    }
 
    cvReleaseImage(&src);
    cvReleaseImage(&templ);
    cvReleaseImage(&result);
 
    return resultRect;
}
Метод возвращает прямоугольник на исходном изображении, который наиболее вероятно "похож" на шаблон.

Добавлено через 3 минуты
Неплохая статья по OpenCV с рабочими примерами:
http://robocraft.ru/page/opencv/
4
1 / 1 / 0
Регистрация: 05.02.2014
Сообщений: 13
23.06.2014, 13:25
Приветствую !

а вы можете хотя бы теорией и условие кодом на матлабе написать, как реализовать поиск объекта на изображение по маске т.е есть объект в виде маски и и собственно изображение ??
0
0 / 0 / 0
Регистрация: 21.01.2013
Сообщений: 44
23.06.2014, 22:34  [ТС]
спасибо. прогу уже написал. вроде все работает. использовал каскадный класификатор Хаара
0
1 / 1 / 0
Регистрация: 05.02.2014
Сообщений: 13
24.06.2014, 18:51
Дружище скинь исходник!
0
0 / 0 / 0
Регистрация: 21.01.2013
Сообщений: 44
24.06.2014, 19:49  [ТС]
после 26. если защита пройдет успешно

Добавлено через 4 минуты
пока почтай тут http://habrahabr.ru/post/208092/ тут http://recog.ru/blog/opencv/85.html и тут http://habrahabr.ru/post/174703/#3 ещети
http://www.compvision.ru/wiki/... 1%80%D0%B0 и http://note.sonots.com/SciSoft... ining.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.06.2014, 19:49
Помогаю со студенческими работами здесь

Распознавание образов
здравствуйте. нужно написать программу для распознавания типов водного транспорта (лодка, корабль, подводная лодка).распознавание образов ...

Распознавание образов
Можно при помощи моделирования нейросетей или чисто математических алгоритмов распознавать объекты, изображенные на видео, поступающем с...

Распознавание образов
Нужна программа на matlab чтобы распознавала людей на фотографии, желательно используя нейронные сети. Правила форума CyberForum.ru ...

Распознавание образов
Как можно распознать образы из, допустим, яндекс карты, то есть прямоугольники, метки и т.д. Чтобы получить для себя дороги, дома, реки(их...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru