Skip to content

V0.0.4-remake

Choose a tag to compare

@xinyang20 xinyang20 released this 09 Sep 12:56
· 4 commits to main since this release

LabelFlow V0.0.4-remake 更新说明

版本信息

  • 版本号: V0.0.4-remake
  • 发布日期: 2025年9月9日
  • 更新类型: 重大功能更新和关键问题修复

新增功能

1. 全面快捷键系统

  • 全局快捷键: 支持Ctrl+O(打开目录)、Ctrl+S(设置保存路径)、Ctrl+Q(退出)、Ctrl+A(关于页面)
  • 图片导航快捷键: Ctrl+Left(上一张)、Ctrl+Right(下一张)
  • 标签快捷键: Ctrl+0-9快速选择标签(仅在标签模式和混合模式下可用)
  • 快捷键配置: 设置保存在keys_setting.json文件中,支持自定义修改
  • 快捷键提示: 在标签模式和混合模式下显示快捷键提示

2. 页面布局重构

  • 固定布局优化: 右侧操作区组件布局修改为固定布局,统一字号
  • SHA256显示优化: 为SHA256预留两行空间,支持换行输出
  • 文件目录显示: 在右侧操作区底部新增文件目录显示框
  • 双击跳转功能: 支持通过双击文件列表实现跳转,允许间隔标注
  • 可调整分割面板: 支持拖拽调整左右面板大小

3. 图像还原功能

  • 智能图像恢复: 当工作目录下图像文件缺失但存在JSON文件时,自动从base64编码还原图像
  • 选择性还原: 仅在图像缺失时生效,部分图像存在时只还原缺失的图像
  • 完整性保护: 确保还原的图像与原始图像一致

4. 图像验证功能

  • 完整性检查: 重新计算图像SHA256与原SHA256进行对比
  • 自动更新: 发现偏差时重新计算并更新标注文件中的SHA256和base64编码
  • 内容保护: 验证过程中不改变标注内容(标签和描述内容)

5. 一键重命名功能

  • 批量重命名: 将工作目录下的图像重命名为IMG_XXXXXX格式,从000000开始递增
  • 同步更新: 同步转换已有标注文件的名称,更新JSON文件内部的filename属性
  • 危险操作保护: 属于危险功能,操作前弹出二次确认提示

6. 增强的图片查看功能

  • Ctrl+鼠标拖拽: 支持按住Ctrl键配合鼠标拖拽移动图片
  • 改进的缩放体验: 优化图片缩放和显示效果
  • 更好的交互体验: 提升图片查看的流畅性和响应速度

重大问题修复

1. 断点续标功能修复

  • 问题描述: 修复了断点续标功能完全失效的问题
  • 修复效果: 进入工作目录后自动检查标注文件,定位到第一个未标注的位置
  • 数据恢复: 正确恢复标注内容到界面显示,包括描述文本和标签选择状态
  • 兼容性保证: 支持V0.0.3+和V0.0.2(兼容模式)数据格式的正确加载

2. QCheckBox崩溃问题修复

  • 问题描述: 修复了标签模式下点击"下一张"按钮导致程序崩溃的问题
  • 根本原因: QCheckBox控件不支持setTextFormat()方法
  • 修复方案: 使用QHBoxLayout + QCheckBox + QLabel组合布局实现快捷键提示
  • 效果: 程序运行稳定,快捷键提示正常显示

3. JSON数据解析修复

  • 问题描述: 修复了"cannot access local variable 'json'"错误
  • 修复方案: 优化import语句位置,确保json模块正确导入
  • 数据处理: 增强JSON文件解析的健壮性和错误处理

功能改进

1. 用户界面优化

  • 快捷键提示: 在标签模式和混合模式下显示快捷键提示(浅灰色小字)
  • 分割面板: 支持拖拽调整左右面板大小,提供更灵活的布局
  • 文件列表: 底部文件目录显示,支持双击跳转
  • 危险操作提示: 重要操作前弹出确认对话框

2. 数据处理增强

  • 双重关联机制: 通过文件名和哈希值双重关联标注数据
  • 实时界面更新: 添加信号机制,数据更新时自动刷新界面
  • 兼容性处理: 默认关闭兼容模式,仅支持V0.0.3+格式,可手动开启V0.0.2兼容
  • 数据完整性: 增强数据保存和加载的错误处理

3. 标注工作流改进

  • 快捷键操作: Ctrl+0-9快速选择标签,Ctrl+Left/Right切换图片
  • 间隔标注: 支持双击文件列表跳转到任意图片
  • 智能定位: 自动定位到第一张未标注的图片
  • 内容恢复: 正确恢复已标注图片的标注内容

技术改进

1. 架构优化

  • 快捷键管理模块: 新增ShortcutManager类,统一管理所有快捷键
  • 信号机制增强: 添加current_image_annotation_updated信号,实现实时界面更新
  • 组件分离: UI组件、数据处理、快捷键管理等功能进一步模块化
  • 错误处理: 增强JSON解析和数据加载的错误处理机制

2. 性能提升

  • 双重数据关联: 通过文件名立即关联和哈希值异步关联的双重机制
  • 异步处理: 哈希计算在后台进行,不影响界面响应
  • 内存优化: 优化图片拖拽和缩放的内存使用
  • 加载效率: 改进标注数据的加载和关联效率

