OCR身份证识别简单算法流程

点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达c3de9355e885b44fd5b2afa6dbfd6538.png

做OCR身份证识别的调研,正好整理一下从基础的图像处理角度的算法流程。

OCR简介

  • 光学字符识别 Optical Character Recognition(OCR)

  • 其目标是对图像中的字符进行分析识别,将其转换为文本格式的字符序列。

  • 利用模式识别和数字图像处理技术,解决文字输入问题。

按输入方式分类

  • 印刷体文字

  • 手写体文字(由扫描仪输入/由手写板输入)

按识别字符集分类

  • 英文,中文,日文,韩文等

  • 中文,常用4000字,各种字体,相似字不易区分

面向应用的OCR

  • 牌照,票据,文稿,名片,身份证,驾驶执照,汽车制造业。


身份证识别

ebd4d37a91c28425ecbbcabcd79a42b8.png

一个典型的身份证识别算法流程图如下:

OCR身份证识别简单算法流程_第1张图片

图像预处理

  • 降噪
    滤波、光照处理

  • 增强(可选)
    灰度拉伸

  • 二值化
    由灰度图像变成二值图像

  • 倾斜校正
    Hough变换、投影法


图像分割

  • 行分割

    身份证图像字符信息分布规则,每行有一定间隙;采用水平投影法进行图像分割
    OCR身份证识别简单算法流程_第2张图片

  • 字符分割

    垂直投影
    OCR身份证识别简单算法流程_第3张图片

字符识别

  • 模板匹配法

    对每个字符建立一个标准模板,进行图形匹配、笔画匹配、几何特征匹配。
    特点:实现简单,图像质量要求高,计算速度慢,相似字符识别率低

  • 人工神经网络字符识别算法

    artificial neural network,简称神经网络(neural network),是一种模仿生物神经网络的结构和功能的数学模型或计算模型。

识别结果处理

bba0c9915548da390229a917d12425cc.png

- 身份证号码验证

OCR身份证识别简单算法流程_第4张图片

- 有效期验证

9ef211d5909a1bbeb6d8341d092fbb30.png


身份证识别软件

  • 云脉

  • 文通

  • Abbyy

  • ……

识别效果和照片清晰度、 倾斜度、背景、光照、对比度等相关性较大。

作者为CSDN博主maowenbei

链接:https://blog.csdn.net/maowenbei/article/details/72765647

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲

在「小白学视觉」公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲

在「小白学视觉」公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

OCR身份证识别简单算法流程_第5张图片

OCR身份证识别简单算法流程_第6张图片

你可能感兴趣的:(算法,python,人工智能,计算机视觉,机器学习)