图片文字分割
基于像素识别图片文字
目前已经有成熟的OCR图片文字识别技术了,但还是学习一下一些基本的实现知识。
OCR
OCR(optical character recognition)文字识别是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,然后用字符识别方法将形状翻译成计算机文字的过程;即,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。如何除错或利用辅助信息提高识别正确率,是OCR最重要的课题的友好性,产品的稳定性,易用性及可行性等。
OCR技术目前用于各大领域用于文字识别,那么从拍的一张图片如何通过分割得到其中的字呢,下面用python语言进行对图片的分割:
需要用到的包:
import os
import cv2
import numpy as np
OS模块是一个Python的系统编程的操作模块,可以处理文件和目录。
CV2是OpenCV官方的一个扩展库,含有各种有关图像处理的的函数以及进程。
NumPy是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵
读取图片:
image = cv2.imread("origin.png")
二值化
# adaptiveThreshold参数解释
# 第一个原始图像
# 第二个像素值上限
# 第三个cv2.ADAPTIVE_THRESH_GAUSSIAN_C :领域内像素点加权和,权重为一个高斯窗口
# 第四个值的赋值方法:只有cv2.THRESH_BINARY 和cv2.THRESH_BINARY_INV
# 第五个Block size:规定领域大小(一个正方形的领域)
# 第六个常数C,阈值等于均值或者加权值减去这个常数(为0相当于阈值 就是求得领域内均值或者加权值)
image = cv