+
95
-

回答

使用python3+hyperlpr+ opencv-python==3.4.9.31实现,先安装相关的库:

#更新pip源
pip3 install --upgrade pip
#安装HyperLPR
pip3 install hyperlpr -i https://pypi.tuna.tsinghua.edu.cn/simple
#安装HyperLPR指定的opencv版本
pip3 install opencv-python==3.4.9.31 -i https://pypi.tuna.tsinghua.edu.cn/simple

识别车牌python代码:

#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
from hyperlpr import *
import cv2
print("<img src='/asset/chepai.png' />")
#自己修改自己的图片路径
image = cv2.imread("/data/wwwroot/default/asset/chepai.png")
print(HyperLPR_plate_recognition(image))

效果


我们再通过实时采集摄像头数据实现实时车牌识别

#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
# 导入cv2库
from hyperlpr import *
import cv2 as cv

# 打开摄像头
cap = cv.VideoCapture(0)

while (True):

# 开始用摄像头读数据,返回hx为true则表示读成功,frame为读的图像
hx, frame = cap.read()

# 如果hx为Flase表示开启摄像头失败,那么就输出"read vido error"并退出程序
if hx is False:
# 打印报错
print('read video error')
# 退出程序
exit(0)

# 显示摄像头图像,其中的video为窗口名称,frame为图像
# cv.imshow('video', frame)
image = cv2.imread(frame)
print(HyperLPR_plate_recognition(image))

# 监测键盘输入是否为q,为q则退出程序
if cv.waitKey(1) & 0xFF == ord('q'): # 按q退出
break

# 释放摄像头
cap.release()

# 结束所有窗口
cv.destroyAllWindows()


网友回复

我知道答案,我要回答