В моем проекте мне нужно узнать монеты евро, и кто-то посоветовал мне использовать классификаторы OpenCV и алгоритмы обучения. Поэтому я загрузил 3.1 версию OpenCV, и я пытаюсь запустить ее. Я хотел бы знать некоторые вещи, которые я не понимаю из учебных пособий (из которых я следую this, this из официальной документации OpenCV и this).OpenCV: как использовать opencv_createsamples и opencv_traincascade
Прежде всего, необходимо ли генерировать и рассматривать отрицательные образцы? если да, то какие «объекты» следует рассматривать как негативы? В моем приложении я должен обнаружить и распознать монеты евро, поэтому ... должен ли я создавать негативы из любого другого случайного объекта?
Во-вторых, мое приложение должно признать 2 €, 1 € и 0.50 € монет. Итак, сколько положительных образцов я должен создать с помощью opencv_createsamples
? Один для каждой монеты (спереди и сзади) или уникальный для всех трех видов монет? Если бы я хорошо понял, то у меня появятся некоторые .xml-файлы, которые я должен вложить в проект приложения для iOS, так?
И, наконец, будет detectMultiScale()
не только обнаружить монету, но и ее вид? Вот почему я думал, что мне понадобится больше, чем файл классификатора, чтобы отличить назад с правой стороны и отличить ценность монеты.
Надеюсь, что я не написал слишком широкий вопрос, спасибо за внимание.
Я думаю, что отрицательные образцы должны. Я не знаком с монетами евро, но маловероятно, что 'detectMultiScale()' может распознавать типы монет, даже вы их обучаете отдельно и используете 3 разных детектора - они просто похожи на формы (раунд?). Для этой задачи вам нужно будет обучить распознавание объектов. –
@QuangHoang благодарит вас за ответ. Да, все монеты евро круглые и очень похожие. Эм, что такое распознавание объектов? Можете ли вы сослаться на хороший учебник? –
Это нечто похожее на распознавание лица. Обычно вам необходимо обучить классификационную машину, будь то PCA, SVM или Neural Network. OpenCV имеет [распознавание лица] (http://docs.opencv.org/2.4/modules/contrib/doc/facerec/facerec_tutorial.html), который может использоваться с вашим набором данных монет. - Также обратите внимание, что у них есть модуль машинного обучения с более общей реализацией общих классификаторов. –