标注工具labelme改造计划

LabelMe工具进行了改进,包括从平铺到树状的文件列表展示,增加文件数量显示,支持自定义导出格式,如Yolo格式。用户可通过配置文件轻松扩展导出功能,示例函数详细解释了如何操作。
摘要由CSDN通过智能技术生成

标注工具labelme改造计划

文件列表改造

如下所示, 由平铺列表改成了树状结构的文件列表, 同时能够显示文件个数, 及已标注文件个数。
labelme filelist

支持导出自定义格式

labelme export

添加导出功能, 可导出你想要的任意格式, 默认情况下提供了一个sample示例。笔者添加了导出yolo格式。
当你第一次打开labelme.exe文件时, 会在当前目录下生成默认配置文件.labelmerc以及导出脚本示例export.py:labelme_localfile

如果你想扩展导出功能, 只需要在配置文件.labelmerc中的export列表中添加即可, 注意其名称需要与脚本中的方法名称保持一致。

在默认情况下, 配置中的导出列表为["sample"], 而对应的export.py中也包含同名函数def sample(...)

示例函数说明:

def sample(targetDir, sourceImages, labelextension):
    """Export the current label format to your desired label format

    Args:
        targetDir (str): export directory
        sourceImages (list): list of labeled pictures
        labelextension (str): current annotation file suffix name

    Returns:
        int: return the number of exports
    """
    for idx, image_path in enumerate(sourceImages):
        
        target_basename = "{:04d}".format(idx)
        filepath, image_ext = os.path.splitext(image_path)
        label_file = filepath + labelextension
        
        shutil.copyfile(image_path,  os.path.join(targetDir, "%s%s" % (target_basename, image_ext)))
        shutil.copyfile(label_file,  os.path.join(targetDir, "%s%s" % (target_basename, labelextension)))

    return len(sourceImages)
  • targetDir参数为导出目标目录, 程序已经保证其必然为空目录
  • sourceImages参数为已经标注的图片绝对路径列表
  • labelextension参数为标注文件后缀名, 只需将图片后缀名更改为标注文件后缀名,即可对其进行读取操作。
  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值