【Pythons实现识别身份证号码】
2018-03-21 22:51
441 查看
利用Python调研pytesseract库来进行简单的身份证号码识别,在使用直接要安装相关库,具体流程百度
# coding=utf-8
from PIL import Image
import pytesseract
# 识别身份证
# 二值化
def binarizing(img, threshold):
'''
:param img:
:param threshold:
:return:
'''
pix = img.load() # 返回一个用于读取和修改像素的像素访问对象
m, n = img.size
for y in range(n):
for x in range(m):
if pix[x, y] > threshold:
pix[x, y] = 255
else:
pix[x, y] = 0
return img
# 去除干扰线
def depoint(img):
'''
:param img:
:return:
'''
pix = img.load()
m, n = img.size
for y in range(1, n-1):
for x in range(1, m-1):
count = 0
if pix[x, y-1] > 245:
count = count + 1
if pix[x, y+1] > 245:
count = count + 1
if pix[x-1, y] > 245:
count = count + 1
if pix[x+1, y] > 245:
count = count +1
if count > 2:
pix[x, y] = 255
return img
if __name__ == '__main__':
image = Image.open('idcard.png')
image = image.convert('L')
img = binarizing(image, 100)
img = depoint(img)
num = pytesseract.image_to_string(img)
print(str(num))
运行结果:
参考链接:http://blog.csdn.net/u013421629/article/details/72677964
# coding=utf-8
from PIL import Image
import pytesseract
# 识别身份证
# 二值化
def binarizing(img, threshold):
'''
:param img:
:param threshold:
:return:
'''
pix = img.load() # 返回一个用于读取和修改像素的像素访问对象
m, n = img.size
for y in range(n):
for x in range(m):
if pix[x, y] > threshold:
pix[x, y] = 255
else:
pix[x, y] = 0
return img
# 去除干扰线
def depoint(img):
'''
:param img:
:return:
'''
pix = img.load()
m, n = img.size
for y in range(1, n-1):
for x in range(1, m-1):
count = 0
if pix[x, y-1] > 245:
count = count + 1
if pix[x, y+1] > 245:
count = count + 1
if pix[x-1, y] > 245:
count = count + 1
if pix[x+1, y] > 245:
count = count +1
if count > 2:
pix[x, y] = 255
return img
if __name__ == '__main__':
image = Image.open('idcard.png')
image = image.convert('L')
img = binarizing(image, 100)
img = depoint(img)
num = pytesseract.image_to_string(img)
print(str(num))
运行结果:
参考链接:http://blog.csdn.net/u013421629/article/details/72677964
相关文章推荐
- Python实现随机生成有效手机号码及身份证功能示例
- 基于javascript实现根据身份证号码识别性别和年龄
- [置顶] 【python 图像识别】python 身份证号码识别
- Python实现身份证号码解析
- 校验身份证号码(Google App Engine Python实现)
- iOS AVCaptureSession实现获取摄像头图像,并识别图片中身份证号码
- js实现根据身份证号码识别 性别 年龄 生日
- Tesseract-OCR训练实现对模糊身份证号码的识别
- js简单实现根据身份证号码识别性别年龄生日
- python深度学习库tensorflow——实现FC卷积神经网络识别mnist手写体
- 人脸检测和识别及python实现系列(1)-- 环境配置和相关类库安装
- python实现人脸识别经典算法(一) 特征脸法
- python实现百度语音识别api
- Python神经网络代码识别手写字的实现流程(一):加载mnist数据
- 神经网络学习(七)MNIST手写字识别 --- Python实现
- Python实现识别手写数字 简易图片存储管理系统
- 手机识别身份证号码
- python + openCV 实现图像轮廓识别和面积计算
- iOS身份证号码识别
- kNN算法python实现和简单数字识别