C#编程之银行卡卡号识别:C#版本和iOS版本
小标 2018-11-14 来源 : 阅读 1353 评论 0

摘要:本文主要向大家介绍了C#编程之银行卡卡号识别:C#版本和iOS版本,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助。

本文主要向大家介绍了C#编程之银行卡卡号识别:C#版本和iOS版本,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助。

(一)图像采集
    首先我们要取得待识别的图像。这项工作可以通过数码相机、DV机、工业摄像机、电脑数字摄像头、手机摄像头等设备采集,并从中取得我们要分析的图像信息。
 
(二)版面分析
      取得图像信息后,要对图像整体版面进行分析。这一步工作如果使用通用算法进行分析,则效率很低。通常情况下都需要针对不同的识别对象进行专门的分析及设定,才能取得良好的分析效果。
 
抠出数字????
倾斜图像校正??
(三)图像灰度化
      从采集设备里取得的图像通常都是彩色图像,为了使所分析的图像数据简化,并且不丢失关键信息,需要对图像进行灰度化处理。
  通常,计算机图像是由一个一个的像素点构成(矢量图除外),每个像素点用RGB模型来标记其颜色。在RGB模型中,如果R=G=B时,则该颜色就表示是一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。
  一般有以下四种方法对彩色图像进行灰度化: 
  1、分量法。将彩色图像中的三分量的亮度作为三个灰度图像的灰度值,可根据应用需要选取一种灰度图像。
  计算公式为:f1(i,j)=R(i,j) f2(i,j)=G(i,j)f3(i,j)=B(i,j)  其中fk(i,j)(k=1,2,3)为转换后的灰度图像在(i,j)处的灰度值。
  2、最大值法。将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。 
  计算公式为:f(i,j)=max(R(i,j),G(i,j),B(i,j))
  3、平均值法。将彩色图像中的三分量亮度求平均得到一个灰度值。 
  计算公式为:f(i,j)=(R(i,j)+G(i,j)+B(i,j)) /3
  4、加权平均法:根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,按下式对RGB三分量进行加权平均能得到较合理的灰度图像:f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j))。
在进行识别时,通常采取第4种方法加权平均法对彩色图像进行灰度化。
  
(四)图像二值化
    灰度化是压缩图像数据的第一步,接下来要对灰度图像进行二值化处理。具体做法就是,首先对256个亮度等级的灰度图像进行计算,取得一个适当的阈值;其次对灰度化图像进行处理,所有灰度大于或等于阈值的像素被判定为属于特定物体,其灰度值用255表示,否则这些像素点被排除在物体区域以外,灰度值为0,代表背景或者例外的物体区域。  完成这一步骤之后,灰度化图像被进一步压缩为二值化图像,每一像素点非黑即白,没有其他任何颜色。只要阈值选取合适,二值化图像仍然可以反映图像整体和局部特征,有利于图像的进一步处理,使图像变得简单,而且数据量减小,能凸显出感兴趣的目标的轮廓。
 
上述网址://dongtingyueh.blog.163.com/blog/static/4619453201292984842752/
 上述网址://blog.chinaunix.net/uid-20074343-id-1736180.html
代码参考网站://blog.csdn.net/baidu_31981559/article/details/51462426
//www.bubuko.com/infodetail-318130.html
 
(五)图块切割
    经过了前面的灰度化及二值化后,彩色图像被压缩为黑白二色图像。这时就要进行一个关键操作,就是图块切割。
    至此,所有字符的上下左右四个边界全部得到,那么这四条边界线围起来的图像区域,就是我们要切割的小图块。
代码参考://bbs.csdn.net/topics/392009365?list=lz
 EmguCV入门指南-中文翻译版:
//wenku.baidu.com/view/d4217a62af1ffc4ffe47ac27.html
 
(六)字符识别
    将每个小图块依次送入这一环节进行字符识别,就可以得到最终结果。
    这一环节的字符识别运算包含两个步骤。
    一是归一化。归一化的目的是将所有小图块转换为相同大小的图像。前面说了,字符宽度只是近似相同,并不一定完全相同。可以比较明显的看出来,数字“1”比数字“0”或“8”要窄的多,所以为了能够使用模板进行统一匹配,需要将每个字符图块转换为相同大小。
    二是模板匹配。既然是用模板匹配技术来实现图像和字符的匹配,那么首先得有模板。每个字符就是一个模板。
通过提取的特征值,识别的算法有很多,包括分类器算法,模板匹配算法,基于概率统计的Bayes分类器算法,聚类分析算法等。

代码部分: 
C#版本:链接://pan.baidu.com/s/1dE1CfXB 密码:dlqf
iOS版本:链接://pan.baidu.com/s/1slNiAOt 密码:dvjh

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C#.NET频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程