项目介绍:yolov8m建筑分割
yolov8m-building-segmentation项目是一个基于YOLOv8版本的视觉图像分割应用。该项目旨在利用先进的YOLO(You Only Look Once)模型技术,从卫星图像中分割出建筑物。该项目使用了名为keremberke/satellite-building-segmentation的数据集进行训练和验证。
项目背景
项目背后的技术是由Ultralytics开发的YOLOv8模型。YOLO系列模型以其实时目标检测能力而享誉业界。本项目则特别关注图像分割任务,专注于从卫星影像中识别和分割建筑物。
数据集
项目使用的数据集是keremberke/satellite-building-segmentation。这是一个经过精心标注的卫星图像数据集,专门收集了各种建筑物的图像,用于训练和检验模型的分割效果。
模型性能
在使用相应的验证集进行测试后,该模型在精度(precision)上的表现如下:
- 在检测框(box)级别的mAP@0.5为0.62261。
- 在掩码(mask)级别的mAP@0.5为0.61275。
这些指标显示了该模型在定位和分割建筑物方面的良好性能。
使用指南
用户可以通过以下简单步骤使用该项目:
-
安装Ultralyticsplus库: 用户需要先安装Ultralyticsplus库(版本0.0.21),这是模型运行所必需的依赖。
pip install ultralyticsplus==0.0.21
-
加载模型并进行预测: 使用Python代码加载yolov8m-building-segmentation模型并执行图像预测。以下是示例代码:
from ultralyticsplus import YOLO, render_result # 加载模型 model = YOLO('keremberke/yolov8m-building-segmentation') # 设置模型参数 model.overrides['conf'] = 0.25 # NMS置信度阈值 model.overrides['iou'] = 0.45 # NMS IoU阈值 model.overrides['agnostic_nms'] = False # 非类agnostic NMS model.overrides['max_det'] = 1000 # 每张图像的最大检测数 # 设置图像 image = 'https://github.com/ultralytics/yolov5/raw/master/data/images/zidane.jpg' # 执行推理 results = model.predict(image) # 查看结果 print(results[0].boxes) print(results[0].masks) render = render_result(model=model, image=image, result=results[0]) render.show()
支持的标签
该项目的分割任务当前支持的标签为“Building”。
更多模型
用户还可以在awesome-yolov8-models网站上找到其他优秀的YOLOv8模型。项目无疑为各种计算机视觉应用提供了一个有力的工具,特别是需要在大规模卫星图像中进行建筑物检测和分割的场景。