Перейти к содержимому
Compvision.ru
Сергей Александрович

Face recognition x86

Recommended Posts

У меня проблема при построении решения(при компиляции на х64 то все нормально):

Предупреждение 1 "Emgu.CV.HaarCascade" является устаревшим: "Please use CascadeClassifier instead. This class will be removed in the next version" E:\Face Recognition x86\Face Recognition\Main Form1.cs 34 28 Face Recognition

Предупреждение 2 "Emgu.CV.HaarCascade" является устаревшим: "Please use CascadeClassifier instead. This class will be removed in the next version" E:\Face Recognition x86\Face Recognition\Main Form1.cs 34 39 Face Recognition

Предупреждение 3 "Emgu.CV.HaarCascade" является устаревшим: "Please use CascadeClassifier instead. This class will be removed in the next version" E:\Face Recognition x86\Face Recognition\Training Form.cs 35 21 Face Recognition

Предупреждение 4 "Face_Recognition.Training_Form.Parent" скрывает наследуемый член "System.Windows.Forms.Control.Parent". Если предполагается скрытие, используйте ключевое слово new. E:\Face Recognition x86\Face Recognition\Training Form.cs 55 15 Face Recognition

Предупреждение 5 "Emgu.CV.Image<Emgu.CV.Structure.Gray,byte>.DetectHaarCascade(Emgu.CV.HaarCascade, double, int, Emgu.CV.CvEnum.HAAR_DETECTION_TYPE, System.Drawing.Size)" является устаревшим: "Use HaarCascade.Detect function instead. This function will be removed in the next release" E:\Face Recognition x86\Face Recognition\Training Form.cs 106 48 Face Recognition

Предупреждение 6 "Emgu.CV.Image<Emgu.CV.Structure.Gray,byte>.DetectHaarCascade(Emgu.CV.HaarCascade, double, int, Emgu.CV.CvEnum.HAAR_DETECTION_TYPE, System.Drawing.Size)" является устаревшим: "Use HaarCascade.Detect function instead. This function will be removed in the next release" E:\Face Recognition x86\Face Recognition\Main Form1.cs 129 48 Face Recognition

Предупреждение 7 "Emgu.CV.Image<Emgu.CV.Structure.Gray,byte>.DetectHaarCascade(Emgu.CV.HaarCascade, double, int, Emgu.CV.CvEnum.HAAR_DETECTION_TYPE, System.Drawing.Size)" является устаревшим: "Use HaarCascade.Detect function instead. This function will be removed in the next release" E:\Face Recognition x86\Face Recognition\Main Form1.cs 166 48 Face Recognition

Предупреждение 8 Переменная "ex" объявлена, но ни разу не использована E:\Face Recognition x86\Face Recognition\Training Form.cs 238 30 Face Recognition

вот данные строки как их можно исправить?

1)public HaarCascade Face = new HaarCascade(Application.StartupPath + "/Cascades/haarcascade_frontalface_alt_tree.xml");

2) HaarCascade Face;

3) MCvAvgComp[][] facesDetected = gray_frame.DetectHaarCascade(Face, 1.2, 10, Emgu.CV.CvEnum.HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new Size(50, 50));

а так все остальные строки такие же

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ошибок нет.

Код должен запускаться.

Если очень хочется, то сделайте как он говорит, используйте для детекта класс CascadeClassifier.

Документации по нему достаточно: http://docs.opencv.org/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Столкнулся с такой же ситуацией, тоже надо сейчас прогу перелопачивать. Могу точно сказать откуда эти вещи появились. Полностью работает при версии Emgu которая идет вместе с проектом. Далее при попытках добавить новую ссылку на (в моём случае) Emgu.CV.GPU оно отказалось работать т.к. не находило некоторых методов (в проге ранее не наличиствовавших), после чего пришлось обновить все файлы и dll библиотеки emgu, что собственно и вызвало, то что старый метод, который собираются выкинуть начал давать warnings. А вот на что менять DetectHaarCascade, который отказывается работать с CascadeClassifier в качестве первого аргумента, пока не понял.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Так не надо его в качестве аргумента, надо создать экземпляр класса, и вызывать его методы.

cv::CascadeClassifier::CascadeClassifier - конструктор
cv::CascadeClassifier::empty - проверка загружен классификатор или нет
cv::CascadeClassifier::load - загрузка классификатора (trained by haartraining)
cv::CascadeClassifier::read - загрузка классификатора (trained traincascade application)
cv::CascadeClassifier::detectMultiScale - собственно детектирование объекта
cv::CascadeClassifier::setImage - устанавливает изображение для детекта, вызывается внутри detectMultiScale
cv::CascadeClassifier::runAt - запускает детектор в заданной точке. Изображение должно быть загружено ф-цией setImage[/code]

Здесь и пример есть:

http://opencv.willowgarage.com/documentation/cpp/objdetect_cascade_classification.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×