labelme标注的json文件数据转成coco数据集格式(可处理目标框和实例分割)

文章介绍了如何使用Python脚本将LabelMe标注的JSON文件转换为COCO数据集格式,包括处理目标框和实例分割,以及解决可能出现的命令行错误。

参考的是博文:labelme标注的json文件数据转成coco数据集格式(可处理目标框和实例分割)

原博中是命令行执行,有一些报错,所以改了一些地方,改成可以直接运行python文件

#!/usr/bin/env python

import argparse
import collections
import datetime
import glob
import json
import os
import os.path as osp
import sys
import uuid

import imgviz
import numpy as np

import labelme

# TODO: 修改成import pycocotools.mask
# try:
#     import pycocotools.mask
# except ImportError:
#     print("Please install pycocotools:\n\n    pip install pycocotools\n")
#     sys.exit(1)
import pycocotools.mask


def main():
    parser = argparse.ArgumentParser(
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
    )
    # TODO: 修改输入、输出途径
    parser.add_argument("--input_dir", help="input annotated directory", default=r'your input_dir')
    parser.add_argument("--output_dir", help="output dataset directory", default=r'your output_dir')
    parser.add_argument("--labels", help="labels file", default='labels.txt')
    parser.add_argument(
        "--noviz", help="no visualization", action="store_true"
    )
    args = parser.parse_args()

    # TODO: 原本一定要不存在该文件夹才能继续运行,改成存在该文件夹不会重复创建
    if not osp.exists(args.output_dir):
        os.makedirs(args.output_dir)
        os.makedirs(osp.join(args.output_dir, "JPEGImages"))
        if not args.noviz:
            os.makedirs(osp.join(args.output_dir, "Visualization"))
        print("Creating dataset:", args.output_dir)

    now = datetime
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值