车牌基于halcon的车牌的图像识别-整理

百度图像识别  时间:2021-02-24  阅读:()

基于hlcon的车牌的图像识别

其实车牌图像识别从技术上已经比较成熟,从理论上来说无外乎就是如下几个步骤:

灰度化:实际就是对原始车牌图片进行预处理,把彩色图片转化为黑白图片然后对不符合指定阙值范围的灰度值进行过滤。  车牌定位:这是技术难点之一,根据我的经验,定位车牌位置对于车牌的准确识别而言实际上就成功了6%。很多车牌识别的产品都对车牌的定位预留了很多配置参数例如截取原始图片的位置参数、车牌的长宽比例、大小等等,这些都是为了提高车牌定位的准确率。

字符分割车牌定位后是字符分割,本人使用的识别过程是:对定位的车牌位置进行降噪处理=>边界模糊=>从右向左找出前6个封闭的图形=>剩余的封闭图形综合为一个图形进行汉字的识别。

字符识别:就是根据字符模板进行模板匹配,因此需预先建立相应的字符模板。基于图像进行字符识别也可配置很多参数来大大提高字符的识别率。例如限定车牌头的字符车牌各位字符的识别优先级等等。

以下通过大车黄牌号码为例,看看车牌识别的效果。   、原始图片如下图所示:

2、限定车牌识别区域,本例中将裁剪掉上下左右各10%的区域:get_ ma g _po  nter 1 (Fll ma g  ,   inte r,Tpe Width, e  ght)g en_ectangle 1 ectangle,He igt0.1,idth*0 1,Heigt*  .9,Wdth*0.9rdue_doma  (ull mage,ec tngle, mage)

看看裁剪结果:

3、把选中的区域灰度化,方便后续处理:d o m s 3 Image,Rd,reen, lue)tras_f mrb(d,Green, le,Hue,S atura on, Intens it 'hs v')

灰度化后的效果图:

4、灰度阙值过滤,本例中只选中灰度值在10至255之间的区域,可根据实际情况进行相应的设置,然后进行降噪处理

theshold(Saturatio,HihSatration, 10 , 55)rmvenois e_regin(HighSat  tion,Outputegion 'n_48')

过滤降噪后的效果,和实际的位置很接近了吧!

 、根据预定义的车牌长宽比例等查找符合特定特征的区域:

