一、需求分析
识别身份证图片上的身份证号码。
如:

二、python实现源代码

# !/usr/bin/python
#-*-coding:utf-8-*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')import time
time1 = time.time()
from PIL import Image
import pytesseract###########二值化算法
def binarizing(img,threshold):pixdata = img.load()w, h = img.sizefor y in range(h):for x in range(w):if pixdata[x, y] < threshold:pixdata[x, y] = 0else:pixdata[x, y] = 255return img###########去除干扰线算法
def depoint(img):   #input: gray imagepixdata = img.load()w,h = img.sizefor y in range(1,h-1):for x in range(1,w-1):count = 0if pixdata[x,y-1] > 245:count = count + 1if pixdata[x,y+1] > 245:count = count + 1if pixdata[x-1,y] > 245:count = count + 1if pixdata[x+1,y] > 245:count = count + 1if count > 2:pixdata[x,y] = 255return img########身份证号码识别
def identity_OCR(pic_path):#####身份证号码截图img1=Image.open(pic_path)w,h=img1.size##将身份证放大3倍out=img1.resize((w*3,h*3),Image.ANTIALIAS)region = (125*3,200*3,370*3,250*3)#裁切身份证号码图片cropImg = out.crop(region)# 转化为灰度图img= cropImg.convert('L')# 把图片变成二值图像。img1=binarizing(img,100)img2=depoint(img)code = pytesseract.image_to_string(img2)print "识别该身份证号码是:"+str(code)if __name__ == '__main__':pic_path="/root/image/331.jpg"identity_OCR(pic_path)time2 = time.time()print u'总共耗时:' + str(time2 - time1) + 's'

三、效果(照片清晰 都能完整识别出来)

【python 图像识别】python 身份证号码识别相关推荐

  1. 使用PYTHON图像识别实现车牌号码识别

    实现车牌号码识别需要使用图像识别技术,可以使用 Python 进行开发. 常用的 Python 库有 OpenCV 和 TensorFlow,它们可以帮助你实现图像处理和深度学习算法. 首先,需要对图 ...

  2. 使用PYTHON图像识别实现车牌号码识别的程序

    车牌号码识别是一个图像识别任务,可以使用Python实现. 首先,需要获取车牌图像数据,然后使用图像处理技术对图像进行预处理,以确保图像的质量和清晰度.接丶后,可以使用Optical Characte ...

  3. 使用PYTHON图像识别实现车牌号码识别的代码

    实现车牌号码识别的代码是需要一定的图像处理知识和编程技巧的,下面是一份简单的实现车牌号码识别的代码示例: ``` import cv2 import numpy as np 读取图像 img = cv ...

  4. 【图像识别】身份证号码识别matlab源码

    简介: 本文主要介绍几种基于灰度的图像匹配算法:平均绝对差算法(MAD).绝对误差和算法(SAD).误差平方和算法(SSD).平均误差平方和算法(MSD).归一化积相关算法(NCC).序贯相似性检测算 ...

  5. 利用python进行身份证号码大全_用 Java 撸一个身份证号码识别系统,准确率高达 90%...

    项目介绍 本项目是通过学习https://gitee.com/nbsl/idCardCv 后整合tess4j,不需要经过训练直接使用的,当然,你也可以进行训练后进行使用.该项目修改原有的需要安装ope ...

  6. python基础教程:python+OpenCV实现车牌号码识别

    这篇文章主要介绍了python+OpenCV实现车牌号码识别,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 基于python+OpenCV的车牌号码识别,供大家参考,具 ...

  7. 基于python+OpenCV的车牌号码识别

    基于python+OpenCV的车牌号码识别 车牌识别行业已具备一定的市场规模,在电子警察.公路卡口.停车场.商业管理.汽修服务等领域已取得了部分应用.一个典型的车辆牌照识别系统一般包括以下4个部分: ...

  8. 原创:谈谈计算机图像识别技术之身份证号码识别

    原创:谈谈计算机图像识别技术之身份证号码识别 作者:刘常军(2014-1-21)   前两天看到一篇文章,说支付宝钱包的iOS版和Android版已经升至8.0,只要通过摄像头对准银行卡进行扫描,支付 ...

  9. 谈谈计算机图像识别技术之身份证号码识别

    转载自 http://www.cnblogs.com/liu7537/p/3528968.html 作者:刘常军(2014-1-21)   前两天看到一篇文章,说支付宝钱包的iOS版和Android版 ...

  10. 牛逼了!github上一个 身份证号码识别系统

    前言 最近发现一个有趣的项目. 这个项目是通过学习https://gitee.com/nbsl/idCardCv 后整合 tess4j,不需要经过训练直接使用的,当然,你也可以进行训练后进行使用. 该 ...

最新文章

  1. 微信小程序客服消息使用指南
  2. java输出文件中匹配的字段_Java如何从文件中打印与给定模式匹配的所有字符串?...
  3. GitHub基本使用
  4. Linux网络流量实时监控工具-ifstat
  5. 隐式调用 Intent 大全
  6. 理解Go Interface
  7. c语言全局变量和局部变量问题汇总
  8. 算法--递归--走台阶问题(2种递归+递归改循环)
  9. python中read和readline的区别_Python中read()、readline()和readlines()三者间的区别和用法...
  10. (需求实战_03) SpringBoot整合RabbitMQ 关键代码、策略、模式讲解
  11. mysql优化要点_你需要掌握的 Mysql 优化的一些要点
  12. Android系列---JSON数据解析
  13. 数据库mysql的注释怎么加_mysql表如何添加字段注释
  14. 解决Required String parameter xxx is not present异常
  15. 为何MAC的JDK/JRE大小这么小?
  16. bios刷写工具_不仅仅带来新功能!以戴尔游戏本为例的更新BIOS详细教程
  17. 影视APP直播盒子源码 第三方接口无需采集
  18. VMware pro 14
  19. c#图片反色,取底色,照片底色效果
  20. BT5的 U盘启动 制作

热门文章

  1. axure rp web元件ku_Axure教程丨制作自己的Axure元件库
  2. 搭建Struts框架
  3. 软考-网络工程师复习资料
  4. linux+gif+编辑,Linux下GIF制作指南
  5. Visio2013安装教程
  6. 特征数据清洗 编码 标准化
  7. Centos7 完全卸载MySQL8.0
  8. 【保研记录】预推免面试可能遇到的问题(偏计算机)
  9. 深度学习画图软件收集
  10. 在C++Builder中使用OLE出现“类worksheet的paste方法无效”错误的一种解决方法