赞
踩
开发环境的搭建
注:开发环境搭建参考文档使用 Pyside 构建一个串口调试助手-CSDN博客
使用 Anaconda 搭建
conda create -n paddleOcr_env python=3.8 # 创建一个名为paddleOcr_env,版本为3.8的python虚拟环境
conda activate paddleOcr_env # 激活该虚拟环境
pip install paddlepaddle paddleocr # 安装对应的库
具体代码如下
import os from PIL import Image from paddleocr import PaddleOCR, draw_ocr import docx import pandas as pd # 初始化 OCR 模型 ocr = PaddleOCR(use_angle_cls=True, lang="ch") # 遍历 img/ 目录下的所有图片 img_dir = 'img/' output_dir = 'output/' os.makedirs(output_dir, exist_ok=True) # 创建Word文档和Excel表格对象 doc = docx.Document() data = [] for filename in os.listdir(img_dir): if filename.endswith('.png') or filename.endswith('.jpg') or filename.endswith('.jpeg'): img_path = os.path.join(img_dir, filename) output_path = os.path.join(output_dir, filename) # 进行 OCR 识别 result = ocr.ocr(img_path, cls=True) boxes = [detection[0] for line in result for detection in line] txts = [detection[1][0] for line in result for detection in line] scores = [detection[1][1] for line in result for detection in line] # 绘制结果并保存输出图片 image = Image.open(img_path).convert('RGB') im_show = draw_ocr(image, boxes, txts, scores) im_show = Image.fromarray(im_show) im_show.save(output_path) # 将识别结果添加到Word文档和数据列表中 doc.add_paragraph(f"Image: {filename}") for line in result: print(line) doc.add_paragraph(str(line)) data.append({'Image': filename, 'Text': str(line)}) # 保存Word文档 doc.save('ocr_results.docx') # 创建DataFrame对象 df = pd.DataFrame(data) # 保存Excel表格 df.to_excel('ocr_results.xlsx', index=False) print("OCR completed!")
输出结果分为两部分,一部分是位于 output 目录下的图片识别标注结果,剩下的是运行目录下的 docx/excel 文件
有漏下的不识别的情况存在
不能处理动态模糊图像,需要自己先处理,然后再识别。
其它测试待验证。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。