前一段时间用到火车票OCR处理,因为要求不高就自己简单写了一个。首先是模型选择,初步对比了几个开源的OCR产品后,选择了百度的PaddleOCR。自己用Python开发了一个简单的数据结构化功能,并用Gradio写了一个简答的界面。效果如下(火车票图片来自于网络):

代码如下:
import gradio as gr
import os
import cv2
from PIL import Image
from paddleocr import PaddleOCR, draw_ocr
from IPython import display
import re
import numpy as np
import matplotlib.pyplot as plt
# 简单的数据结构化处理,主要思路就是利用关键字
def extract_train(result):
station=0
cc=0
output=[]
for line in result:
if '站' in line[1][0]:
if station==0:
output.append(['始发站',line[1][0]])
elif station==1:
output.append(['到站',line[1][0]])
station=station+1
if (line[1][0][0] in ['C','D','G','Z','T','K','L','A','Y'])&(len(line[1][0])==4):
output.append(['车次',line[1][0]])
if ('年' in line[1][0])&('月' in line[

文章介绍了作者如何使用百度的PaddleOCR进行火车票信息的OCR识别,通过Python编写数据结构化功能,结合Gradio创建交互式界面,展示识别结果。用户上传车票图片,系统能识别并提取始发站、到站、车次、乘车时间等关键信息。
最低0.47元/天 解锁文章
5123

被折叠的 条评论
为什么被折叠?



