Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
Ultralytics YOLO

Ultralytics YOLOv8 助力打造更智能的停车管理系统

Ultralytics YOLOv8 模型可以让停车管理系统变得更智能。学习实时管理停车位,打造你自己的智能停车解决方案。

Abirami VinaAbirami Vina5 分钟阅读
Ultralytics YOLOv8 模型可以让停车管理系统变得更智能。学习实时管理停车位,打造你自己的智能停车解决方案。

开车绕圈找停车位可能让人心烦意乱,尤其是在你快迟到的时候。传统的找车位方式既繁琐又耗时。不过,由人工智能 (AI) 和计算机视觉驱动的停车管理系统可以让事情变得简单。它可以让停车位是否空闲更容易预测,并减少交通拥堵。

在本文中,我们将学习如何利用人工智能和计算机视觉升级停车管理系统。我们还会逐步讲解一个代码示例,展示如何使用 Ultralytics YOLOv8 模型创建支持计算机视觉的停车管理系统。

传统停车场管理面临的问题#

在讨论 AI 增强型智能停车管理系统之前,我们先来看看传统停车管理系统面临的问题。

传统系统的一大问题是停车位过于拥挤:停车场里的汽车数量超过了可用车位。除了浪费时间寻找车位,车位拥挤还会导致燃油消耗增加和空气污染。另一个问题是驾驶员的压力。根据一项调查,约 27% 的人至少会花 30 分钟寻找停车位。此外,43% 的人承认曾因停车位与陌生人发生口角。

一名压力重重的司机单手紧握方向盘,另一只手按着额头,乘客则望向窗外

图 1。焦虑的驾驶员。图片来源:Envato Elements。

AI 让停车场管理更轻松#

集成 AI 的停车场旨在解决传统停车管理系统面临的问题。Ultralytics YOLOv8 等计算机视觉模型搭配高清摄像头,可以监控停车场,并实时更新车位的空闲和占用状态。

这是如何实现的?计算机视觉模型可以分析高清摄像头拍摄的画面,检测车辆、跟踪车辆移动,并识别空闲车位。Ultralytics YOLOv8 模型支持目标检测和目标跟踪等计算机视觉任务,能够准确识别视频画面中的车辆并对其分类。通过将检测到的车辆位置与预先定义的停车位进行比较,系统就能判断某个车位是否已被占用。

YOLOv8 检测停车位

图 2。YOLOv8 检测停车位。

基于视觉的系统提供的停车位空闲信息,可以集成到不同应用中并进一步拓展:

  • 移动应用:移动应用可以显示实时车位信息,帮助驾驶员快速、轻松地找到空闲车位。
  • 数字标牌:停车场入口处的数字标牌可以显示空余车位数量,并引导驾驶员前往最近的空位。
  • 自动停车系统:这些数据可用于控制自动栏杆和闸门,仅在有空位时允许车辆进入,并引导驾驶员前往最近的空位。

停车管理系统的优势#

了解停车位的空闲情况能带来诸多优势。实时更新可帮助驾驶员直接前往空闲车位,让交通流动更顺畅,也减轻寻找车位的压力。对于运营者来说,了解车位的使用情况有助于更好地管理停车场,通过实时监控加强安保,并迅速应对任何突发事件。

停车功能自动化可以减少对人工的需求,从而降低成本。AI 系统让用户更容易通过移动应用或网页应用预订车位,驾驶员也能收到车位空闲通知,节省时间和金钱。城市规划者可以利用这些数据设计更合理的道路布局、实施有效的停车规定,并建设新的停车设施,让城市运行更高效、出行更方便。

通过移动应用预订停车位

图 3. 通过移动应用预约停车位。

亲自试试:使用 YOLOv8 进行停车管理#

现在,我们已经清楚了解停车管理及其优势,接下来就来看看如何构建基于视觉的停车管理系统。我们将使用 YOLOv8 模型检测车辆、监控停车位并判断车位的占用状态。

在本例中,你可以使用停车场的视频或摄像头流。开始之前请记住,该系统依赖准确的车辆检测和预先定义的停车位坐标。

摄像头校准和环境因素会影响车位检测和占用状态判断的准确性。处理速度和准确性也可能因你的 GPU 性能而异。

步骤 1:首先安装 Ultralytics 软件包。打开命令提示符或终端,然后运行以下命令。

pip install ultralytics

有关安装过程的详细说明和最佳实践,请参阅我们的 Ultralytics 安装指南。如果你在安装 YOLOv8 所需的软件包时遇到问题,我们的常见问题指南提供了解决方案和实用技巧。

