yolov3数据集要求(yolov7数据集格式用于目标识别与实例分割)
介绍yolov7数据集格式之前 ,首先要了解mask rcnn使用的数据集格式 。Mask rcnn采用数据集格式:
四个文件夹分别是:
掩码标签 label.png;
从labelme产生的json文件转换的后的json文件;
labelme 标注后的json文件;
图片 。
注意 ,mask rcnn是采用分割图作为标签,不使用源数据集提供的边界框坐标 ,而是从掩码中计算边界框 。使用的数据是与yolov7不同 。
想要复现Yolov7 ,并训练自己的数据 ,了解数据格式是必须的 ,以yolov7-main程序中使用的coco数据为例:
yolov7-main程序:https://github.com/WongKinYiu/yolov7
其中annotations中共一个instances_val2017.json文件 ,包含所有图像标注信息;
labels 是对应images的 .txt 文件 ,txt文件中是物体分割标注点 。
标注内容是:45是bowl ,49是orange ,50是broccoli
为了进一步对数据集有所了解 ,这里放上对应的图:查看coco数据集的标注情况可以看link:
http://cocodataset.org/#explore?id=402563参考:https://github.com/matterport/Mask_RCNN/blob/master/samples/coco/inspect_data.ipynb
做自己的数据集用yolov7训练,可以用labelme等标注工具 。这里放一张 形状识别和分割数据标注图像 ,和json文件截图:
其中 ,标注类型包括矩形边界框和多边形mask标记等等 。我用的是 polygon, rectangle两种格式 ,可以用于目标识别和实例分割 。根据自己的需求可以选择其他的标注方式 。
每张图像标注完都会产生对应的一个 .json文件 ,记录了标记的点的坐标和类型等信息。
训练自己的数据集用来识别目标时,仅使用标注文件中的rectangle信息即可 。将标注框转换为cls_num center_x center_y w h 格式的数据即可 。每个图像对应一个txt文件 ,每个目标标注对应一行标注信息。训练自己的数据集实例分割和目标识别时 ,仅用polygon格式的标注信息即可 。将多边形点转换为 cls_num x0 y0 x1 y1 ...xn yn 格式的数据即可 。同理一个图像对应一个txt文件 ,一个多边形标注对应txt中的一行。
将labelme 工具产生的.json 文件中的rectangle 或者polygon格式的标注信息转换为txt文件的程序:
https://github.com/SuperLuu7/labelme2yolo
yolov7使用的数据集格式就是这样了 ,希望大家都能训练得到自己想要的结果 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!