代码c onetion(OtpuRegin, onncteReg ios 1)c osing_ectng e 1 (on ct dRegions 1,RegionCl   g 1, 1  , 10)sele  t_shape(eg  nC osi  1,AS lectedReg  on  'rea', 'and'  300    00 sele  _sha e(A   ectedReg ons Sel   edRegions 'heigh ', 'nd',30, 0)   ects    (HSe  ecte

R  o n s,Sle c  e dRe go n , 'w idth', 'an d , 0, 180)

效果图如下,分割成了多个区域哈:

 、呈现出车牌区域的灰度化图像:

eue_domin(Hue S e  ec t Re      He HighSturt  n)效果如下是不是和实际位置一致啊

7、对上述车牌的精确区域进行阙值过滤,主要是为了去掉车牌周围的黑色边框:treshold(HueHighSaura on,eio, 3  , 0)

效果图如下:

8、填充有字符而没有在上述算法中被选中的内部区域:c os ig_ec a le 1 (Regon,Re onFillp, 0,20填充后的相关效果图如下:

9、根据选中的上述区域从原始图片中加载该区域:rdue_dmai ( mage,ReionF l Up Truc kagImage效果图如下,车牌又出现了哈

10、确定识别区域字符的偏移角度,根据摄像机位置的不同其倾斜度也会有所不同根据分割算法的不同其实此步骤可以省略):c on tion(eginill  Conn   eReduc edReios)text_lie_or ient  on(C nc tedRedc eRegion ,Tr kTagImae, 3 ,0 53599,0.53599 Orietat onAng l)

11、显示真实的车牌位置图像,主要是方便调试:devd sp ay( uckT Image

效果图如下

12、进行字符分割,过滤掉非字符区域:

代码s  n_charac tes (ReionFillp Trc kTgma , IageFoegoudRe

ionForegound, ' oc l_uto_shpe  f  s e', fals e'  'medum', 1   30,2, 10Us eThreshod)s e  ec t_ha   c t  r  (ReioF o     und,ReioCar  c  ers, 'fa  e'' als e', 15, 'c ompleti   ')  los ingre  tang le 1 (Reg ionCh a  ac t   s,Re  i nCharactersClosig, 1  2)

效果图如下,是不是离真正的识别又跟进了一步哈

1  、根据各个分割的区域的左上角坐标排序主要是方便从右向左依次进行字符识别):connectio RgioCaratersClos ing,Cnnc  edegioharacterslosing)so_rgion onnec  dRegionChrac ters Co ig,Sr  dRgio  , 'firs poit')

14、显示分割的字符区域的效果图,怎么样字符分割成功了吧 :

1 、加载字符模板从右向左依次进行字符识别,并把识别结果绘制到对应字符位置的上方 ./p>

代码

eaocr_clas _mlp   D:/VTec HALCON/o /Indus  ri l_0  omc'  C  le)fr  dex:=1 to  by  i (Number>=Indx  Selecte otedReg ion:=SrtedRegions[In  ex] do_ocr_s  n  le_clas s_ml  (Se  ec  edSortedRegi  n, mage,OCRHadle, 1,Clss, nide  e  sma lestectangle1 (elec  eS ortedegion,Row 1,Column 1,Ro ,Column2) s et_tp  ition(WndwID,ow - 30, (Coumn +Co lun  * .55)

ri  e_ tr ng WnowD,ls s[0 )dv_display(SelectdotedRg ion) nienfor le ar_or_las _mp(OCanle)i (Numer>5)read_ocr_lssp(' /MVTc/HACON cr/Indu  rial9A-Z om'  OCRnle)

Selected rtedRegion:Sor    ions[6]do_cr_ igle l s slp(  l cteSort dRei , Imge,OHndle, 1  Clas s,Cofidec  ) sall strec  ang  1 (Sele  t dSor   Reg on,Row 1  Colun 1,R2 Column2) s et_tpsition(WndowID,Ro1 - 30, Column +oumn 1 *0.5 - )

r  te_strig(WinowI,Clss[  ]) clea_ocr_lass_mlp(OCHandle

 v_dis  a S elec  edS   dgion)ed f

相关效果图如下字符识别的准确度挺高嘛 

图中汉字“川”未进行识别,其实只需为其制作相应的字符识别模板后识别也极其容易,为方便演示此过程略去。再有就是D、 O、 的字符识别准确率偏低D、O经常识别为0),不过可以通过设置识别优先级等来提高真实环境的识别成功率。

ProfitServer$34.56/年,西班牙vps、荷兰vps、德国vps/不限制流量/支持自定义ISO

profitserver怎么样?profitserver是一家成立于2003的主机商家,是ITC控股的一个部门,主要经营的产品域名、SSL证书、虚拟主机、VPS和独立服务器,机房有俄罗斯、新加坡、荷兰、美国、保加利亚,VPS采用的是KVM虚拟架构,硬盘采用纯SSD,而且最大的优势是不限制流量,大公司运营,机器比较稳定,数据中心众多。此次ProfitServer正在对德国VPS(法兰克福)、西班牙v...

PacificRack 下架旧款方案 续费涨价 谨慎自动续费

前几天看到网友反馈到PacificRack商家关于处理问题的工单速度慢,于是也有后台提交个工单问问,没有得到答复导致工单自动停止,不清楚商家最近在调整什么。而且看到有网友反馈到,PacificRack 商家的之前年付低价套餐全部下架,而且如果到期续费的话账单中的产品价格会涨价不少。所以,如果我们有需要续费产品的话,谨慎选择。1、特价产品下架我们看到他们的所有原来发布的特价方案均已下架。如果我们已有...

PQ.hosting全线9折,1Gbps带宽不限流量VPS/€3/月,全球11大机房可选

Hostadvice主机目录对我们的服务进行了测试,然后给PQ.hosting颁发了十大WordPress托管奖。为此,宣布PQ.Hosting将在一周内进行折扣优惠,购买和续订虚拟服务器使用优惠码:Hostadvice ,全部优惠10%。PQ.hosting,国外商家,成天于2019年,正规公司,是全球互联网注册商协会 RIPE 的成员。主要是因为提供1Gbps带宽、不限流量的基于KVM虚拟的V...

百度图像识别为你推荐
ptrC++~*ptr是什么?阿里云系统阿里云系统怎么样好用吗?百度k站百度是怎么样k站的呢?缓冲区溢出教程适合黑客初级学者使用的黑客工具有那些 、中国电信互联星空怎么在中国电信网上营业厅自行开通互联星空消费权限打开网页出现错误显示网页上错误,打不开网页怎么办怎么在qq空间里添加背景音乐如何在QQ空间中添加背景音乐伪静态什么是伪静态正则表达式javajava正则表达式唱吧电脑版官方下载电脑怎么安装唱吧,要能用的,请教教程,谢谢
短域名 php空间租用 VPS之家 本网站服务器在美国维护 服务器评测 idc评测网 正版win8.1升级win10 免费smtp服务器 cpanel空间 台湾谷歌地址 工作站服务器 1g内存 什么是服务器托管 百度云1t yundun 网购分享 重庆电信服务器托管 photobucket 双11促销 hdchina 更多