Обучите свой пользовательский детектор объектов с помощью API детектора объектов Tensorflow

В этой статье рассказывается о моем опыте обучения модели пользовательского детектора объектов с нуля с использованием API обнаружения объектов Tensorflow. В данном случае детектор хомяка.

Поток следующий:

  1. Обозначение изображений
  2. Предварительная обработка изображений
  3. Создайте карту меток и настройте для переноса обучения из предварительно обученной модели
  4. Выполнить обучающую работу
  5. Экспорт обученной модели

1) Обозначьте изображения

Сначала я собрал в сети около 130 изображений хомяков. После этого я использовал инструмент LabelImg, чтобы аннотировать их.

Изображения были сохранены в формате PascalVOC (т.е. xml).

2) Предварительная обработка изображений

После того, как изображения были размечены, потребовалась дополнительная предварительная обработка. Файлы xml должны быть преобразованы в csv, а затем, наконец, в формат TFRecords для обучения модели. На этом этапе были применены следующие скрипты xml_to_csv.py и generate_tfrecord.py.

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

Следующим шагом было создание файла label_map.pbtxt. Карта меток определяет отображение идентификатора класса в имя класса. А поскольку у меня был только один класс, моя карта меток была простой:

Для обучения передачи я использовал предварительно обученный SSD inception v2 COCO, загруженный из зоопарка моделей тензорного потока. Образец конфигурации можно было скачать здесь и затем соответствующим образом скорректировать.

4. Выполнить обучающую работу

Запустите model_main.py из каталога tensorflow models / research / object_detection, чтобы начать обучение.

Как только задание было запущено, его можно было отслеживать с помощью тензорной доски.

5) Экспорт обученной модели

После всей тяжелой работы последним шагом был запуск export_inference_graph.py из каталога tensorflow models / research / object_detection для экспорта обученной модели для использования.

Примечание. При создании этого питомца ни один хомяк не пострадал

Первоначально опубликовано на http://blog.howanalytics.com 7 мая 2020 г.