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

开发者社区> 一个处女座的程序猿> 正文

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

简介: 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


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
php在没用xdebug等调试工具的情况下如何让调试内容优雅地展现出来?--php数组格式化
  不知道各位猿猿们有没有碰到过类似的情况。装的PHP环境没有xdebug,而又经常用到数组。调试的时候也需要经常查看数组的结构和字段内容,用var_dump打印出来的数组内容总是杂乱无章。实在无法忍受,因而网上找了个格式化数组的方法,分享给大家。
584 0
Raft 为什么是更易理解的分布式一致性算法
Raft 为什么是更易理解的分布式一致性算法
3390 0
想将算法进一步开发吗?手把手教你搭建基于CNN模型的Flask Web应用
想将算法进一步开发应用产品吗?本文手把手教你搭建基于CNN模型的Flask Web应用,算是抛砖引玉了。感兴趣的读者可以将自己的算法开发成其他类型的应用产品,说不定下一个人工智能创业公司Boss就是你哦!
4896 0
7.数据本地化CCString,CCArray,CCDictionary,tinyxml2,写入UserDefault.xml文件,操作xml,解析xml
 数据本地化 A CCUserDefault 系统会在默认路径cocos2d-x-2.2.3\projects\Hello\proj.win32\Debug.win32下生成一个名为UserDefault.xml.所有的key皆为char *型,value类型为bool intfloat double std::string. 读操作
1252 0
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测(二)
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测
39 0
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测(一)
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测
40 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载