代码
# !conda create -n pyocr python=3.10
# !conda activate pyocr
# !pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
#
# !pip install "paddleocr>=2.0.1"
不止BI
2024年5月19日
PaddleOCR 是由百度研究开发的开源光学字符识别(OCR)工具包,支持超过 80 种语言,包括中文、英语、日语、韩语、法语、德语、西班牙语和葡萄牙语等
[[[37.0, 78.0], [252.0, 33.0], [263.0, 99.0], [48.0, 145.0]], ('京N·HIN10', 0.9273297190666199)]
import os
import pandas as pd
from PIL import Image
from paddleocr import PaddleOCR
# 指定要扫描的文件夹路径
folder_path = './images/ocr/'
# 初始化 OCR 模型
ocr = PaddleOCR(use_angle_cls=True, lang="ch")
# 遍历文件夹中的所有图片文件
file_list = os.listdir(folder_path)
data = []
for file in file_list:
if file.endswith('.jpg') or file.endswith('.png'):
# 对图片进行 OCR 识别
img_path = os.path.join(folder_path, file)
result = ocr.ocr(img_path, cls=True)
result = result[0]
# 保存 OCR 识别结果
for line in result:
boxes = line[0]
txts = line[1][0]
scores = line[1][1]
data.append({'filename': file, 'txts': txts, 'scores': scores})
# 将 OCR 识别结果保存在数据框中
df = pd.DataFrame(data)
# 打印数据框
print(df)
filename txts scores
0 车牌1.jpg 晋L·90388 0.995783
1 车牌2.jpg 京N·HIN10 0.927330
2 车牌3.png 鲁A·66666 0.995258
esseract是开源的OCR引擎,支持多种语言识别。需要先下载对应的语言数据,然后指定语言进行识别,对于复杂背景的情况下,识别较差。
[1] "鲁A66666\n"
word confidence bbox
1 鲁 63.51566 1,4,6,124
2 A66666 60.35930 6,1,397,124