介绍
这篇文章主要介绍了如何将labelme格式数据转化为标准的可可数据集格式方式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
<强> labelme标注图像生成的json格式:强>
{ ,“version":,“3.11.2" ,“flags": {}, ,“shapes":[#,每个对象的形状 ,{#,第一个对象 “label"才能:,“malignant" “line_color"才能:,空, “fill_color"才能:,空, “points"才能:,[#,边缘是由点构成,将这些点连在一起就是对象的边缘多边形 (才能 371年,,,,#,第一个点,x 坐标 ,,257,#,第一个点,y 坐标 ,,, ,,… (才能 412年,,, ,,255 ,,) ,,, “shape_type"才能:,“polygon", #,形状类型:多边形 }, ,{ “label"才能:,“malignant",, #,第一个对象的标签 “line_color"才能:,空, “fill_color"才能:,空, “points"才能:,[#,第二个对象 (才能 522年,,, ,,274 ,,, ,,… (才能 561年,,, ,,303 ,,) ,,, “shape_type"才能:,“polygon" }, ,{ “label"才能:,“malignant",, #,第二个对象的标签 “line_color"才能:,空, “fill_color"才能:,空, ,“imagePath":“. ./. ./val2017/000001.jpg",, #,原始图片的路径 ,“imageData":“something too long “#,原图像数据,通过该字段可以解析出原图像数据 ,“imageHeight": 768年, ,“imageWidth": 1024 }
可可标准数据集格式:
可可通过大量使用亚马逊土耳其机器人来收集数据.COCO数据集现在有3种标注类型:对象实例(目标实例),对象要点(目标上的关键点),和图片标题(看图说话),使用JSON文件存储。
<>强基本的JSON结构体类型强>
这3种类型共享下面所列的基本类型,包括图像,类别,注释类型。
图像类型:
“images":, {才能 ,才能“height":, 768年, ,才能“width":, 1024年, ,才能“id":, 1, #图片id ,才能“file_name":,“000002. jpg" ,,} )
<强>类别类型:强>
“categories":, {才能 ,才能“supercategory":,“Cancer",, #父类 ,才能“id":,,,,, #标签类别id 0表示背景 ,才能“name":,“benign", #子类 ,,}, {才能 ,才能“supercategory":,“Cancer" ,才能“id":, 2, ,才能“name":,“malignant" ,,} ],
<强>注释类型:强>
“annotations":, {才能 ,才能“segmentation":,(#坐标点的坐标值 ,,,( ,,,,,418 ,,,,,256 ,,,,,391 ,,,,,293 ,,,,,406 ,,,,,323 ,,,,,432 ,,,,,340 ,,,,,452 ,,,,,329 ,,,,,458 ,,,,,311 ,,,,,458 ,,,,,286 ,,,,,455 ,,,,,277 ,,,,,439 ,,,,,264 ,,,,,418 ,,,,,293 ,,,,,391 ,,,,256 ,,,) ,,,, ,才能“iscrowd":, 0,, #单个的对象(iscrowd=0)可能需要多个多边形来表示 ,才能“image_id":, 1, #和形象的id保持一致 ,才能“bbox":,(#标才能注的边框值,bbox是将分割包起来的水平矩形 391.0,,,, 256.0,,,, 67.0,,,, ,,,84.0 ,,,, ,才能“area":, 5628.0,, #标注的边框面积 ,才能“category_id":, 1, #所属类别id ,才能“id":, 1,,, #标注边框的id :, 1、2、3…, n ,,} )
<强> labelme转化为可可强>
#, - *安康;编码:utf-8 - * - #,!/usr/bin/env python , import argparse import json import matplotlib.pyplot  as plt import skimage.io  as io import cv2 得到labelme import 跑龙套 import numpy  as np import 水珠 import PIL.Image , class MyEncoder (json.JSONEncoder): ,def 违约(自我,,obj): null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null如何将labelme格式数据转化为标准的可可数据集格式方式