步骤 2:我们需要预先选择停车位,以便在你的视频素材中标记感兴趣区域。运行这段代码,打开用于预选停车位的用户界面。

from ultralytics import solutions

solutions.ParkingPtsSelection()

如下所示,运行这段代码后会打开一个用户界面。截取停车场输入视频中的一帧或屏幕截图,然后上传。围绕停车位绘制边界框后,点击保存选项。所选停车位的信息将保存到名为 ‘bounding_boxes.json’ 的 JSON 文件中。

在视频素材中选择停车位

图 4. 在视频素材中选择停车位。

步骤 3:现在,我们来编写停车管理的主要代码。首先导入所需的库,并定义我们在步骤 2 中创建的 JSON 文件路径。

import cv2
from ultralytics import solutions

polygon_json_path = "bounding_boxes.json"

步骤 4:创建一个 VideoCapture 对象来读取输入视频文件,并确保视频文件已成功打开。

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

步骤 5:初始化所需的视频属性,例如宽度、高度和每秒帧数。

w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

步骤 6:接下来,我们可以创建一个 VideoWriter 对象来保存最终处理后的视频文件。

video_writer = cv2.VideoWriter("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

步骤 7:在这里,我们使用 Ultralytics YOLOv8 模型和保存在 JSON 文件中的停车区域来初始化停车管理系统。

management = solutions.ParkingManagement(model="yolov8n.pt", json_file=polygon_json_path)

步骤 8:现在,我们逐帧处理视频文件。如果没有读取到任何帧,循环就会中断。

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

步骤 9:在循环中,我们将每一帧传递给停车管理对象。它使用 YOLOv8 模型跟踪帧中的车辆,并检查每个预先选定的停车区域是否被占用。

    results = management(im0)

步骤 10:返回结果中包含已占用和可用停车位的数量,你可以将其打印出来或传递给其他应用。

    print(f"Occupied: {results.filled_slots}, Available: {results.available_slots}")

步骤 11:循环的最后一部分会将标注后的帧写入输出视频文件 “parking management.avi.”

    video_writer.write(results.plot_im)

步骤 12:最后,我们可以释放 VideoCapture 和 VideoWriter 对象,并关闭所有窗口。

cap.release()
video_writer.release()
cv2.destroyAllWindows()

步骤 13:保存脚本。如果你在终端或命令提示符中操作,请使用以下命令运行脚本:

python your_script_name.py

如果你想进一步了解这段代码,欢迎查看 Ultralytics 官方文档。

自动化停车场管理系统面临的挑战#

智能停车系统为司机和企业带来了诸多优势。不过,在实施此类解决方案之前,也应考虑它们带来的一些挑战。让我们来看看其中的一些。

  • 隐私问题:这些系统会收集个人汽车的品牌和型号、车牌号、进出时间等信息。
  • 安装成本高:传感器、摄像头、自动售票机和 AI 软件的安装成本可能很高。
  • 维护要求:维护频率取决于 AI 系统,但大多数系统都需要每月维护。

智能停车系统的未来#

未来的创新型停车管理将借助 AI、自动驾驶汽车和虚拟现实等先进技术,改善整体停车体验并支持可持续发展。与这些系统集成后,自动驾驶汽车无需人工干预,就能导航至停车地点并完成停车。这些系统还能帮助企业提高车位利用率,并在多个应用和网站上推广其服务。此外,它们还能减少驾驶员绕行寻找车位所产生的碳排放。

告别停车烦恼#

像 Ultralytics YOLOv8 这样的 AI 模型和计算机视觉可以改变你的停车场管理方式。它们能减少车辆为寻找车位而绕行的情况,为你节省时间并减少排放。这些智能停车管理系统可以应对拥堵、违章停车和驾驶员烦躁等常见问题。虽然前期需要投入资金,但长期收益十分可观。投资智能停车是打造可持续城市、为所有人提供更顺畅停车体验的关键。

想进一步了解 AI?欢迎加入我们的社区!访问我们的 GitHub 仓库,了解我们如何利用 AI 为医疗保健和农业等多个行业打造创新解决方案。和我们一起协作、创新、学习!

作者

Abirami Vina
Abirami Vina

内容创作者 · Ultralytics

Abirami Vina 职业生涯始于计算机视觉工程师,由此在视觉 AI 和机器学习领域打下了坚实基础。她是 Ultralytics 的内容创作者,也是 Scribe of AI 的创始人兼首席撰稿人,为专注 AI 的公司撰写高质量技术内容。她热衷于让 AI 更易理解、更具吸引力,通过自己的作品连接前沿技术与现实影响。

评论

提出问题、分享你的结果,或帮助其他人。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来