(一)背景描述
因为有分类任务需要对已有数据进行分类,但是通过手动分类容易分错,并且分类也不够灵活(需要来回切换目录)。因此想写一个分类工具,用来辅助进行图像分类任务,提升分类效率。从网上找到一些可用工具,但是觉得不太符合自己的需求,因此想着自己写一个使用起来相对友好的工具。
(二)窗口设计
因为分类任务较为简单,因此分类的窗口也比较简单。主要分为图像展示,图像信息展示,图像标签,图像切换(上下张),图像分类信息记录(log),因此有如下窗口设计。
最终设计如下:
编写生成的gui界面如下:
跳转分类页面如下:
(三)功能介绍
-
分类标签自动生成
如下图所示,用户可以自己编写自己的标签文件,工具会自动生成标签选项
-
图像标签修改
图像如果分类完毕,如果觉得第一次分的不准确,可以返回重新分配。如下图所示,想要修改第四张图像标签从“固定翼_4”到"其他_5"
翻到第4张图像,更改标签为5,这里上一张和下一张都会触发保存功能
-
图像自动移动到类别子目录
-
保存后的图像会重新命名(这里用户可以根据自己需要修改代码,修改部分有注释)
图像存放位置如下:
(四)操作过程描述
- 首界面选择要分类的图像文件夹和标签文件,会将里面全部的jpg图像读取出来(其他格式修改源码)
- 分类界面对展示的图像进行分类,上下张操作会自动保存分类结果
- 分类界面下面会自动记录分类结果,用户可以查看分类信息
(五)源码下载连接
没有找到绑定文件的地方,好像下面的方式也能下载。下载不需要任何积分(免费)。后面看看能不能直接在界面绑定文件,能够直接下载。
(六)更新
使用过程发现bug一处,这里更新一下。在save_img处添加
self.current_label = self.label_index.get()