roboforum.ru

Технический форум по робототехнике.
Текущее время: 27 ноя 2024, 01:40

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 19 апр 2009, 23:41 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Привет! В общем у меня работа по компьютерному зрению!!! Мне нужна помощь - может кто-то уже делал эту работу. В OpenCV мне сказали это уже сделано, там имеется пример facedetect - у меня не получилось его запустить(((.

Подскажите, пожайлуйста, в какую сторону двигаться? Какие функции использовать.

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

Спасибо, заранее!!! Буду рад любой помощи!!!

Модератор vooon:Перенес в более подходящую ветку


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 00:41 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Хоть кто-то что-то напишет здесь???

Я уже нашел нужные функции в OpenCV для своей работы - haartraining...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 08:05 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
А чего писать то, если у вас даже примеры типа не запускаются от OpenCV - мы круче их не сделаем... :pardon:

А по распознаванию - там вроде и так кроме haartraining нету ничего...

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 12:25 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Хорошо, такой вопрос. Я в общем запустил один один пример в C-Builder. Сделал как было написано на каком-то форуме: создал для проекта lib-файлы с помощью утилиты implib:

например : implib -a cv110.lib cv110.dll

И добавил lib-файлы в проект. И заработал примитивный пример:
Код:
#include "cv.h"
#include "highgui.h"

//---------------------------------------------------------------------------

int main(int argc, char* argv[])
{
     IplImage* image;
     if( argc != 2 ) return -1;
     image = cvLoadImage( argv[1] );
     if( !image ) return -1;

    cvNamedWindow( "Sample", 1 );
     cvShowImage( "Sample", image );
     cvWaitKey();
     return 0;
}

Хоть это вызвало радость на душе. Уже достижение)

А вот второй пример с вырисовыванием контуров:


Код:
#include "cv.h"
#include "highgui.h"

//---------------------------------------------------------------------------


IplImage* image = 0;
int thresh = 100;

void on_trackbar(int)
{
    IplImage* gray = cvCreateImage( cvGetSize(image), 8, 1 );
    CvMemStorage* storage = cvCreateMemStorage(0);
    CvSeq* contours = 0;
    cvCvtColor( image, gray, CV_BGR2GRAY );
    cvThreshold( gray, gray, thresh, 255, CV_THRESH_BINARY );
    cvFindContours( gray, storage, &contours );
    cvZero( gray );
    if( contours )
        cvDrawContours( gray, contours, cvScalarAll(255),
                        cvScalarAll(255), 100 );
    cvShowImage( "Contours", gray );
    cvReleaseImage( &gray );
    cvReleaseMemStorage( &storage );
}

int main( int argc, char* argv[] )
{
    IplImage* image;
    if( argc != 2 || !(image = cvLoadImage(argv[1])) )
        return -1;
    cvNamedWindow( "Contours", 1 );
    cvCreateTrackbar( "Threshold", "Contours",
                      &thresh, 255, on_trackbar );
    on_trackbar(0);
    cvWaitKey();
    return 0;
}


Не заработал. Нашел вроде на этом форуме решение: нужно создать def-файлы для dll-файлов OpenCV:
для этого тоже существует утилита
Код:
impdef cv110.def cv110.dll


Но, когда добавляю файлы в проект и собираю проект, то вылетает ошибка типа:

Код:
[ILINK32 Error] Fatal: Could not open cv110_bc.defhighgui110_bc.def (error code 2)


где cv110_bc.def и highgui110_bc.def созданные мною файлы с помощью impdef.

Помогите, пожайлуста, что я делаю не так? Заранее спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 12:30 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
ну для начала в своем сообщении код закрой в тэги "Code" :evil:

Я за него поправил - а то читать тяжко... Но присоединяюсь к ругани: автор, пользуйтесь тегами! :no:
<Digit>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 12:57 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Да извиняюсь. Буду иметь в виду! А помочь мне можете?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 13:01 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Не помню чтобы надо было def-файлы создавать, вот lib - это вроде надо.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 13:05 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Хорошо. Вот без def-файлов:

выдает такие ошибки:
Код:
[ILINK32 Error] Error: Unresolved external '_cvGetSize' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvCreateImage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvCreateMemStorage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvThreshold' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvSetZero' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvDrawContours' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvReleaseImage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvReleaseMemStorage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 13:39 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
lib-файлы то правильно сделаны?

я когда делал вроде без .def-файлов как-то обошелся...

А библиотеки в проект подцеплены?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 13:54 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июн 2007, 15:19
Сообщения: 1016
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев
RATA писал(а):
Хорошо. Вот без def-файлов:

выдает такие ошибки:
Код:
[ILINK32 Error] Error: Unresolved external '_cvGetSize' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvCreateImage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvCreateMemStorage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvThreshold' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvSetZero' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvDrawContours' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvReleaseImage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ
[ILINK32 Error] Error: Unresolved external '_cvReleaseMemStorage' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ


Дружище, так у тебя линкер (модуль сборки объектного кода) просто не находит объявленные внешние идентификаторы (подпрограммы, структуры данных) которые находятся во внешних библиотеках: cxcore.lib cv.lib highgui.lib. Просто укажи их место расположения для линкера (папка ..\ OpenCV\lib) и всё слинкуется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 14:58 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
В общем добавил в проект еще один lib-файл: cxcore110_bc.lib и многие ошибки пропали:

осталась одна:

Код:
[ILINK32 Error] Error: Unresolved external '_cvThreshold' referenced from C:\DOCUMENTS AND SETTINGS\RATA\¦+L -+¦L¦+=T-\RAD STUDIO\PROJECTS\CONTOURS\RELEASE\CONTOURS.OBJ


А функция cvThreshold находится как раз в cv110_bc.lib. И должна по идее работать. Так в чем тогда проблема не пойму???


Всего в проект добавлено 3 lib-файла:

cxcore110_bc.lib
cv110_bc.lib
highgui110_bc.lib

Пробовал со всеми lib-файлами - не решило проблему!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 15:24 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июн 2007, 15:19
Сообщения: 1016
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев
Попробуй использовать последнюю версию OpenCV от Intel OpenCV_1.0.exe (2006-10-19 15:43). Все последующие версии ведёт другая команда разработчиков, и там возможны недоработки (я работаю именно с этой версией, а в следующей версии ничего особенного не добавилось, зато порезали некоторые полезные фишки).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 15:37 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
у меня стоит последняя версия OpenCV_1.1pre1a

Или это не то?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 16:15 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
2RATA: А помоему очевидно что не версия тут проблемная, а какой-то либы не хватает. Добавь все, что тебе жалко чтоли? :P

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм Виолы Джонса распознавания лиц(любых объектов)
СообщениеДобавлено: 21 апр 2009, 17:40 
Не в сети

Зарегистрирован: 19 апр 2009, 22:02
Сообщения: 9
Откуда: Город
Не помогло!!!
Добавил все что есть.
Может все-таки в версии проблема?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO