自动标注X-AnyLabeling神器实现扑克牌标注
1、X-AnyLabeling下载
最近需要标注扑克牌识别数据集,但是手动标注实在太麻烦了,发现一款超级好用的标注标注软件:X-AnyLabeling。不仅支持多种格式,多种标注方式,还提供了许多模型。
X-AnyLabeling是一款出色的注释工具,其灵感来自LabelImg、roLabelImg、Labelme和Anylabeling等著名项目。它超越了普通注释工具的领域,代表着自动化数据注释的未来迈出了一大步。这种尖端工具不仅简化了注释过程,还无缝集成了最先进的人工智能模型,以提供卓越的结果。X-AnyLabeling 非常注重实际应用,专门为开发人员提供功能丰富的工业级解决方案,用于在各种复杂任务中自动执行注释和数据处理。
项目github地址:https://github.com/CVHub520/X-AnyLabeling
下载后解压之后是这样的。。。。

操作步骤:
1】安装环境
我使用的是anaconda
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple2】运行app.py文件

特点:
- 支持导入images和videos.
- CPU以及- GPU按需选择的推理支持。
- 兼容多种SOTA深度学习算法。
- one-click所有图像的单帧预测和处理。
- COCO-JSON、- VOC-XML、- YOLOv5-TXT和- DOTA-TXT等格式的导出选项- MOT-CSV。
- 与流行的框架集成,例如PaddlePaddle、OpenMMLab、timm等。
- 提供全面help documentation且活跃的developer community support.
- 适应各种视觉任务,例如detection、segmentation、face recognition等。
- 模块化设计,使用户能够根据自己的具体需求编译系统,并支持定制和进一步开发。
- polygons、- rectangles、- rotation、- circles、- lines、 和的图像注释功能- points以及- text detection、- recognition和- KIE注释。
基本用法:
- 使用上述说明构建并启动。
- 单击Change Output Dir指定Menu/File输出目录;否则默认保存在当前图片路径。
- 单击Open/?Open Dir/Open Video选择特定文件、文件夹或视频。
- 单击Start drawing xxx左侧工具栏或Auto Lalbeling控件上的按钮即可启动。
- 单击并释放鼠标左键以选择一个区域来注释矩形框。或者,您可以按“运行(i)”键进行一键处理。
注意:注释将保存到您指定的文件夹中,您可以参考以下热键来加快工作流程。
高级用法:
- 选择左侧的AutoLalbeing按钮或按快捷键“Ctrl+A”激活自动标注。
- 从下拉菜单“模型”中选择其中之一Segment Anything-liked Models,其中“定量”表示模型的量化。
- 用于Auto segmentation marking tools标记物体。- +Point:添加属于该对象的点。
- -Point:删除要从对象中排除的点。
- +矩形:绘制包含对象的矩形。Segment Anything 会自动分割对象。
- 清除:清除所有自动分割标记。
- 完成对象(f):完成当前标记。完成对象后,您可以输入标签名称并保存对象。
 
2、试用

先打开文件,再使用AI标注,选择模型之后,就瓦特了,模型无法下载,emmmmm,这能难倒我???
3、【尝试一】加载已有模型
解决办法:自行下载和添加模型的方法 · Issue #23 · CVHub520/X-AnyLabeling · GitHub
我按照这个方法,复现了一遍。
1、按照路径打开文件夹

2、复制yolov5x.yaml文件到任意路径下,使用任意可打开的软件打开就行,我使用VS打开的


3、下载模型
地址:https://github.com/CVHub520/X-AnyLabeling/releases/download/v0.1.0/yolov5x.onnx
模型下好后,放置路径如下图

修改本路径下的yolov5x.yaml下的model_path,记得保存哦
我的路径:D:\Graduation_Project_Coding\companyWork\Make_label\X-AnyLabeling-main\anylabeling\configs\auto_labeling\yolov5x.onnx

4、运行app.py文件

搞定问题一。。。
4、【了解】模型列表
项目地址:https://github.com/CVHub520/X-AnyLabeling/blob/main/docs/models_list.md
涉及的模型类别:
1、分类

2、关键点检测


3、车道检测

4、多目标检测

5、物体检测



6、光学符号识别

7、分段任意模型





8、分割

9、联合任务

10、视觉语言法学硕士

5、【尝试二】导入自训练模型 (扑克牌识别)
1】准备模型的yaml文件和onnx格式的模型文件,文件存放路径及文件如下图。

yaml文件存放的内容:
type: yolov5 name: yolov5-r20231229-puke display_name: puke detection model_path: puke_best_exp24_l.onnx input_width: 640 input_height: 640 stride: 32 nms_threshold: 0.45 confidence_threshold: 0.45 classes: - Ad - Ac - As - Acd ...
2】修改models.yaml文件,在最后添加两行内容,如下
- model_name: "yolov5-r20231229-puke" config_file: ":/yolov5-l-puke.yaml"
3】加载模型



点击箭头这里的模型,即可加载成功。

如果没出现箭头标注的模型,就点击加载自定义模型,加载自制作的yaml文件就可以加载出来了。(切记切记)
报错问题:
RuntimeError: module compiled against API version 0xe but this version of numpy is 0xd?
升级numpy即可,
pip install numpy --upgrade
参考博主:解决 RuntimeError: module compiled against API version 0xf but this version of numpy is 0xd-CSDN博客
6、扑克牌数据集
?puke数据集,yolo格式,训练集604张,包含70张负样本,正样本包含2种背景,验证集128张,包含1种背景,且与训练集不同,图片格式png。
数据集包含54个类,统一类别拍摄,包含实例均衡,训练之前做了图像处理。
训练集示例:

验证集示例:

7、【尝试三】自动标注扑克牌数据集
点击运行图标,实现自动标注

推理结束后没有看到框???继续往下看

报错问题:
Error in predict_shapes: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: images for the following indices index: 0 Got: 1 Expected: 32
 Please fix either the inputs or the model.
运行export.py文件时,将batch_size设置为1,重新导出onnx格式,替换之前的puke_best_exp24_l.onnx文件即可。
参考博主:
yolov5 onnx推理报错_onnxruntime.capi.onnxruntime_pybind11_state.invali-CSDN博客

搞定!!!!!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!