使用 Ultralytics YOLO11 和 GPT-4o Mini 构建 ANPR 系统
学习如何使用 Ultralytics YOLO11 进行车牌检测,并结合 GPT-4o Mini 进行文字识别,构建具有实时准确性的 ANPR 系统。

在拥挤的停车场寻找停车位、在收费站漫长的队伍中等待或在安全检查站受阻,这些经历都令人沮丧。人工车辆检查通常耗时太长并导致延误。如果没有自动化系统,高效追踪车辆可能是一项挑战。
Computer vision 通过实现对图像和视频流中车牌的实时识别改变了这一点。例如,Ultralytics YOLO11 是一个先进的计算机 vision 模型,可以执行目标检测、分类和跟踪等高级视觉 AI 任务。利用 YOLO11 的目标检测能力,你可以准确检测图像中的车辆车牌。
Ultralytics 提供了全面的 Google Colab notebooks,简化了构建 vision AI-powered solutions 的过程。这些笔记本预先配置了必要的依赖项、模型和分步指南,使应用程序的创建更加容易。特别是,有一个专用的 Colab notebook for ANPR(自动车牌识别)。
在本文中,我们将使用 Ultralytics 的 ANPR Colab notebook,探索如何构建一个结合了 Ultralytics YOLO11(用于车牌检测)和 GPT-4o Mini(用于文本识别)的 ANPR 解决方案。
了解 ANPR#
手动跟踪汽车既耗时又容易出错,尤其是当它们快速移动时。逐个检查每个车牌会减慢处理速度并增加出错风险。Automatic number plate recognition 通过使用计算机 vision 即时检测和读取车牌解决了这个问题,从而使交通监控和安全性更加高效。
ANPR 系统可以捕获过往车辆的图像或视频,并使用实时目标检测来识别车牌。一旦检测到,文本识别技术就会自动提取车牌号码,无需人工干预。即使车辆快速移动或车牌部分被遮挡,该过程也能确保结果准确。

Fig 1. 使用 Ultralytics YOLO11 检测车牌的示例。
如今,收费站、停车系统和执法部门越来越依赖 ANPR 来高效追踪车辆。
ANPR 技术面临的挑战#
虽然 ANPR 可以快速识别车辆,但仍存在一些可能影响其准确性的挑战。以下是一些会影响 ANPR 系统性能的常见问题:
- 低光照和恶劣天气: 在夜间和恶劣天气下,车牌变得难以读取。雾、雨和大灯眩光可能会导致文本模糊,使其无法辨认。
- 车牌模糊或被遮挡: 快速移动的车辆可能会留下模糊的图像,特别是当相机快门速度过慢时。污垢、划痕或车牌部分被覆盖也可能导致识别问题。使用具有正确设置的高质量相机有助于获得更清晰的结果。
- 车牌设计不一致: 并非所有车牌看起来都一样。有些车牌使用花哨的字体、额外文本或徽标,这可能会干扰系统。
- 隐私风险和数据安全: 安全存储车辆数据非常重要。正确的安全措施可以防止未经授权的访问并保护信息。通过适当的防护措施,ANPR 系统可以既安全又可靠。
Ultralytics YOLO11 如何改进 ANPR 系统#
Ultralytics YOLO11 可以使 ANPR 系统变得更快、更准确。它能够快速处理图像同时保持精度,且不需要强大的计算能力,因此非常适合从小型的安防摄像头到大型交通系统的各种应用场景。
通过自定义训练,Ultralytics YOLO11 可以适应不同的车牌样式、语言和环境。当使用包含这些条件图像的专业数据集进行自定义训练时,它在低光照、运动模糊和复杂角度等具有挑战性的条件下也能表现出色。
通过即时识别车辆,Ultralytics YOLO11 有助于减少等待时间、防止错误并提高安全性。这使得停车场、收费站和监控系统中的交通更加顺畅,运营更加高效。
使用 Ultralytics YOLO11 和 GPT-4o Mini 构建 ANPR 系统#
接下来,我们来逐步了解如何使用 Ultralytics YOLO11 和 GPT-4o Mini 构建一个 ANPR 系统。
我们将探讨本解决方案的 Ultralytics Google Colab 笔记本中展示的代码。Google Colab 笔记本易于使用,任何人都可以创建 ANPR 系统,而无需复杂的设置。
第 1 步:设置环境#
首先,我们需要安装依赖项,即运行 ANPR 系统所需的必备软件包和库。这些依赖项有助于执行目标检测、图像处理和文本识别等任务,确保系统高效运行。
我们将如下安装 Ultralytics Python package。该软件包提供预训练模型、训练实用程序和推理工具,使使用 YOLO11 检测和识别车牌变得更加容易。

图 2. 安装 Ultralytics Python 软件包。
我们还需要为文本识别设置 GPT-4o Mini。由于 GPT-4o Mini 负责从检测到的车牌中提取文本,我们需要一个 API 密钥来访问该模型。此密钥可以通过注册 GPT-4o Mini API 获取。一旦你拥有该密钥,就可以将其添加到 Colab notebook 中,以便系统能够连接到模型并处理车牌号码。
完成设置并运行安装代码后,Ultralytics YOLO11 将准备好检测车牌,而 GPT-4o Mini 将被配置为识别并提取其中的文本。
第 2 步:下载自定义训练模型#
现在一切都已设置完毕,下一步是下载经过自定义训练以检测车牌的 Ultralytics YOLO11 模型。由于该模型已经训练好用于检测车牌,因此无需从头开始训练。你只需下载它即可直接使用。这节省了时间,并使整个过程变得更加简单。
此外,我们将下载一个示例视频文件来测试该系统。如果需要,你也可以在你自己的视频文件上运行此解决方案。下载完成后,模型和视频文件将存储在 notebook 环境中。

图 3. 下载模型和视频文件。
第 3 步:加载视频并开始检测#
模型准备好后,就该看看它的实际运行效果了。首先,加载视频文件进行处理,确保其打开正确。然后设置视频写入器以保存带有检测到车牌的处理后视频,同时保持原始尺寸和帧率。最后,加载模型以检测视频每一帧中的车牌。

图 4. 读取视频并加载模型。
加载模型后,系统将开始分析视频的每一帧以检测车牌。当找到车牌时,系统会用检测框突出显示它,以便于识别。此步骤确保仅捕获相关细节,过滤掉不必要的背景信息。车牌检测成功后,视频即准备好进入下一个阶段。
第 4 步:从车牌中提取文本#
在检测到车牌后,下一步是进行文本识别。系统首先从视频帧中裁剪出车牌,消除任何干扰以获得清晰的视图。这有助于聚焦细节,即使在低光照或运动模糊等挑战性条件下也能提高准确性。
车牌被隔离后,GPT-4o Mini 会分析图像,提取数字和字母,并将它们转换为可读文本。然后,识别出的文本会被添加回视频中,实时标记每个检测到的车牌。
完成这些步骤后,ANPR 系统功能齐全,可以轻松识别车牌。
第 5 步:保存处理后的视频#
最后一步是保存处理后的视频并清理临时文件,确保一切运行顺畅。
每一帧处理过、带有检测到的车牌和识别出的文本的视频都会被写入最终输出视频。所有帧处理完成后,系统将关闭它正在读取的视频文件,释放内存和系统资源。它还会完成并保存输出视频,使其准备好进行播放或进一步分析。

Fig 5. 使用 YOLO11 和 GPT-4o Mini 进行 ANPR。
部署 ANPR 系统#
在构建和测试 ANPR 解决方案后,下一步是在真实环境中部署它。大多数 vision AI models 依赖于高性能计算,但 Ultralytics YOLO11 已针对 Edge AI 进行了优化。它可以在小型设备上高效运行,而无需云处理或持续的互联网连接,使其成为资源有限的理想选择。
例如,封闭式社区可以在边缘设备上部署 Ultralytics YOLO11 来识别进入的车辆,从而无需大型服务器。所有内容都在本地实时处理,确保顺畅的通行、减少拥堵并增强安全性。

Fig 6. 使用 YOLO11 检测车牌。
与此同时,在互联网连接稳定的地区,基于云的 ANPR 可以同时处理多台摄像头的信号。例如,在购物中心,它可以追踪不同入口处的车辆并将车牌号码存储在中央系统中,从而更轻松地监控停车位、提高安全性并远程管理车流。
ANPR 的未来之路#
使用 Ultralytics YOLO11 设置自动车牌识别 (ANPR) 系统非常简单。它能准确检测车牌,并可进行自定义训练以适应不同的环境和需求。
ANPR 系统增强了安全性,精简了停车管理,并改进了交通监控。通过实现车牌识别自动化,它们减少了错误,加快了识别速度,并提高了各种应用中车辆追踪的效率。
加入 our community 并访问 our GitHub repository 以亲身体验 AI。在我们的解决方案页面上探索 our licensing options 并了解有关 vision AI in manufacturing 和 AI in self-driving cars 的更多信息。






