图像描述编辑器 (Image Caption Editor)

YujunCui/ImageCaptionEditor: A graphical interface tool for editing image-text pair data, supporting two data formats: image_json_pair format and message format.https://github.com/YujunCui/ImageCaptionEditor一个用于编辑图像-文本对数据的图形界面工具,支持两种数据格式:image_json_pair格式和message格式。

如果有帮助到大家,请多多点赞!

功能特点

  • 支持两种数据格式:

    • image_json_pair格式:每个图像文件对应一个同名的JSON文件,JSON文件中包含图像描述信息

    • message格式:一个JSON文件包含多个图像描述条目,每个条目可以引用多个图像文件

  • 多语言界面支持(中文/英文)

  • 图像预览功能,支持缩放

  • 文本编辑区域,支持JSON格式的描述编辑

  • 导航功能:支持前后浏览、跳转到指定图像

  • 键盘快捷键支持,提高操作效率

界面介绍

主要组件

  1. 左侧控制面板

    • 语言选择:支持中英文界面切换

    • 模式选择:选择数据格式(image_json_pair或message)

    • 目录设置:选择包含数据的目录

    • 图像导航:前后浏览图像,跳转到指定图像

    • 文本编辑:进入编辑模式

    • 信息显示:显示图像总数等信息

  2. 右侧显示区域

    • 图像预览区域:显示当前图像,支持缩放

    • 文本编辑区域:显示和编辑图像描述的JSON数据

使用方法

数据格式说明

image_json_pair格式

该格式要求每个图像文件都有一个对应的同名JSON文件,例如:

复制代码
data/
├── image1.jpg
├── image1.json
├── image2.png
└── image2.json

其中JSON文件内容格式如下:

复制代码
[
  {
    "vision_path": "D:\\Data\\mllm_testdata\\test_imgs\\有肢体冲突\\0.jpg",
    "answer": "一对情侣在户外,互相嬉闹,背景有树木和蓝天。"
  }
]
message格式

该格式使用一个JSON文件包含所有图像描述信息:

复制代码
[
  {
    "messages": [
      {
        "content": "<image>请简短描述图片内容。",
        "role": "user"
      },
      {
        "content": "一对情侣在户外互相嬉闹,背景有树木和蓝天。",
        "role": "assistant"
      }
    ],
    "images": [
      "D:\\Data\\mllm_testdata\\test_imgs\\有肢体冲突\\0.jpg"
    ]
  },
  {
    "messages": [
      {
        "content": "<image>请简短描述图片内容。",
        "role": "user"
      },
      {
        "content": "四人围成一圈,用竹竿互相推搡。",
        "role": "assistant"
      }
    ],
    "images": [
      "D:\\Data\\mllm_testdata\\test_imgs\\有肢体冲突\\71a046b26d52218a15be3fecc938f246.jpeg"
    ]
  }
]

操作指南

  1. 选择数据目录

    • 点击"选择目录"按钮,选择包含图像和JSON文件的目录
  2. 浏览图像

    • 使用"第一张"、"上一张"、"下一张"、"最后一张"按钮导航

    • 使用键盘快捷键:Home(第一张)、End(最后一张)、F(下一张)、D(上一张)

    • 在跳转输入框中输入序号直接跳转到指定图像

  3. 查看图像

    • 图像会自动显示在左侧预览区域

    • 使用鼠标滚轮上下滚动查看多张图像

    • 使用Ctrl+鼠标滚轮进行图像缩放,但是图像会被限制在图像预览区域

  4. 编辑描述

    • 点击"编辑文本"按钮或按E键进入编辑模式

    • 在文本编辑区域修改JSON格式的描述内容

    • 按Ctrl+S保存修改,或按Esc取消编辑

    • 点击"保存修改"按钮确认保存,或点击"退出编辑"按钮放弃修改

  5. 界面语言切换

    • 在"Language / 语言"选项中选择English或中文

快捷键列表

快捷键 功能
Ctrl+S 保存修改
Ctrl+Z 撤销
Ctrl+Y 重做
Esc 退出编辑模式
E 进入编辑模式
F 下一张图像
D 上一张图像
Home 第一张图像
End 最后一张图像
Ctrl+鼠标滚轮 图像缩放
Ctrl+0 重置图像缩放

注意事项

  1. 确保JSON文件格式正确,否则可能导致程序出错

  2. 图像文件和JSON文件需要正确对应

  3. 在message格式中,图像路径可以是绝对路径或相对于JSON文件的相对路径

  4. 编辑时请保持JSON格式的正确性,否则无法保存

  5. 程序会自动保存每张图片的缩放状态,方便再次查看时保持相同的缩放比例

  6. 程序在处理大量数据时可能会卡顿,请分批处理

相关推荐
山峰哥4 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器
holeer4 天前
【V1.0】Typora 中的 HTML 支持|软件文档自翻译
前端·编辑器·html·typora·web·markdown·文档
硬汉嵌入式4 天前
Vim 9.2版本正式发布
编辑器·vim
吹牛不交税4 天前
关于vscode左侧资源管理器目录层级疑似异常的问题
ide·vscode·编辑器
No8g攻城狮5 天前
【Linux】Linux nano 编辑器全攻略:从入门到精通
linux·运维·编辑器·nano
你怎么知道我是队长5 天前
VsCode插件推荐---Todo Tree
ide·vscode·编辑器
becatjd5 天前
VScode的claude code插件报错command ‘claude-vscode.editor.openLast‘ not found
ide·vscode·编辑器·claude·anthropic·claude code
BIBI20495 天前
下载指定历史版本 VSCode 或 VSCode Insider
ide·vscode·编辑器
johnny2335 天前
编辑器和笔记软件汇总:Typst、Reminds、Memos、Editor、MDX Notes、Jotty
笔记·编辑器
宫瑾5 天前
vscode未定义标识符报错的解决方法
ide·vscode·编辑器