MXNet之CNN:自定义CNN-OCR算法训练车牌数据集(umpy.ndarray格式数据)实现车牌照片字符识别并评估模型

本文涉及的产品
车辆物流识别,车辆物流识别 200次/月
票据凭证识别,票据凭证识别 200次/月
通用文字识别,通用文字识别 200次/月
简介: MXNet之CNN:自定义CNN-OCR算法训练车牌数据集(umpy.ndarray格式数据)实现车牌照片字符识别并评估模型

输出结果


gen_sample之后

image.png

image.pngimage.png




1、训练感悟


22:58训练记录:我勒个去,跑了半天,准确度还没上来,啊啊啊,要疯了……



相关文章:

生成图片,CV:设计自动生成汽车车牌图片算法(cv2+PIL)根据指定七个字符自动生成逼真车牌图片数据集(带各种噪声效果)

MXNet之CNN:自定义CNN-OCR算法训练车牌数据集(umpy.ndarray格式数据)实现车牌照片字符识别并评估模型



设计思路


第一次


image.png


第二次


image.png




总思路


image.png

核心代码

class GenPlate:

   def __init__(self,fontCh,fontEng,NoPlates):

       self.fontC =  ImageFont.truetype(fontCh,43,0);

       self.fontE =  ImageFont.truetype(fontEng,60,0);

       self.img=np.array(Image.new("RGB", (226,70),(255,255,255)))

……

   def draw(self,val):

       offset= 2 ;

       self.img[0:70,offset+8:offset+8+23]= GenCh(self.fontC,val[0]);    

……

       return self.img

 

   def generate(self,text):                             #generate()方法,

#         print('text', text, len(text))

       if len(text) == 7:    # 9

#             print('开始运行if语句')

           fg = self.draw(text);  

……

     

   def genPlateString(self,pos,val):  #定义genPlateString函数

……

       for unit,cpos in zip(box,range(len(box))):

           if unit == 1:

               plateStr += val

           else:

               if cpos == 0:

                   plateStr += chars[r(31)]

               elif cpos == 1:

                   plateStr += chars[41+r(24)]

               else:

                   plateStr += chars[31 + r(34)]

       return plateStr;

   def genBatch(self, batchSize,pos,charRange, outputPath,size):

       if (not os.path.exists(outputPath)):

           os.mkdir(outputPath)

       l_plateStr = []

       l_plateImg = []

       for i in range(batchSize):

           plateStr = G.genPlateString(-1,-1)

           img =  G.generate(plateStr);

           img = cv2.resize(img,size);

           l_plateStr.append(plateStr)

           l_plateImg.append(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))

       return l_plateStr,l_plateImg


相关文章
|
2月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
196 2
|
2月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 边缘计算 人工智能
粒子群算法模型深度解析与实战应用
蒋星熠Jaxonic是一位深耕智能优化算法领域多年的技术探索者,专注于粒子群优化(PSO)算法的研究与应用。他深入剖析了PSO的数学模型、核心公式及实现方法,并通过大量实践验证了其在神经网络优化、工程设计等复杂问题上的卓越性能。本文全面展示了PSO的理论基础、改进策略与前沿发展方向,为读者提供了一份详尽的技术指南。
粒子群算法模型深度解析与实战应用
|
2月前
|
机器学习/深度学习 数据采集 传感器
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
206 0
|
文字识别
印刷文字识别使用问题之是否支持非标发票的识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
存储 文字识别 运维
印刷文字识别使用问题之如何开通统一识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
文字识别 容器
印刷文字识别使用问题之是否支持医疗检测报告识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
人工智能 文字识别 开发工具
印刷文字识别使用问题之是否支持识别并返回文字在图片中的位置信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
人工智能 JSON 文字识别
印刷文字识别使用问题之如何数电发票进行识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
文字识别 数据安全/隐私保护 iOS开发
印刷文字识别使用问题之如何识别礼品册上的卡号、密码信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。

热门文章

最新文章

下一篇
oss云网关配置