python图片二值化提高识别率代码实例

yipeiwu_com6年前Python基础

这篇文章主要介绍了python图片二值化提高识别率代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

import cv2from PIL import Imagefrom pytesseract import pytesseractfrom PIL import ImageEnhanceimport reimport string
def createFile(filePath,newFilePath):

  img = Image.open(filePath)

  # 模式L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。
  Img = img.convert('L')
  Img.save(newFilePath)

  # 自定义灰度界限,大于这个值为黑色,小于这个值为白色
  threshold = 200

  table = []
  for i in range(256):
    if i < threshold:
      table.append(0)
    else:
      table.append(1)

  # 图片二值化
  photo = Img.point(table, '1')
  photo.save(newFilePath)
if __name__ == '__main__':
createFile(r'1.bmp',r'newTest.png')

原图:

处理过后的图:

识别结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

wxPython绘图模块wxPyPlot实现数据可视化

wxPython绘图模块wxPyPlot实现数据可视化

本文实例为大家分享了wxPython绘图模块wxPyPlot实现数据可视化的具体代码,供大家参考,具体内容如下 #-*- coding: utf-8 -*- #########...

Python创建数字列表的示例

【一】range()函数 在python中可以使用range()函数来产生一系列数字 for w in range(1,11): print(w) 输出: 1 2 3 4 5...

python利用正则表达式排除集合中字符的功能示例

前言 我们在之前学习过通过集合枚举的功能,把所有需要出现的字符列出来,保存在集合里面,这样正则表达式就可以根据集合里的字符是否存在来判断是否匹配成功,如果在集合里,就匹配成功,否则不成功...

python [:3] 实现提取数组中的数

搜索答案搜索不到,自己试了一把. 首先生成一维数组 a =np.array([1,2,3,4,5,6,7,8,9]) >>> print a [1 2 3 4 5...

Python中的asyncio代码详解

asyncio介绍 熟悉c#的同学可能知道,在c#中可以很方便的使用 async 和 await 来实现异步编程,那么在python中应该怎么做呢,其实python也...