Tesseract&tesseractOCRiOS

安装tesseract在上篇。

1、安装之后默认语言包只有英文包,在github上下载中文简体,链接:https://github.com/tesseract-ocr/tessdata

 然后放入tessdata文件中,/usr/local/share/tessdata

 

2、然后就可以识别文字了

在同等目录下

tesseract 333.jpg output_333 -l chi_sim

会在目录下生成一个output_333.text文件

TesseractOCRiOS

直接pod TesseractOCRiOS到工程

platform :ios,'8.0'
target "TesseractDemo" do
pod 'TesseractOCRiOS', '~> 4.0.0'
end

将Enable Bitcode 改为NO

引用的.m文件改为.mm

导入#import <TesseractOCR/TesseractOCR.h>

在工程下新建一个tessdata文件夹放置语言包

复制代码
- (void)tesseractRecogniceWithImage:(UIImage *)image compleate:(void(^)(NSString *text))compleate {
    G8Tesseract *tesseract = [[G8Tesseract alloc]initWithLanguage:@"eng+chi_sim"];
    //模式
    tesseract.engineMode = G8OCREngineModeTesseractOnly;
    tesseract.maximumRecognitionTime = 10;
    tesseract.pageSegmentationMode = G8PageSegmentationModeAuto;
    //灰化 如果是英文或者数字推荐使用。如果是汉字不推荐使用
    //tesseract.image = [image g8_blackAndWhite];
    tesseract.image = image;
    [tesseract recognize];
    compleate(tesseract.recognizedText);
}
复制代码

目前出现的问题有在上面链接中下载的chi_sim语言包放在项目中会报

actual_tessdata_num_entries_ <= TESSDATA_NUM_ENTRIES:Error:Assert failed:in file tessdatamanager.cpp, line 53

应该是语言包的版本和tesseract的版本不一致导致的。

在这个链接下中文语言包就好了

https://github.com/tesseract-ocr/tessdata/blob/bf82613055ebc6e63d9e3b438a5c234bfd638c93/chi_sim.traineddata

posted @   小师傅啊小师傅  阅读(2748)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示