王者荣耀英雄检测数据集
yolov5至yolo10通用王者荣耀数据集两份,都已经标注好了。
分别为仅标注敌方英雄和标注全体英雄
有对应的yolov10n和s训练的pt文件
一共1个G多一点。
接下来,欢迎来到王者荣耀!!!!
数据集名称
王者荣耀英雄检测数据集
数据集描述
该数据集旨在用于《王者荣耀》游戏中的英雄检测任务,涵盖了游戏对局中的英雄图像。数据集包含大量的图像及其对应的标注信息,可用于训练计算机视觉模型,以识别和定位游戏中的英雄。
数据规模
数据集共有两个版本,每个版本大约占用500MB的空间,合计超过1GB。
版本及类别
数据集包括两个不同的版本:
- 仅标注敌方英雄 (Enemy Heroes Only):此版本仅标注游戏中的敌方英雄。
- 标注全体英雄 (All Heroes):此版本标注游戏中所有英雄(包括友方和敌方)。
标注格式
数据集中的标注信息采用了YOLO格式的TXT文件,每个图像都有一个对应的标签文件,记录了每个英雄的位置信息(边界框坐标)和类别标签。此外,提供了预训练的模型权重文件,分别是针对YOLOv10n和YOLOv10s架构的.pt文件。
数据集结构
典型的数据集目录结构如下:
1honorking_hero_detection_dataset/
2├── EnemyHeroesOnly/
3│ ├── images/
4│ │ ├── img_0001.jpg
5│ │ ├── img_0002.jpg
6│ │ └── ...
7│ ├── labels/
8│ │ ├── img_0001.txt
9│ │ ├── img_0002.txt
10│ │ └── ...
11│ ├── yolov10n_weights.pt
12│ └── yolov10s_weights.pt
13└── AllHeroes/
14 ├── images/
15 │ ├── img_0001.jpg
16 │ ├── img_0002.jpg
17 │ └── ...
18 ├── labels/
19 │ ├── img_0001.txt
20 │ ├── img_0002.txt
21 │ └── ...
22 ├── yolov10n_weights.pt
23 └── yolov10s_weights.pt
应用场景
该数据集可以用于以下应用场景:
- 游戏AI:用于开发游戏中的AI系统,帮助玩家更好地理解和应对游戏中的局势。
- 辅助工具:开发游戏辅助工具,帮助玩家快速识别敌方英雄的位置。
- 竞技分析:用于竞技数据分析,了解游戏中的英雄分布情况。
- 科研分析:用于研究游戏图像处理技术和目标检测算法。
示例代码
以下是一个使用Python和相关库(如OpenCV、PyTorch等)来加载和展示数据集的简单示例代码:
python
深色版本
1import os
2import cv2
3import numpy as np
4from pathlib import Path
5
6# 数据集路径
7dataset_path = 'path/to/honorking_hero_detection_dataset/'
8
9# 加载图像和标签
10def load_image_and_label(image_path, label_path):
11 # 读取图像
12 image = cv2.imread(image_path)
13 # 解析标签文件
14 with open(label_path, 'r') as infile:
15 lines = infile.readlines()
16 objects = []
17 for line in lines:
18 data = line.strip().split()
19 class_id = int(data[0])
20 x_center, y_center, w, h = map(float, data[1:])
21 objects.append([x_center, y_center, w, h, class_id])
22 return image, objects
23
24# 展示图像
25def show_image_with_boxes(image, boxes):
26 img = image.copy()
27 for box in boxes:
28 x_center, y_center, w, h, class_id = box
29 w, h = int(w * img.shape[1]), int(h * img.shape[0])
30 x_center, y_center = int(x_center * img.shape[1]), int(y_center * img.shape[0])
31 xmin, xmax = x_center - w // 2, x_center + w // 2
32 ymin, ymax = y_center - h // 2, y_center + h // 2
33 cv2.rectangle(img, (xmin, ymin), (xmax, ymax), (0, 255, 0), 2)
34 cv2.putText(img, f'Hero {class_id}', (xmin, ymin - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
35 cv2.imshow('Image with Boxes', img)
36 cv2.waitKey(0)
37 cv2.destroyAllWindows()
38
39# 主函数
40if __name__ == "__main__":
41 version = 'EnemyHeroesOnly' # 或者 'AllHeroes'
42 images_dir = os.path.join(dataset_path, version, 'images')
43 labels_dir = os.path.join(dataset_path, version, 'labels')
44
45 # 获取图像列表
46 image_files = [f for f in os.listdir(images_dir) if f.endswith('.jpg')]
47
48 # 随机选择一张图像
49 selected_image = np.random.choice(image_files)
50 image_path = os.path.join(images_dir, selected_image)
51 label_path = os.path.join(labels_dir, selected_image.replace('.jpg', '.txt'))
52
53 # 加载图像和标签
54 image, boxes = load_image_and_label(image_path, label_path)
55
56 # 展示带有标注框的图像
57 show_image_with_boxes(image, boxes)
这段代码展示了如何加载图像和其对应的YOLO TXT标注文件,并在图像上绘制边界框和类别标签。您可以根据实际需求进一步扩展和修改这段代码,以适应您的具体应用场景。
示例代码:使用预训练模型进行推理
以下是使用YOLOv10预训练模型进行推理的示例代码:
1import torch
2import cv2
3import numpy as np
4from pathlib import Path
5
6# 数据集路径
7dataset_path = 'path/to/honorking_hero_detection_dataset/'
8version = 'EnemyHeroesOnly' # 或者 'AllHeroes'
9
10# 加载预训练模型
11weights_path = os.path.join(dataset_path, version, 'yolov10n_weights.pt')
12model = torch.hub.load('ultralytics/yolov5', 'custom', path=weights_path, force_reload=True)
13
14# 主函数
15if __name__ == "__main__":
16 images_dir = os.path.join(dataset_path, version, 'images')
17
18 # 获取图像列表
19 image_files = [f for f in os.listdir(images_dir) if f.endswith('.jpg')]
20
21 # 随机选择一张图像
22 selected_image = np.random.choice(image_files)
23 image_path = os.path.join(images_dir, selected_image)
24
25 # 使用预训练模型进行推理
26 results = model(image_path)
27 results.show() # 显示结果
28 results.save() # 保存结果图像
这段代码展示了如何使用YOLOv10预训练模型进行推理,并显示和保存推理结果。您可以根据实际需求进一步扩展和修改这段代码,以适应您的具体应用场景。如果需要使用YOLOv10s模型,只需将yolov10n_weights.pt
替换为yolov10s_weights.pt
即可。
原文地址:https://blog.csdn.net/2301_78240361/article/details/142373557
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!