Перейти к содержимому
Compvision.ru
StarDen

Использование двух или более каскадов Хаара

Recommended Posts

Доброго времени суток! 
Пишу детектор знаков ограничения скорости(в компьютерном зрении новичек), реализация фильтра и поиска координат уже есть(детектирование красного кольца работает приемлемо), теперь осталось распознать текст внутри знаков (5,10,20,30,40... и т.д.), моя идея такова: создать по 300 положительных и по 600 отрицательных изображений для каждого знака(а конкретнее текста внутри знака, так как поиск изображения с текстом думаю делать в уже вырезанном изображении, согласно координатам и данным, полученных из предыдущих действий), с помощью программы: opencv_createsamples.exe и  opencv_haartraining.exe - создать XML-файл "cascade.xml" для каждого знака(точнее для тех выборок 300х600 фотографий). После чего загрузить их в программу и выполнять поиск знаков по очереди подставляя каскады разных знаков, например как-то так: подставляем каскад знака 90 если в кадре находим 90 то выход, иначе подставляем каскад знака 80... и так в цикле.

Каскад собираюсь делать согласно этой статье.
 

Одна из положительных картинок 208.bmp
(и да, я знаю что она большая,но пока не знаю какой размер конкретно нужен)

Собственно вопрос:
1) подходит ли мой алгоритм?
2) если нет, как это лучше сделать?

Предпочтительно: C# ,OpenCvSharp

Библиотека: OpenCv

 

СпаСиБо!

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


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

Не подходит, лучше использовать классификатор, а не детектор.

С детектированием Вы вроде разобрались, судя по посту.

 

Общая последовательность такая:

1) находим рамку с объектом.

2) извлекаем изображение с объектом

3) выравниваем и приводим к заданному масштабу

4) подаем приготовленное изображение классификатору

5) классификатор выдает что это такое.

 

Посмотрите в сторону нейронных сетей http://caffe.berkeleyvision.org/ .

 

Здесь еще сравнительная таблица есть: http://rodrigob.github.io/documents/2013_ijcnn_traffic_signs.pdf

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


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

Увы но Caffe на .net никак не представлен, самое приличное по скорости и наличию .net это fann.

 

Если нужно распознать "скорость" то я бы 4ый шаг заменил на  hog, по скорости он быстрый но зато боле устойчивый чем просто изображение, ну и полученный дескриптор в самою простою нейросеть.

 

А несколько Haar-ов да еще в реалтайме (судя по задаче) тут уже серьезная видеокарты нужна будет.

 

ссылка на рабочая

 Здесь еще сравнительная таблица есть: http://rodrigob.gith...ffic_signs.pdf 

  • Like 1

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


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

скачал пример приложения FANN, откомпилил(пришлось немного помучатся с настройками проекта) - работает! НО компилится только под .Net 3.5 и конфигурацией х86, а у меня проект на ниже чем .net 4.0 не работает( есть идеи?

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


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

В app.config делаем так

 <startup useLegacyV2RuntimeActivationPolicy="true">

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


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

Сделал, при отладке выдает: "Сборка для смешанного режима построена на основе версии "v2.0.50727" среды выполнения и не может быть загружена в среде выполнения 4.0 без дополнительных конфигурационных данных."

содержание app.config:
 

<?xml version="1.0"?>
<configuration>
<startup> useLegacyV2RuntimeActivationPolicy="true"</startup></configuration>

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


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

ссылка на рабочая

 Здесь еще сравнительная таблица есть: http://rodrigob.gith...ffic_signs.pdf

Спасибо, ссылку поправил.

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


Ссылка на сообщение
Поделиться на других сайтах
 у меня такой
<?xml version="1.0"?>
<configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>
  • Like 1

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


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

О, громадное спасибоbow.gif , заработало! изначально  файл конфига был похожий, но надо было еще, судя по вашему файлу не только<startup useLegacyV2RuntimeActivationPolicy="true">, а и строка : <supportedRuntime version="v4.0"/>. Буду дальше разбиратьсяonguard.gif 

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


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

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

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

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

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

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

Войти

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

Войти сейчас


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

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

×