Adding a new class to the existing class of Tensorflow Object Detection Model

1.4k Views Asked by At

I'm trying to add a new class to the ms_coco_model (having 90 classes) in tensorflow object detection model and run the training set for the same. I'm using the pre-trained model checkpoint: "ssd_mobilenet_v1_coco_checkpoint" to speed up the training step.

I followed the blog https://towardsdatascience.com/how-to-train-your-own-object-detector-with-tensorflows-object-detector-api-bec72ecfe1d9, and this works perfectly. As it runs training step only on raccoon dataset having 1 class in the .pbtxt file. Outputs are as expected and able to detect "only" the raccoon in a given input file.

What I want to achieve is, to be able to detect raccoon as well as other objects in given input file. I followed the below approach :

  1. Converted raccoon annotations .xml to .json format (same as ms_coco dataset)
  2. Added raccoon images and annotations to ms_coco images and annotations files
  3. Ran the create_tfrecord script to generate tfrecord for the combined ms_coco + raccoon data, for training step
  4. Updated .pbtxt file and added raccoon class with id: 91
  5. Started training step with pre-trained model ssd_mobilenet_v1_coco_checkpoint

But even after running the training for ~2k steps, I'm not able to achieve expected output.

Is this approach correct to add a new class data to existing data model? Am I missing here anything?

0

There are 0 best solutions below