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

Dataideas:$1.5/月KVM-1GB/10G SSD/无限流量/休斯顿(德州)_主机域名

Dataideas是一家2019年成立的国外VPS主机商,提供基于KVM架构的VPS主机,数据中心在美国得克萨斯州休斯敦,主机分为三个系列:AMD Ryzen系列、Intel Xeon系列、大硬盘系列,同时每个系列又分为共享CPU和独立CPU系列,最低每月1.5美元起。不过需要注意,这家没有主页,你直接访问根域名是空白页的,还好他们的所有套餐支持月付,相对风险较低。下面以Intel Xeon系列共...

LayerStack$10.04/月(可选中国香港、日本、新加坡和洛杉矶)高性能AMD EPYC (霄龙)云服务器,

LayerStack(成立于2017年),当前正在9折促销旗下的云服务器,LayerStack的云服务器采用第 3 代 AMD EPYC™ (霄龙) 处理器,DDR4内存和企业级 PCIe Gen 4 NVMe SSD。数据中心可选中国香港、日本、新加坡和洛杉矶!其中中国香港、日本和新加坡分为国际线路和CN2线路,如果选择CN2线路,价格每月要+3.2美元,付款支持paypal,支付宝,信用卡等!...

打开海外主机域名商出现"Attention Required"原因和解决

最近发现一个比较怪异的事情,在访问和登录大部分国外主机商和域名商的时候都需要二次验证。常见的就是需要我们勾选判断是不是真人。以及比如在刚才要访问Namecheap检查前几天送给网友域名的账户域名是否转出的,再次登录网站的时候又需要人机验证。这里有看到"Attention Required"的提示。我们只能手工选择按钮,然后根据验证码进行选择合适的标记。这次我要选择的是船的标识,每次需要选择三个,一...

百度图像识别为你推荐
视频截图软件列出5种非常好用的视频截图工具金山杀毒怎么样金山杀毒好吗?qq空间装扮qq空间的装扮空间在哪?硬盘人克隆一个人需要多少人多长时间啊idc前线永恒之塔内侧 删档吗 ?电子商务网站模板电子商务网站模板有免费的吗?电子商务网站模板哪里有?电子商务网站模板怎么找?虚拟机软件下载那里可以下载虚拟系统,又该怎么安装呢??微信电话本怎么用微信电话本短信管理功能怎么用?网站地图制作网站地图 怎么制作?网站地图制作给人看的那种,网站地图怎么做
怎么注册域名 科迈动态域名 美国主机排名 荷兰服务器 ion 中国电信测速112 阿里云浏览器 howfile 刀片服务器是什么 hdd 独享主机 我的世界服务器ip smtp服务器地址 贵阳电信 atom处理器 摩尔庄园注册 金主 xuni 群英网络 测速电信 更多