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 :
- Converted raccoon annotations .xml to .json format (same as ms_coco dataset)
- Added raccoon images and annotations to ms_coco images and annotations files
- Ran the create_tfrecord script to generate tfrecord for the combined ms_coco + raccoon data, for training step
- Updated .pbtxt file and added raccoon class with id: 91
- 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?