image_captioner

一个由新手编写的Flutter/Dart Android应用程序,用于为文件夹中的图片生成文本文件(字幕/注释),目的是支持为训练生成有效的Stable Diffusion数据集

image

注意事项

  • 该应用程序会提示您在首次启动时创建一个具有读/写权限的目录;因为Android很笨,即使启用了“全部文件权限”开关,也无法访问任何地方。
  • 要使图片文件夹可供应用访问
    • 当应用提示选择目录时,它也会提示您创建一个新目录。创建该目录
    • 创建新(空)目录后,退出应用,然后使用Google Files或Total Commander等工具将数据集图片复制到新目录中
    • 重新打开应用以加载您的图片目录。
    • 然后,您将能够浏览图片,并边进行字幕/注释的创建。
  • 没有多选/批量操作支持,或者任何花哨的功能,但这对于学习Flutter/Dart来说是一个不错的初步实践。
  • 文本文件会与选定的图片一起添加,文件名为<image_name>.txt
  • 尽管此项目有iOS部分,但它尚未构建和测试
  • 目前使用Android Studio“Giraffe”进行开发
  • 应用程序仅支持深色模式主题,因为我太懒了,不想实现切换或其他花哨的功能

未来功能愿望清单

  • 修复应用名称在应用列表中显示为image_captioner的问题。应该更漂亮一些。
  • 修复应用图标是默认的Flutter图标的问题
  • 以网格形式显示图片(类似于常规照片库应用),并支持选择多张图片时的批量操作(例如,为所有选定的图片附加前缀/后缀标签//添加/删除特定标签等)
  • 仍然允许通过选择一张图片来查看单张图片,然后像平常一样支持下一张/上一张
  • 记录在注释工作中常用的标签,并提供自动完成选项和/或文本输入下方的可选标签列表,以节省时间
  • 能够在我们需要的地方读/写,而无需愚蠢的权限阻碍
  • 支持生成数据集中所有图片的翻转版本,并在单个过程中处理翻转副本的标签(即,在一个图片上更改的标签应反映在翻转图片上,而无需向最终用户显示两张图片)
  • iOS应用测试/构建
  • 用于自动化APK构建的Github Actions
  • 发布到F-Droid
  • 添加一些测试?
  • 在多个Android版本上进行验证(目前仅手动测试了Android 11 + 13)
  • 审查其他应用程序的功能(例如 https://github.com/toshiaki1729/stable-diffusion-webui-dataset-tag-editor),看看是否有其他功能适合移植到移动端?
  • 看看是否有需求通过Flutter将此应用程序扩展到Windows/Mac/浏览器桌面应用?
  • 添加删除图片的支持(带有安全确认)
    • 添加基本编辑支持,特别是裁剪!

GitHub

查看 Github