0
$\begingroup$

I've to segment defects from an image. The image consists of only tomatoes with it's defects in it. The defects and tomatoes in the dataset are as follows:

tomato = 20900

Defects:

tip = 2129
spots holes = 804
cuts cracks = 267
shrivelled = 193
glare = 3485
back tip = 137
stalk = 119
green area = 610

As one can see the data is highly unbalanced. Within a single image of tomatoes we may find some defects and we may not find any. How to do training of such cases of multi-class identification and classification ? I've tried many standard models in given in tensorflow-object-detection api.It detects tomatoes and glare well as there numbers are higher. Any suggestions ?

$\endgroup$
3
  • 1
    $\begingroup$ Unbalanced classes are almost certainly not a problem, and oversampling will not solve a non-problem: Are unbalanced datasets problematic, and (how) does oversampling (purport to) help? A good start would be to build separate probabilistic models for each separate type of defect. These can serve as benchmarks for a more complex "omnibus" model that outputs probabilities for all defects simultaneously (and accounts for the fact that the defects likely occur together sometimes). $\endgroup$ Commented Aug 9, 2019 at 17:03
  • $\begingroup$ Is this a classification or a segmentation problem? $\endgroup$
    – 0asa
    Commented Aug 9, 2019 at 21:11
  • $\begingroup$ @0asa I've to both segment and then classify. $\endgroup$
    – Vedanshu
    Commented Aug 15, 2019 at 3:11

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.