3. 稳定性增强

  • 崩溃修复: 解决QCheckBox setTextFormat()方法导致的程序崩溃
  • 数据安全: 增强JSON文件解析的健壮性
  • 兼容性控制: 提供兼容模式开关,用户可选择是否支持旧格式
  • 操作保护: 危险操作前的二次确认机制

兼容性变更

重要变更

  • 默认关闭兼容模式: V0.0.4版本默认仅支持V0.0.3+数据格式
  • V0.0.2格式支持: 需要在"设置"菜单中手动开启兼容模式
  • V0.0.1格式: 完全移除支持,不再兼容

数据格式

当前版本使用的标准格式:

{
  "filename": "IMG_001.jpg",
  "hash": "a1b2c3d4e5f6...",
  "describe": "图片的详细描述内容",
  "label": ["标签1", "标签2", "标签3"],
  "file_size": 2048576,
  "base64_data": "iVBORw0KGgoAAAANSUhEUgAA..."
}

兼容模式格式(需手动开启)

{
  "filename": "IMG_001.jpg",
  "hash": "a1b2c3d4e5f6...",
  "annotation": "图片描述内容",
  "file_size": 2048576,
  "base64_data": "iVBORw0KGgoAAAANSUhEUgAA..."
}

使用建议

1. 快捷键使用

  • 图片导航: 使用Ctrl+Left/Right快速切换图片,比点击按钮更高效
  • 标签选择: 在标签模式下使用Ctrl+0-9快速选择标签
  • 工作流程: 使用Ctrl+O打开目录,Ctrl+S设置保存路径
  • 快捷键自定义: 可编辑keys_setting.json文件自定义快捷键

2. 标注模式选择

  • 纯描述任务: 选择描述模式,专注于文字描述
  • 分类标记任务: 选择标签模式,利用快捷键快速标注
  • 复合标注任务: 选择混合模式,同时进行描述和标签标注

3. 高级功能使用

  • 间隔标注: 使用底部文件列表双击跳转到指定图片
  • 图像还原: 当图像文件缺失时,程序会自动从JSON文件还原
  • 批量重命名: 谨慎使用一键重命名功能,操作不可逆
  • 分割面板: 拖拽调整左右面板大小以适应不同屏幕

4. 兼容性设置

  • 新项目: 使用默认设置,支持最新的数据格式
  • 旧项目: 如需打开V0.0.2格式的项目,请在设置中开启兼容模式
  • 数据迁移: 建议将旧格式数据逐步迁移到新格式

升级注意事项

1. 兼容性变更

  • 重要: V0.0.4默认关闭兼容模式,仅支持V0.0.3+格式
  • V0.0.2项目: 需要在"设置"菜单中手动开启兼容模式
  • V0.0.1项目: 不再支持,需要先升级到V0.0.3格式

2. 数据安全

  • 升级前建议备份现有标注数据
  • 程序不会自动修改或删除原有数据文件
  • 新功能不影响现有标注内容的完整性

3. 功能迁移

  • 断点续标功能已修复,可正常恢复标注进度
  • 快捷键系统为新增功能,不影响原有操作方式
  • 所有新功能都是可选的,保持向后兼容

V0.0.4完整功能列表

核心功能

  • ✅ 多模式标注(描述/标签/混合)
  • ✅ 智能标签管理(缓存/提取/复用/快捷键)
  • ✅ 断点续标功能(修复完成,正确恢复标注进度)
  • ✅ 图片查看增强(缩放/滚轮/拖拽/分割面板)
  • ✅ 多语言界面(中英文动态切换)

新增功能

  • ✅ 全面快捷键系统(Ctrl+O/S/Q/A/Left/Right/0-9)
  • ✅ 图像还原功能(从JSON文件恢复缺失图像)
  • ✅ 图像验证功能(自动验证完整性并更新哈希值)
  • ✅ 一键重命名功能(批量重命名为IMG_XXXXXX格式)
  • ✅ 文件目录显示(双击跳转,支持间隔标注)
  • ✅ 危险操作保护(二次确认机制)

基础功能

  • ✅ 智能图片管理(SHA256哈希值)
  • ✅ 分片加载策略(大量图片高效处理)
  • ✅ 灵活保存方式(自动/手动模式)
  • ✅ 自定义保存路径
  • ✅ 数据备份保护(base64编码)
  • ✅ 直观界面(左右布局,可调整分割)
  • ✅ 进度跟踪(实时显示)
  • ✅ 版本管理(动态显示)
  • ✅ 兼容性支持(V0.0.3+默认,V0.0.2可选)

已修复的关键问题

  • ✅ 断点续标功能失效问题
  • ✅ QCheckBox setTextFormat()崩溃问题
  • ✅ JSON数据解析错误问题
  • ✅ 标注内容恢复失效问题
  • ✅ 快捷键系统失效问题

技术支持

如遇到问题或有功能建议,请通过以下方式联系:

感谢您使用Quick Label V0.0.4,本版本重点修复了关键问题并新增了多项实用功能,希望能为您的标注工作带来更高效、更稳定的体验!