繁体   English   中英

Python 手写文字提取

[英]Python handwritten text extraction

我需要从图像文件中提取一些文本,但手写信息效果不佳。 它写在我用适当的扫描仪扫描回来的打印纸上

手写信息遵循某种模式,并且在大多数情况下位于空白区域且大小合适

我试过的:

  • tesseract 的不同语言(eng_best、eng_fast、por_best、por_fast)
  • 阅读前的不同图像处理(灰度、模糊和许多其他人的食谱)
  • 颜色阈值以隔离蓝色(我尝试过的范围均无效)
  • 用 gimp 擦除打印的文本以隔离书面内容(仍然 tesseract 无法高效)
  • cv2.matchTemplate 找到一个数据的索引和 map 它

我的想法不多了

这是一个图片作为例子

您可以通过使用 TensorFlow、OpenCV 和 Keras 来利用 OCR。 查看本教程: https://www.pyimagesearch.com/2020/08/24/ocr-handwriting-recognition-with-opencv-keras-and-tensorflow/

以下是一些用于图像比较和学习的基础图像: http://yann.lecun.com/exdb/mnist/

他们有一个很好的细分,这可能会帮助您理解!

easyocr 是这里的替代方案! 输入图像调整和饲料如下
在此处输入图像描述

import cv2
import numpy as np
import easyocr

reader = easyocr.Reader(['en'],gpu = False) # load once only in memory.

image_file_name='handwritten.png' 
image = cv2.imread(image_file_name)

# sharp the edges or image.
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
sharpen_kernel = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
sharpen = cv2.filter2D(gray, -1, sharpen_kernel)
thresh = cv2.threshold(sharpen, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1]
r_easy_ocr=reader.readtext(thresh,detail=0)

粗体示例文本
['Prontuario=', '0000069450', 'Atendimento=', '824222', 'Nascimento: 12/12/1958', 'Convenio', 'SUS', 'AMBULATORIO', 'Data Atend,', '10/ 06/2019', '2.31.37', 'Sexo:', 'Masculino', 'Conselho', '41921', 'ANAMNESE', 'CONSULTA URGENCIA', 'QP: REFERE SENSACAO DE ALGO ARRANHANDO EM OD, INICIO ONTEM ,', 'T 1 ', 'REFERE TER OCULOS, NAQ TROUXE HQJE', ' P 6' , 'HMP:', 'NEGA HAS,', 'Ao', 'J' , 'NEGA DM,', 'EM USO DE;', 'NADA', 'ALERGIA MEDICAMENTOSA: NEGA', 'Ap L', 'CIRURGIAS OCULARES PREVIA: NEGA:', 'TRAUMA OCULAR PREVIA: NEGA.', '2ol50', '0lh', '1' , 'HMF', 'NEGA HISTORIA DE GLAUCOMA OU CEGUEIRA', 'AV SC:', 'Bio', '3', 'OD; 20/50', '20/25P COM PH', 'OE; 20/50'、'20/25P COM PH'、'BIO QD='、'德'、'3。 1'、'PALPEBRAS E TARSOS SA'、'CA PROF、SEM RCA、SEM PKS、PFR'、'C TRANSP'、'SEM AREA CORANDO'、'Pio'、'1'、'CE PERIPUPILAR AS 6H'、' BIO OE;'、'Oiag'、'4'、'PALPEBRAS E TARSOS SA'、'CA PROF'、'SEM RCA、SEM PKS、PFR'、'C TRANSP、SEM AREA CORANDO'、'JTo'、 '1'、'TBD NORMAL AO'、'CD: RETIRO CE'、'1'、'CURATIVO COM REGENCEL'、'REGENCEL E LUBRIFICANTE'、'ORIENTACOES GERAIS'、'RETORNO IMEDIATO SE PIORA'、'SINAIS DE ALARME' , 'R1 VANESSA P', 'Jirg']"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM