跳转至内容

使用 Ultralytics YOLO11 的停车场管理 🚀

什么是停车管理系统?

通过组织空间和监控可用性,使用 Ultralytics YOLO11 进行停车场管理可确保高效和安全的停车。YOLO11 可以通过实时车辆检测和对停车位占用情况的洞察来改善停车场管理。



观看: 如何使用 Ultralytics YOLO 🚀 实现停车管理

停车管理系统的优势?

  • 效率: 停车场管理优化了停车位的使用并减少了拥堵。
  • 安全保障:使用 YOLO11 进行停车管理,通过监控和安全措施提高人员和车辆的安全性。
  • 减少排放:使用 YOLO11 的停车管理系统可管理交通流量,从而最大限度地减少停车场内的怠速时间和排放。

实际应用

停车场管理系统 停车场管理系统
使用 Ultralytics YOLO11 进行停车场分析 使用 Ultralytics YOLO11 的停车场管理顶视图
使用 Ultralytics YOLO11 进行停车场管理鸟瞰 使用 Ultralytics YOLO11 的停车场管理顶视图

停车场管理系统代码工作流程

点选择现在很容易

在停车管理系统中,选择停车点是一项至关重要且复杂的任务。Ultralytics通过提供一个工具“停车位注释器”来简化此过程,该工具允许您定义停车场区域,这些区域稍后可用于其他处理。

步骤 1: 从您要管理的停车场的视频或摄像头流中捕获一帧。

步骤 2: 使用提供的代码启动图形界面,您可以在其中选择图像并通过鼠标单击开始勾勒停车区域轮廓以创建多边形。

停车位标注器 Ultralytics YOLO

安装的附加步骤 tkinter

一般来说, tkinter 已预先打包 python。但是,如果未打包,您可以使用以下突出显示的步骤安装它:

  • Linux:(Debian/Ubuntu): sudo apt install python3-tk
  • Fedora: sudo dnf install python3-tkinter
  • 架构: sudo pacman -S tk
  • Windows: 重新安装 python 并启用复选框 tcl/tk and IDLE可选功能 安装期间
  • MacOS: 从以下位置重新安装 python https://www.python.org/downloads/macos/brew install python-tk
from ultralytics import solutions

solutions.ParkingPtsSelection()

第三步: 使用多边形定义停车区域后,单击 save 将包含数据在内的 JSON 文件存储到您的工作目录中。

Ultralytics YOLO11 点选择演示

步骤 4: 现在,您可以利用提供的代码,通过 Ultralytics YOLO 进行停车管理。

使用 Ultralytics YOLO 进行停车管理

import cv2

from ultralytics import solutions

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

# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Initialize parking management object
parkingmanager = solutions.ParkingManagement(
    model="yolo11n.pt",  # path to model file
    json_file="bounding_boxes.json",  # path to parking annotations file
)

while cap.isOpened():
    ret, im0 = cap.read()
    if not ret:
        break

    results = parkingmanager(im0)

    # print(results)  # access the output

    video_writer.write(results.plot_im)  # write the processed frame.

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

ParkingManagement 参数

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

参数 类型 默认值 描述
model str None Ultralytics YOLO 模型文件的路径。
json_file str None 包含所有停车坐标数据的 JSON 文件路径。

字段 ParkingManagement 解决方案允许使用多个 track 参数:

参数 类型 默认值 描述
tracker str 'botsort.yaml' 指定要使用的跟踪算法,例如: bytetrack.yamlbotsort.yaml.
conf float 0.3 设置检测的置信度阈值;较低的值允许跟踪更多对象,但可能包含误报。
iou float 0.5 设置用于过滤重叠检测的 Intersection over Union (IoU) 阈值。
classes list None 按类别索引过滤结果。例如, classes=[0, 2, 3] 仅跟踪指定的类别。
verbose bool True 控制跟踪结果的显示,提供被跟踪对象的可视化输出。
device str None 指定用于推理的设备(例如, cpu, cuda:00)。允许用户在 CPU、特定 GPU 或其他计算设备之间进行选择,以执行模型。

此外,支持以下可视化选项:

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

常见问题

Ultralytics YOLO11 如何增强停车管理系统?

Ultralytics YOLO11 通过提供实时车辆检测和监控,极大地增强了停车管理系统。这可以优化停车位的使用,减少拥堵,并通过持续监控提高安全性。停车管理系统能够实现高效的交通流量,最大限度地减少停车场内的空闲时间和排放,从而为环境可持续性做出贡献。有关更多详细信息,请参阅停车管理代码工作流程

使用 Ultralytics YOLO11 进行智能停车有哪些好处?

使用 Ultralytics YOLO11 进行智能停车可带来诸多好处:

  • 效率: 优化停车位的使用并减少拥堵。
  • 安全保障:增强监控,确保车辆和行人的安全。
  • 环境影响:通过最大限度地减少车辆怠速时间来帮助减少排放。 在停车管理系统的优势部分中探索更多好处。

如何使用 Ultralytics YOLO11 定义停车位?

使用 Ultralytics YOLO11 定义停车位非常简单:

  1. 从视频或摄像头流中捕获帧。
  2. 使用提供的代码启动一个 GUI,用于选择图像并绘制多边形以定义停车位。
  3. 以 JSON 格式保存标记数据,以供进一步处理。有关全面的说明,请查看上面的“选择点”部分。

是否可以针对特定的停车管理需求自定义 YOLO11 模型?

是的,Ultralytics YOLO11 允许针对特定的停车管理需求进行定制。您可以调整参数,例如 已占用和可用区域颜色,文本显示边距等等。利用 ParkingManagement 类的 参数,您可以定制模型以满足您的特定需求,从而确保最高的效率和效能。

Ultralytics YOLO11 在停车场管理中有哪些实际应用?

Ultralytics YOLO11 被广泛应用于各种实际场景中的停车场管理,包括:

  • 停车位检测: 准确识别可用和已占用的车位。
  • 监控: 通过实时监控增强安全性。
  • 交通流量管理: 通过高效的交通处理减少空闲时间和拥堵。展示这些应用的图片可以在实际应用中找到。


📅 创建于 1 年前 ✏️ 更新于 20 天前

评论