车牌基于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),不过可以通过设置识别优先级等来提高真实环境的识别成功率。

RackNerd:美国便宜VPS,洛杉矶DC-02/纽约/芝加哥机房,4TB月流量套餐16.55美元/年

racknerd怎么样?racknerd美国便宜vps又开启促销模式了,机房优秀,有洛杉矶DC-02、纽约、芝加哥机房可选,最低配置4TB月流量套餐16.55美元/年,此外商家之前推出的最便宜的9.49美元/年套餐也补货上架,同时RackNerd美国AMD VPS套餐最低才14.18美元/年,是全网最便宜的AMD VPS套餐!RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新...

Hosteons:洛杉矶/纽约/达拉斯免费升级10Gbps端口,KVM年付21美元起

今年1月的时候Hosteons开始提供1Gbps端口KVM架构VPS,目前商家在LET发布消息,到本月30日之前,用户下单洛杉矶/纽约/达拉斯三个地区机房KVM主机可以从1Gbps免费升级到10Gbps端口,最低年付仅21美元起。Hosteons是一家成立于2018年的国外VPS主机商,主要提供VPS、Hybrid Dedicated Servers及独立服务器租用等,提供IPv4+IPv6,支持...

RackNerd:便宜vps补货/1核/768M内存/12G SSD/2T流量/1G带宽,可选机房圣何塞/芝加哥/达拉斯/亚特拉大/荷兰/$9.49/年

RackNerd今天补货了3款便宜vps,最便宜的仅$9.49/年, 硬盘是SSD RAID-10 Storage,共享G口带宽,最低配给的流量也有2T,注意,这3款补货的便宜vps是intel平台。官方网站便宜VPS套餐机型均为KVM虚拟,SolusVM Control Panel ,硬盘是SSD RAID-10 Storage,共享G口带宽,大流量。CPU:1核心内存:768 MB硬盘:12 ...

百度图像识别为你推荐
郭彩妮介紹點好聽的音樂給我、大家公章制作如何制作公章微信如何建群微信如何建群伪静态什么是伪静态伪静态有何作用怎么升级ios6苹果IOS5怎么升级IOS6版本安装迅雷看看播放器迅雷看看播放器安装商标注册查询官网全国商标注册查询在哪里查呀?云挂机有免费的云挂机软件吗?云挂机快手极速版后台云挂机辅?助各位用了吗?在哪找的?srv记录SRV记录的定义
新加坡虚拟主机 天津服务器租赁 上海vps vps虚拟服务器 sugarhosts edis godaddy优惠码 mobaxterm 国外在线代理 tna官网 万网空间购买 shopex主机 申请网站 我的世界服务器ip hostease 万网服务器 香港ip shuangcheng winds 服务器机柜 更多