HyperLPR车牌识别库代码分析(6)
2021SC@SDUSC
源代码下载地址:https://gitee.com/zeusees/HyperLPR
源码配置的详情见第一篇分析
本篇内容将继续根据小组分配的任务进行分析,内容如下:
一、finemappingVertical(...)函数
image_rgb = fv.finemappingVertical(image_rgb)image_rgb = fv.finemappingVertical(image_rgb)
可以看出作者对图片执行了两次finemappingVertical操作。finemappingVertical源码如下:
def finemappingVertical(image):resized = cv2.resize(image,(66,16))resized = resized.astype(np.float)/255res= model.predict(np.array([resized]))[0]print("keras_predict",res)res =res*image.shape[1]res = res.astype(np.int)H,T = resH-=3if H<0:H=0T+=2;if T>= image.shape[1]-1:T= image.shape[1]-1image = image[0:35,H:T+2]image = cv2.resize(image, (int(136), int(36)))return image
先使用resize函数将已裁剪的图片再进行裁剪操作。
再使用astype函数来将原来灰度图颜色通道[0, 255]转化为float类型[0,1]
后self.modelFineMapping.predict函数输入66*16(float),输入进模型进行测试
model = getModel()
model.load_weights("./model/model12.h5")
model_finemapping()模型位于文件夹的该位置下:
该模型也是一个卷积神经网络模型,通过模型处理后,再次对文字进行裁剪输出。
keras网络模型:对车牌文字的左右边界进行回归
通过modelFineMapping.loadweights()函数加载模型文件
通过modelFineMapping.predict输出网络结果
输入:16*66*3 tensor
输出:长度为2的tensor
总结:该函数是车牌精定位,先使用resize函数将已裁剪的图片再进行裁剪操作。再使用astype函数来将原来灰度图颜色通道[0, 255]转化为float类型[0,1]。后self.modelFineMapping.predict函数输入66*16(float),输入进模型进行测试。该模型也是一个卷积神经网络模型,通过模型处理后,再次进行裁剪输出。通过modelFineMapping.loadweights()函数加载模型文件。最后输出裁剪后的图像,将各个文字的左右边界裁剪下来,识别出文字。
参考文章:HyperLPR车牌识别代码解读
CSDN博主:口袋的天空Zard
原文链接:https://blog.csdn.net/qq_37423198/article/details/81266401
HyperLPR车牌识别库代码分析(6)相关推荐
- HyperLPR车牌识别库代码分析(1)
2021SC@SDUSC 源代码下载地址:https://gitee.com/zeusees/HyperLPR 本项目为山东大学19级软件工程专业软件工程应用与实践课题,我们小组负责该项目的源代码中关 ...
- HyperLPR车牌识别库代码分析(12)
2021SC@SDUSC 源代码下载地址:https://gitee.com/zeusees/HyperLPR 源码配置的详情见第一篇分析 本篇内容将总结之前所分析的SimpleRecognizePl ...
- HyperLPR车牌识别库代码分析(9)
2021SC@SDUSC 源代码下载地址:https://gitee.com/zeusees/HyperLPR 源码配置的详情见第一篇分析 本篇内容将总结之前所分析的SimpleRecognizePl ...
- HyperLPR车牌识别库代码分析总结(15)
2021SC@SDUSC 源代码下载地址:https://gitee.com/zeusees/HyperLPR 源码配置的详情见第一篇分析 本篇内容将总结之前所分析的三个函数: 一.SimpleRec ...
- Mobile-LPR——面向移动端的准商业级车牌识别库
今天发现一个很棒的车牌识别项目,精度高.代码高度优化.方便使用,感谢开发者xiangweizeng!欢迎大家参考- 项目地址: https://github.com/xiangweizeng/mobi ...
- HyperLPR车牌识别技术算法之车牌精定位
关于HyperLPR HyperLPR是一个使用深度学习针对对中文车牌识别的实现,与较为流行的开源的EasyPR相比,它的检测速度和鲁棒性和多场景的适应性都要好于目前开源的EasyPR,HyperLP ...
- 最新优秀开源:车牌识别、车型分析、车流统计、违停检测统统行
停车场闸机的车牌识别.道路两侧的违停检测.繁华路口的车流统计.茫茫车海中的车辆锁定-这些场景背后的技术原理大家是否在心中简单构思过?抑或想要抽时间自己攒一套出来可却又不知从何下手?--PP-Vehic ...
- HyperLPR车牌识别技术算法之车牌粗定位与训练
关于HyperLPR HyperLPR是一个使用深度学习针对对中文车牌识别的实现,与较为流行的开源的EasyPR相比,它的检测速度和鲁棒性和多场景的适应性都要好于目前开源的EasyPR,HyperLP ...
- pp-vehicle车牌识别检测代码
车牌识别实例化 1.在官网拉取最新代码,并创建检测py文件,并引入相应的库 import os,cv2,time import numpy as np import argparse from dep ...
最新文章
- 3ds Max中的V-Ray学习
- ASP.NET动态的修改主题
- flutter怎么手动刷新_flutter局部刷新的实现示例
- springboot搭建的ssm项目
- 30+个必知的《人工智能》会议清单
- r语言怎么保存代码_R代码忘记保存,系统崩溃了怎么办?
- linux vim命令及使用,极大提升使用linux的舒适程度
- Linux 用户磁盘空间配额管理
- myeclipse 10激活,本人已测试过可行
- wamp 出现 The requested URL / was not found on this server
- java300集高淇老师学习笔记
- 正弦交流电有效值系数sqrt(2)的推导
- 【06月12日】指数估值排名
- java细节篇(==和equals的区别)
- 线性代数——矩阵的秩
- Dubbo 使用 kryo 序列化
- matlab绕线式三级串阻,三相绕线式异步电动机转子串电阻起动的MATLAB仿真
- 通过iptables 禁止访问域名方法整合
- Nginx Sticky的使用及踩过的坑(nginx-sticky-module)
- 【GoLang】Map的遍历