跳转至内容

使用 Ultralytics YOLO11 进行目标裁剪

什么是对象裁剪?

使用 Ultralytics YOLO11 进行目标裁剪包括从图像或视频中隔离和提取特定的检测到的目标。YOLO11 模型的功能用于准确识别和描绘目标,从而实现精确裁剪,以进行进一步的分析或操作。



观看: 使用 Ultralytics YOLO 进行目标裁剪

对象裁剪的优势

  • 专注分析:YOLO11 有助于有针对性的目标裁剪,从而可以对场景中的单个项目进行深入检查或处理。
  • 减少数据量:通过仅提取相关目标,目标裁剪有助于最大限度地减少数据大小,从而提高存储、传输或后续计算任务的效率。
  • 增强精度:YOLO11 的物体检测精度可确保裁剪后的物体保持空间关系,为详细分析保留完整的视觉信息。

视觉效果

机场行李
使用 Ultralytics YOLO11 在机场传送带上裁剪行李箱
使用 Ultralytics YOLO11 在机场传送带上裁剪手提箱

使用 Ultralytics YOLO 进行目标裁剪

# Crop the objects
yolo solutions crop show=True

# Pass a source video
yolo solutions crop source="path/to/video.mp4"

# Crop specific classes
yolo solutions crop classes="[0, 2]"
import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

# Initialize object cropper
cropper = solutions.ObjectCropper(
    show=True,  # display the output
    model="yolo11n.pt",  # model for object cropping, e.g., yolo11x.pt.
    classes=[0, 2],  # crop specific classes such as person and car with the COCO pretrained model.
    # conf=0.5,  # adjust confidence threshold for the objects.
    # crop_dir="cropped-detections",  # set the directory name for cropped detections
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()

    if not success:
        print("Video frame is empty or processing is complete.")
        break

    results = cropper(im0)

    # print(results)  # access the output

cap.release()
cv2.destroyAllWindows()  # destroy all opened windows

当您提供可选的 crop_dir 参数,每个裁剪对象都会被写入该文件夹,文件名包括源图像名称和类别。这样就可以轻松检查检测结果或构建下游数据集,而无需编写额外的代码。

ObjectCropper 参数

这是一个包含以下内容的表格 ObjectCropper 参数:

参数类型默认值描述
modelstrNoneUltralytics YOLO 模型文件的路径。
crop_dirstr'cropped-detections'用于存储裁剪检测结果的目录名。

此外,以下可视化参数可供使用:

参数类型默认值描述
showboolFalse可视化参数: True,则在窗口中显示带注释的图像或视频。这对于开发或测试期间的即时视觉反馈非常有用。
line_widthNone or intNone指定边界框的线条宽度。 如果 None,则线条宽度会根据图像大小自动调整。 提供视觉自定义以提高清晰度。

常见问题

Ultralytics YOLO11 中的目标裁剪是什么,它是如何工作的?

使用 Ultralytics YOLO11 进行目标裁剪包括基于 YOLO11 的检测能力从图像或视频中隔离和提取特定目标。此过程允许通过利用 YOLO11 以高精度识别目标并相应地裁剪它们,从而实现专注分析、减少数据量和增强精度。有关深入的教程,请参阅目标裁剪示例

为什么我应该使用 Ultralytics YOLO11 进行目标裁剪,而不是其他解决方案?

Ultralytics YOLO11 以其精度、速度和易用性而著称。它允许详细而准确的对象检测和裁剪,这对于重点分析和需要高数据完整性的应用至关重要。此外,YOLO11 与 OpenVINOTensorRT 等工具无缝集成,适用于需要实时功能和在各种硬件上进行优化的部署。请在模型导出指南中了解其优势。

如何使用目标裁剪来减少数据集的数据量?

使用Ultralytics YOLO11 只对图像或视频中的相关对象进行裁剪,可以大大减少数据量,提高存储和处理效率。这一过程包括训练模型来detect 特定对象,然后利用detect 结果只裁剪和保存这些部分。欲了解更多有关Ultralytics YOLO11 功能的信息,请访问我们的快速入门指南

我可以使用 Ultralytics YOLO11 进行实时视频分析和目标裁剪吗?

是的,Ultralytics YOLO11 可以处理实时视频馈送,动态detect 和裁剪物体。该模型的高速推理能力使其成为监控、体育分析和自动检测系统等实时应用的理想选择。查看跟踪预测模式,了解如何实现实时处理。

高效运行 YOLO11 进行目标裁剪的硬件要求是什么?

Ultralytics YOLO11 已针对CPU 和GPU 环境进行了优化,但要获得最佳性能,尤其是实时或大容量推理,建议使用专用GPU (如NVIDIA 特斯拉、RTX 系列)。如果要在轻量级设备上部署,可考虑使用 CoreMLTFLite或Android有关支持的设备和格式的更多详情,请参阅我们的模型部署选项



📅 1 年前创建 ✏️ 19 天前更新
glenn-jocherRizwanMunawarMatthewNoyceUltralyticsAssistantIvorZhu331AyushExel

评论