labelme将JSON标记文件转换为二值PNG图像

发布时间:2023年12月30日

看了好几篇博客。在使用他们的代码时,出现了各种各样的问题;在底下留言时,博主大多是充耳不闻。感觉CSDN的质量越来越次了,有时候真还不如直接问chatGPT呢。


要将labelme生成的JSON标记文件转换为PNG二值图像,只需运行labelme提供的官方程序labelme_json_to_dataset即可。当然,前提是你已经安装好labelme了哈。

单个JSON转PNG:

labelme_json_to_dataset input.json -o output_directory

input.json是你要转换的JSON标记文件的路径,output_directory是输出PNG二值图像的目标文件夹路径。转换完成后,扩展名会变之外,文件名保持不变。

批量JSON转PNG:

如果想批量转换,就需要自己手搓一个脚本,实质上就是循环使用上面的命令行。

import os
import subprocess

input_folder = "input_folder_path"  # 输入文件夹路径,包含多个JSON标记文件
output_folder = "output_folder_path"  # 输出文件夹路径,用于保存PNG图像

# 遍历输入文件夹中的JSON标记文件
for filename in os.listdir(input_folder):
    if filename.endswith(".json"):
        # 构建输入JSON文件的完整路径
        input_path = os.path.join(input_folder, filename)
        
        # 构建输出PNG图像文件的完整路径
        output_filename = os.path.splitext(filename)[0] + ".png"
        output_path = os.path.join(output_folder, output_filename)
        
        # 使用labelme_json_to_dataset命令行工具进行转换
        command = f"labelme_json_to_dataset {input_path} -o {output_path}"
        subprocess.run(command, shell=True)

注意:运行命令时可能会出现一些warnings,不要被唬住了,忽略即可。

文章来源:https://blog.csdn.net/beilunc7/article/details/135302260
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。