使用 Tesseract 实现藏文OCR
要识别藏文,最常用且有效的方法是使用Tesseract OCR(谷歌开源的OCR工具),因为它拥有针对藏文的预训练模型支持。
🚀 一、安装 Tesseract OCR 软件:
- 下载链接:Tesseract OCR 下载页面
Windows用户:
-
下载
Tesseract installer
(tesseract-ocr-w64-setup.exe
),安装时勾选“Additional language data”,或单独下载藏文语言包。 -
安装时务必记住安装路径,例如:
C:\Program Files\Tesseract-OCR\
📌 二、添加环境变量:
- 把
C:\Program Files\Tesseract-OCR\
路径添加到环境变量中。
检查是否安装成功:
tesseract --version
📥 三、安装 Python 调用接口:
打开命令行,输入:
pip install pytesseract pillow
pytesseract
用于调用Tesseract。pillow
用于图片处理。
🌍 四、下载藏文语言模型:
-
前往Tesseract藏文语言包页面下载
bod.traineddata
。 -
将下载的
bod.traineddata
文件复制到Tesseract安装目录下的tessdata
文件夹:
例如:
C:\Program Files\Tesseract-OCR\tessdata\bod.traineddata
📂 五、重新实现藏文OCR程序:
项目结构:
ocr_project/
│
├── test_tibetan.jpg
└── tibetan_ocr_tesseract.py
打开tibetan_ocr_tesseract.py
,编写以下代码:
🧑💻 完整代码示例:
from PIL import Image
import pytesseract# 配置 Tesseract 可执行文件路径 (注意替换为你自己的路径)
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'# 加载图片
img_path = 'test_tibetan.jpg'
img = Image.open(img_path)# 识别藏文
text = pytesseract.image_to_string(img, lang='bod')# 输出结果
print("识别出的藏文为:")
print(text)
▶️ 六、运行测试:
打开命令行,在项目目录下运行:
python tibetan_ocr_tesseract.py
运行后你会得到类似如下结果:
识别出的藏文为:
བཀྲ་ཤིས་བདེ་ལེགས།
中文:扎西德勒
此时表示成功识别藏文图片中的文字!
📖 为什么推荐 Tesseract?
- Tesseract拥有广泛语言支持,包含藏文预训练模型。
- 谷歌开源,社区活跃,广泛应用于藏文OCR实践中。
🚩 常见问题排查:
-
识别效果不好?
- 确认图片清晰,字体标准。
- 尝试对图片进行灰度或二值化处理提高效果。
-
路径问题:
- 必须确保环境变量正确添加。
- 代码里
tesseract_cmd
路径设置必须准确。
🌟 试试使用Tesseract实现你的藏文OCR识别功能吧!