使用python中的OCR批量读取图片中的文字
时间: 2024-05-12 11:19:29 浏览: 17
使用Python中的OCR库(例如pytesseract)可以轻松地批量读取图片中的文字。下面是一个简单的示例代码:
```python
import pytesseract
from PIL import Image
import os
# 读取图片中的文字
def ocr(image_path):
img = Image.open(image_path)
text = pytesseract.image_to_string(img, lang='eng')
return text
# 批量读取指定路径下的所有图片
def batch_ocr(folder_path):
for filename in os.listdir(folder_path):
if filename.endswith('.jpg') or filename.endswith('.png'):
image_path = os.path.join(folder_path, filename)
text = ocr(image_path)
print(filename + ': ' + text)
# 示例:批量读取当前文件夹下的所有图片
batch_ocr('.')
```
在上面的示例代码中,我们定义了两个函数:`ocr`用于读取单张图片中的文字,`batch_ocr`用于批量读取指定路径下的所有图片。我们使用了Python中的os库来遍历文件夹中的所有文件,并使用PIL库打开图片。在`ocr`函数中,我们使用了pytesseract库中的`image_to_string`函数来进行OCR操作,并将结果返回。最后,在`batch_ocr`函数中,我们遍历指定文件夹下的所有图片,调用`ocr`函数进行OCR操作,并打印出每张图片中的文字。
需要注意的是,使用OCR进行文字识别的准确度受到多种因素的影响,例如图片质量、字体、字体大小和背景等。因此,在实际使用中需要根据具体情况进行调整和优化。