johnolafenwa / deepstack-trainer

Custom Object Detection Training for DeepStack
GNU General Public License v3.0
20 stars 12 forks source link

Document classes.txt #5

Open robmarkcole opened 3 years ago

robmarkcole commented 3 years ago

I used Roboflow to import my yolo5 training data, and this doesn't include a classes.txt so I had to read the source to know what was required. We can just say it is a comma separated list of the classes?

robmarkcole commented 3 years ago

I noticed that classes.txt appears to be a file that is actually specific to labelImg as discussed on https://github.com/tzutalin/labelImg#steps-yolo and not actually part of the yolo format, which is why it is not generated when I convert from pascal to yolo format using Roboflow in https://github.com/OlafenwaMoses/FireNET/issues/12 I believe yolo uses a yaml file to define the classes.

Update: after more reading I am not certain what the official yolo format is, and appears that classes are variously supplied via args, txt file, or defined in yaml, take your pick :) Roboflow use the yaml approach as this is what is expected by the ultralytics training example.

Regardless as long as it is clearly documented that is OK. Note that it appears the classes arg is still accepted by the training script but then does nothing as the script next looks for classes.txt

robmarkcole commented 3 years ago

I just noticed that labelimg will by default add all default labels to the classes txt file:

person
cat
tv
car
meatballs
marinara sauce
tomato soup
chicken noodle soup
french onion soup
chicken breast
ribs
pulled pork
hamburger
cavity
fire