YOLOv8 OBB介绍
时间: 2024-12-29 09:23:31 浏览: 9
### YOLOv8 中的 Oriented Bounding Box (OBB)
YOLOv8引入了对定向边界框(Oriented Bounding Box, OBB)的支持,这使得模型能够处理具有任意方向的对象检测任务。传统的目标检测方法通常只考虑矩形边界框(水平或垂直),而忽略了物体可能存在的旋转角度。然而,在某些应用场景下,比如遥感图像中的飞机、船舶等目标往往呈现出不同的朝向,此时采用OBB可以更精确地描述这些对象的位置和姿态。
#### 定向目标检测
为了实现这一功能,YOLOv8采用了专门设计用于解决此类问题的技术——即面向对象检测(Oriented Object Detection)[^1]。该技术允许网络预测每个候选区域内的五个参数:中心坐标(x,y),宽度w,高度h以及旋转角θ。通过这种方式,即使当目标处于倾斜状态时也能被准确定位并分类。
#### 代码示例
下面是一个简单的Python代码片段,展示了如何利用YOLOv8进行带有OBB的任务:
```python
from ultralytics import YOLO
model = YOLO('yolov8n-pose.pt') # 加载预训练模型
results = model.predict(source='path/to/image', conf=0.25, iou=0.7, save=True, obb=True)
for result in results:
boxes = result.boxes.cpu().numpy()[:, :5] # 获取前四个值作为位置信息加上第五个值表示旋转角度
```
此段代码加载了一个名为`'yolov8n-pose.pt'` 的预训练权重文件,并设置了置信度阈值(`conf`)和平滑非极大抑制交并比(`iou`)来过滤掉低质量的结果;最后设置 `obb=True` 参数开启对于定向边界的计算模式。
阅读全文