Reputation: 261
I am applying tensorflow object detection api to build a model to detect a single object. My own dataset contains 2150 images for training and 540 for test.
All images are of 1920 (width) by 1080 (height). The object in each image is very small, approximately 55 by 15. Also, there are a lot of noise. Here is an example image of my dataset that is correctly identified (the majority of images cannot be identified):
I have tried all of the models in the detetion_model_zoo, none of them gave me satisfying results. The mAP is very low after training. the precision is only approximate 0.3. Here is the evaluation of using ssd_inception_v2_coco
:
Any suggestions on improve the model? Thank you very much!
Upvotes: 1
Views: 2295
Reputation: 1558
I would recommend the following things:
1) Break your images into smaller crops so that the objects of interest end up being a bit bigger. You can do this just at inference time, or you can do both training and inference with crops. Don't worry if some of the crops don't contain anything interesting.
2) Use a more powerful model such as faster r-cnn with resnet or inception resnet.
3) Figure out what human performance is to get an idea of what the upper bound on the performance of your machine learning system is likely to be.
Upvotes: 2