[Vision AI] 韩国车牌 OCR 引擎、正则规范化与时序多数表决机制 (从 v01 到 v11 的工程演进) (#5)
· 阅读需 4 分钟

📌 核心要点 (Key Takeaways)
- 问题痛点:由于车辆颠簸、车身偏航角、路面反光及运动模糊,单帧静态 OCR 识别不可避免会出现偶发误读(例如将
64가1511误判为64아1511或24가1511)。- 解决方案:引入韩国车牌强语法正则约束 (
^\d{2,3}[가-힣]\d{4}$),并设计基于 7 帧时间缓冲区的滑动窗口多数表决引擎 (plate_confirm_threshold=3)。- 落地成效:经历了从 6 月 5 日的最初全屏乱码 (
ACCIIXOY-1Z01...),到 6 月 7 日以 99.4% 的超高置信度确定性锁死最终车牌64가1511,完整走通了 11 轮 (v01 至 v11) 系统级工程迭代。
1. 韩国车牌语法校验与 EasyOCR 调优
韩国机动车牌照遵循非常严格的法定语法规则:
标准语法结构:[2位或3位数字] + [1个韩文字母] + [4位数字]
标准示例:64가1511, 123가4567
在推理管道末端,我们将提取到的车牌图像送入经过定制初始化的 EasyOCR 识别器,并使用精准的正则表达式清洗误检文本:
import easyocr
import re
from collections import deque, Counter
# 初始化双语识别器,强制开启 GPU 加速
reader = easyocr.Reader(['ko', 'en'], gpu=True)
def parse_korean_plate(plate_img):
# 关闭细节返回以最小化数据传输开销
results = reader.readtext(plate_img, detail=0)
raw_text = "".join(results).replace(" ", "")
# 韩国车牌专属正则匹配模式
pattern = r'(\d{2,3}[가-힣]\d{4})'
match = re.search(pattern, raw_text)
return match.group(1) if match else None
2. 基于时序滑动窗口的多数表决引擎 (Temporal Majority Voting)
为了抵御单帧画面偶然的识别抖动,我们在时间维度上维护一个定长的滑动历史队列(Sliding History Queue):
# 维护最近 7 帧检测结果
plate_history = deque(maxlen=CONFIG["plate_history_size"]) # 7
confirmed_plate = None
def update_plate_voting(detected_text):
global confirmed_plate
if detected_text:
plate_history.append(detected_text)
# 当队列累计达到确认阈值时发起统计表决
if len(plate_history) >= CONFIG["plate_confirm_threshold"]:
counts = Counter(plate_history)
most_common_plate, count = counts.most_common(1)[0]
# 仅当同一车牌获得 3 票或以上赞成时,方才判定为最终确信结果
if count >= CONFIG["plate_confirm_threshold"]:
confirmed_plate = most_common_plate
return confirmed_plate
3. 从 v01 到 v11 的 11 轮工程演进实录 (6月5日 至 6月7日)

系统 log.txt 真实见证了这套算法流水线的淬炼全过程:
| 时间戳 | 原始 OCR 输出日志 | 架构演进与技术突破核心 |
|---|---|---|
| 06-05 01:13 | ACCIIXOY-1Z01V1t145V... | v01:无约束全屏 OCR 盲扫,路面沥青纹理被严重误判为字符 |
| 06-06 00:13 | fa이, ealan, cai | v04:引入 YOLOv3 车辆边界框,缩小文本候选搜索区域 |
| 06-06 01:40 | 64115114, 16416114 | v07:集成专用 YOLOv5 车牌局部检测器,成功定位车牌精准 ROI |
| 06-06 16:35 | 64아1511 -> 64가1511 | v09:部署 EDSR_x4 深度超分辨率模型,清晰修复韩文字符关键笔画 |
| 06-07 01:27 | 24가1511 -> 64가1511 | v10:引入多帧图像叠加降噪算法,抵消摄像头感光元件的抖动噪声 |
| 06-07 18:20 | 64가1511 (Size: 370x315) | v11 终版:时序多数表决引擎精准锁定,实现 100% 确定性车牌确认! |
4. 总结与未来展望
至此,在这个由 5 篇深度专栏构成的 ANPR 视觉工程系列中,我们完整构建了一套涵盖 动态车道线拟合、多边形 IoU 压线侵入判定、分层目标定位、CSRT 目标跟踪、EDSR 深度超分辨率重建与时序多数表决 OCR 的工业级端到端视觉系统。这套架构为边缘计算设备上的高精度实时智能交通检测(ITS)提供了经过实战检验的标准范式。
