如何通过使用tesseract-ocr从字符串获取特定字段数据而无需从图像中获取字段标签

时间:2018-11-22 07:03:45

标签: regex python-2.7 tesseract string-parsing python-tesseract

我编写了一个程序,要求用户上传DMV许可证图片,并使用tesseract ocr从上传的图片中读取DMV许可证详细信息。我已经完成了tesseract部分工作,在某种程度上做得很好。我有一个原始字符串,现在我需要解析该字符串以获取用户详细信息。问题是DMV许可证上的某些字段没有标签。如姓名,地址等。我需要获取这些详细信息。我想不出主意(也许我可以使用正则表达式,但不知道如何使它工作?)。如果有人已经这样做了,我很乐意看看。 。任何建议都将受到欢迎。

图片:
DMV LICENSE PICTURE

CODE
这是使用tesseract读取上传文件并从图像中获取文本的代码。

    from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
try:
    from PIL import Image
except ImportError:
    import Image
import pytesseract

# replace the path with the path to tesseract installation directory on server.
pytesseract.pytesseract.tesseract_cmd = "C:\Program Files (x86)\Tesseract-OCR\\tesseract.exe"

@csrf_exempt
def upload_dmv(request):
    if request.method == "POST":
        dmv = request.FILES['dmv']
        extracted_data = pytesseract.image_to_string(Image.open(dmv))
        print(extracted_data)
    return HttpResponse(b'OK')  

输出

W YORK STALE
DRIVER Ee C{ENeSae
876 071652

BOGADO
PETER,GIOVANNI.

9520 93RD ST FL 2
OZONE PARK, NY 114116

SexM_ Height6'-02" Eyes BRO:
00806/06/1992

Expires 06/06/2018
ENONE
RB

Issued 03/09/2017

Usa

~e-h.

Crecutive Deputy Comminsioner of Motor

Class E

0 个答案:

没有答案