前言
这是NVIDIA在2021年初公布的一个开源项目,用NVIDA Jetson设备上的DeepStream视频分析套件实现“车牌识别”的功能,这是个实用性非常高的应用,能应用在各类小区门禁管理、停车场管理、道路违章等使用场景。
这个项目还有一个非常重要的特色,就是支持中国(文)机动车牌的识别,本文就专门针对中文车牌识别的部分,带着大家走过一遍,项目内容中有些需要改进的部分,在本文中也都一一说明,现在先简单了解一下这个项目的执行原理。
本系列总共包括三部分:
- 在 Jetson 上用 DeepStream 识别中文车牌
- 用 NVIDIA TLT 训练
LPD(License Plate Detection)
模型,负责获取车牌位置 - 用 NVIDIA TLT 训练
LPR(License Plate Recognition)
模型,负责识别车牌内文字
本篇内容是让大家能快速体验一下,如何利用 NVIDIA NGC 上已经训练好的LPD与LPR两个深度学习模型,立即在 Jetson 上的 DeepStream 实现“中文车牌识别”的功能,不过这个模型目前还不能识别电动车的绿色车牌,因此还有很大的改善空间,接下去您可以再到本系列第二篇与第三篇分别对 LPD
与 LPR
模型进行个别训练。
对 DeepStream 有初步了解的人应该都知道,这套工具支持“分级模型(grade model)”
组合检测与分类的功能,这个特性就能将车牌识别的应用拆解成三大部分,如下图所示:
- 一级 PGIE:这是 DeepStream 的主模型,以“Car”为检测(detection)目标
- 二级 SGIE:这里以“车牌位置检测(LPD)”的模型,在PGIE所找到的“Car”范围内,定位出“车牌”的标框位置。
- 三级 SGIE:从二级SGIE得到的车牌图形中,执行“车牌内容识别(LPR)”任务,并将识别的文字回传
要知道这样三级模型叠加处理,是一件困难度极高的任务,但却是 DeepStream 非常基本的功能,后面执行过程你就能发现竟然如此简单就能执行。
实验准备动作:
1. 安装与验证 DeepStream 开发套件 5.0.1 版本:
用 TF 卡作为存储的 Jetson Nano(含2GB)与 Xavier