背景:因为很多数据没有需要自己标准很麻烦,然后想到了借助模型去自动标注。
调查研究:
在研究了几篇博文以后去尝试了很多,会有各种各样的问题,踩了很多坑,最后总结了一个完整的流程,在这里与大家分享:
步骤:
首先是利用YOLO系列去训练一个模型,这个我就不在这里复述了,我贴一个链接:
整个过程还是很简单的,有一些需要注意的点,你在使用推理的时候,需要生成带有坐标和类型的txt文件,这个是需要修改配置文件的。
打开这个detect.py文件,
差不多在200多行,会有一个'--save-txt', action='store_false', help='save results to *.txt'),这里需要改成store_false,原本是store_true。这样你在推理的时候就可以生成txt文件。
到这里YOLO模型基本就用不上了,然后你需要安装labelimg,
安装好以后需要你找到labelimg的位置,直接在C盘里面全局搜索,找到labelimg.exe。
然后在终端或者ide都行,切换到该路径下,运行
.\labelImg.exe C:/Users/admin/Desktop/hevc2img C:/Users/admin/Desktop/data/predefined_classes.txt C:/Users/admin/Desktop/ceshiyonglabel/labels
首先第一个是image_dir,就是你放需要标注的图片的路径,第二个是label_dir,是你放你利用YOLO生成的txt标注的文件,但是需要注意的是你需要在该路径下再放一个classes.txt,内容是你的类别名字
第三个是跟classes的内容是一样的,但是我是放在了同级目录下新建了一个data里面放的一个命名为predefined_classes.txt
这张图从上到下分别是label的路径,类别标签的路径,和图片的路径,中间的datasets跟本次分享无关。基本上就没有其他问题了。