Добавить новый класс в набор данных mscoco, тензорный поток обнаружения объектов

Я хотел бы добавить новый класс (пример: пистолет) в набор данных кокоса (90 классов), чтобы я мог обнаружить 91 другой класс.

У меня есть это:

набор данных: 300 изображений о пистолете.

labelmap.pbtxt:

item {
    id: 1
    name: 'Handgun'
}

pipeline.config:

num_classes: 1
fine_tune_checkpoint: "/media/Shared/faster_rcnn_resnet101_coco_2018_01_28/model.ckpt"
from_detection_checkpoint: true
load_all_detection_checkpoint_vars: true

Возможное решение: изменить num_classes: 1 на num_classes: 90+1?

Большое спасибо, что ответили мне.


person Knowledge    schedule 24.08.2018    source источник


Ответы (2)


К сожалению, вы не можете просто добавить один класс, переобучить и распознать все 91 класс. Если вы хотите, чтобы модель была обучена для всех 91 класса, загрузите набор данных кокоса, добавьте свой собственный набор данных с метками, а затем обучите модель. Другой вариант - переобучить вторую модель только с одним классом и вывести этот один класс, используя эту недавно обученную вторую модель. Вам придется вывести другие 90 классов, используя доступную модель отдельно. Вы можете узнать об обнаружении пользовательских объектов с помощью ответа в следующем сообщении Обнаружение объектов Tensorflow в реальном времени

person Srinivas Bringu    schedule 25.08.2018

Единственный способ сделать это — использовать новый набор данных и существующий набор данных, такой как COCO, и объединить их, создать новую запись обучения, а затем обучить ее.

person Subham Tiwari    schedule 26.04.2021