AuxiliaryImageTagging 软件使用说明指南
文章目录
写在前面
该项目是博主本人的本科毕业设计的项目,供深度学习用户学习和使用。
项目的源代码地址如下:(在答辩之前暂时不公开,答辩之后会陆续公开项目的下载地址)
本文是一篇先导篇,主要是用来指导用户如何使用这款软件。
本项目是为水下目标检测实现的一个辅助数据标注的平台。
本功能指南不包含模型算法训练有关的帮助,涉及模型算法训练相关的部分,后续会更新另外的指导博客。
本功能指南默认在根据提供的
YOLO
代码训练了自己的YOLOv5
的模型或者直接使用博主个人的算法模型的情况下进行。
Original UI
- A Total View
刚进入系统的时候会默认打开APP的Icon图片,如图所示,是一个以水下为背景的图片,寓意为我们的定位是水下目标检测,中间有一个框矩形框寓意为深度学习目标检测经典的矩形框数据标注。
- actions in fileMenu
功能按钮 | 功能阐述 |
---|---|
Open Image | 打开一张图片以进行数据标注。 |
Select Image Path | 选择一个图片文件夹,一次性打开多张图片。 |
Change Save Path | 修改标签文件输出和保存的文件夹。 |
Save | 导出并保存当前的标签为PascalVOC格式的XML文件。 |
Quit | 退出程序,退出程序前会提醒是否保存文件。 |
- actions in editMenu
功能按钮 | 功能阐述 |
---|---|
Next Image | 当以文件夹的形式打开图片的时候,获取下一张图片,有绑定快捷键。 |
Previous Image | 当以文件夹的形式打开图片的时候,获取上一张图片,有绑定快捷键。 |
Edit Label | 当选中了某一个标签的时候,可以编辑当前标签的类别文本标签 |
Delete RectBox | 当选中了某一个标签的时候,可以删除当前标签 |
Start Algorithm | 当选择好图片文件夹和输出文件夹后,启动YOLOv5_s算法自动标注打开的图片文件。 |
- actions in helpMenu
功能按钮 | 功能阐述 |
---|---|
Guide | 打开浏览器的使用指南博客查看系统的具体用法。 |
- toolBar
功能按钮 | 功能阐述 |
---|---|
Open | 打开一张图片以进行数据标注。 |
Open Dir | 选择一个图片文件夹,一次性打开多张图片。 |
Change Save Dir | 修改标签文件输出和保存的文件夹。 |
Next Image | 当以文件夹的形式打开图片的时候,获取下一张图片,有绑定快捷键。 |
Pre Image | 当以文件夹的形式打开图片的时候,获取上一张图片,有绑定快捷键。 |
Save | 导出并保存当前的标签为PascalVOC格式的XML文件。 |
PascalVOC | 用来选择当前图片数据导出的标签格式,目前仅支持PascalVOC格式。 |
Edit_RectBox / Create_Rectbox | 默认为编辑模式,可以编辑当前打开的标签文件。/ 点击后会进入创建模式,可以为图片添加新的标签矩形框。 |
Edit_Label | 当选中了某一个标签的时候,可以编辑当前标签的类别文本标签 |
Delete_RectBox | 当选中了某一个标签的时候,可以删除当前标签 |
Start_Algorithm | 当选择好图片文件夹和输出文件夹后,启动YOLOv5_s算法自动标注打开的图片文件。 |
1. 主要功能
- 导入单个图片文件
- 导入图片文件夹
.jpg, .jepg, .png
- 获取上(下)一张图片
- 手动标注
- 修改标注框:包括整体位置平移,基于顶点修改标注框大小,标签等信息
- 删除选中的标注框
- 导出和导入
PascalVOC
格式数据集 - 采用YOLOv5_s目标检测模型对特定水下目标图片进行数据预标注
- 在网页查看系统的引导使用博客。
快捷键
键位 | 功能 |
---|---|
方向左键 | 获取上一张图片 |
方向右键 | 获取下一张图片 |
CTRL + S | 快速保存 |
CTRL + 鼠标滚轮 | 图片按比例放大缩小 |
2. 主要功能详细使用指南
2.1 打开单张图片
- 单击左侧工具栏上的
Open
,弹出文件选择框,自由选择合适的路径找到自己准备标注的图片文件打开准备标注:(仅支持.jpg .jepg .png
格式的图片。)
- 选中图片:
- 打开图片:
- (当图片比较大的时候会出现 水平方向和垂直方向的滑动条)
- (图片打开的时候默认进入的是编辑模式)
2.2 创建模式
- 在工具栏中点击
Edit_Rectbox
进入Create_Rectbox
:
- 点击
OK
确认后: Edit_Rectbox
标签替换成Create_Rectbox
标签;- 当鼠标出现在图片上的时候,鼠标的形状变成了 黑色十字 状,且两端会延申出延长线来辅助我们进行矩形框的标注。
- 选择好合适的左上顶点后,按住鼠标左键,拖动直到找到了合适的右下顶点,松开鼠标左键:
- 这时候系统中显示的带斜线填充背景的矩形框就是我们完成的一个标记的绘制,绘制完毕后松开鼠标左键会弹出一个输入框,用于输入标注的类别,系统会根据我们输入的标签值来设置绘制的线条的颜色。
- 当我输入
海胆
:
- 点击确定后:
- 矩形框就被正常绘制,且标签出现在
矩形框的左上角
。
- 只要还处在
编辑模式
下,就可以不断进行标签的绘制: - 并且
类别文本标签
的文本会默认出现上一次标注的类别,可以方便用户进行快速标注。
2.3 编辑模式
- 再次点击
Create_Rectbox
标签替换成Edit_Rectbox
标签,切换到编辑模式:
- 点击
OK
确认后:
选中内部式选取:
- 这时候我的鼠标移动到我标签上的时候,我就可以通过单击矩形框内部来选中当前的矩形标签框:
- 被选中之后,矩形标签框会呈现高亮的状态:
选中顶点式选取:
- 也可以通过单击矩形框顶点来选中当前的矩形标签框:
- 被选中顶点之后,矩形标签框会呈现高亮,顶点也会高亮成红色,被选中的那个顶点会改变形状为正方形:
整体平移式移动:(改变位置)
- 当选中了标签之后,用户可以在按住鼠标左键的情况下拖动矩形标签框来对其进行整体平移:
顶点平移式拉伸:(改变大小)
- 当通过顶点选中了标签之后,用户可以通过拖拽顶点来改变当前的矩形标签框的大小:
- 变小:
- 变大:
编辑类别文本标签
- 当处于选中模式下的时候,可以通过点击工具栏中的
Edit_Label
按钮来换出输入框,修改当前标签的类别文本标签值:
- 编辑输入框中的文字,修改后保存:
- 修改后的标签会立即刷新:
删除矩形框标签:
- 当我觉得这个标签我不需要的时候,我可以通过选中标签后,点击工具栏中的
Delete_RectBox
来删除当前的矩形框标签:
2.4 保存标签文件(PascalVOC格式)
- 当我完成了对一个图片的标注了之后,我就可以点击工具栏的
Save
按钮或者使用我们日常熟悉的Ctrl + S
的快捷键来进行标签文件的保存。
- 这时候,PascalVOC格式的标签就会导出到我们预设的
output/annotations
文件下了:
PascalVOC
格式的标签文件的大体信息如下:
2.5 打开图片文件夹(多张图片)
- 点击工具栏中的
Open Image Dir
打开一个图片文件夹
- 打开后,会默认展示这个图片文件夹中的第一张图片:
打开下一张图片:
- 点击工具栏中的
Next Image
按钮,或者直接敲击键盘上的方向键右键,即可打开该文件夹中的下一张图片: - 右下角的状态栏会提醒当前图片文件所在的本地绝对路径,以及它在当前的图片的第几张
打开上一张图片:
- 点击工具栏中的
Pre Image
按钮,或者直接敲击键盘上的方向键左键,即可打开该文件夹中的上一张图片: - 右下角的状态栏会提醒当前图片文件所在的本地绝对路径,以及它在当前的图片的第几张:
- 持续点击上一张图片依然会停留在第一张,系统有对边界值进行限制。
2.6 修改标签输出的位置
- 我们可以通过单击工具栏中的
Change Save Dir
按钮,来另外选择我们打算输出标签的位置。
- 修改后会提示当前的标签输出路径的绝对路径信息。
2.7 使用算法自动数据标注
Before ALL —— Train Your Own Model First!
使用这部分的功能的时候,请先确保你已经基于本项目整理(非博主本人原创)的YOLO部分的算法训练代码进行了自己的数据集的训练,并获得了自己所需的YOLOv5目标检测算法后,配置完毕后使用。
模型参数文件放在这里:
请在
support_classes.txt
文件中填入你的算法所需检测的物体类别:
请在
yolo_tool
中指定好你自己的模型所在的路径:
Continue
- 使用算法标注之前必须先指定好
待标注的图片文件夹
和标签输出的文件夹
,否则不允许进行算法标注。
- 使用算法进行标注的过程中不能重复调用算法标注:
- 在算法运行的过程中可以同步进行手动标注:
算法标注我们是采用多线程来进行,所以在算法进行数据标注的过程中,主线程并不会阻塞住,而是可以正常进行手动数据修正和标注,同时我们会发现,当我们打开上一张或者下一张图片的时候,已经可以正常读取算法标注出来的标签。
- 在算法标注结束后
子线程会发出一个信号,使得主线程调用函数,弹出信息框提醒用户,现在已经完成了算法标注。
3. 注意事项
3.1. 如何打开已有的标签数据:
特别注意,打开图片的时候,系统会自动会自动查看当前指定的标签输出文件夹内是否
有和图片同名的Pascal格式的XML文件
如果有的话,就会自动载入这些标签数据。