PaddleOCR是一款应用于iOS设备上的通用文字识别的OCR库.

Related tags

Image PaddleOCR
Overview

PaddleOCR

PaddleOCR是一款应用于iOS设备上的通用文字识别的OCR库,基于飞浆团队的Paddle Lite库制作,能同时支持动态图和静态图两种方式.

对文本的识别效率极高,当然最重要的是免费!免费!免费!

集成说明

手动集成

opencv2.framework, PaddleOCR.framework, PaddleOCRResource.bundle依次导入到你的iOS项目中,并通过RYPaddleOCR对象创建OCR对象识别图片或者Buffer数据.

  1. 将项目Targets -> Build Settings -> Enable Bitcode 的值改为No.
  2. 在项目Targets -> Build Settings -> Other Linker Flags中,添加-lc++. 或者在Frameworks and Libraries中手动添加libC++.tbd.
  3. 如还有报错信息,需添加系统库CoreMedia.framework, CoreVideo.framework, AVFountion.framework到你的项目中.

CocoaPods集成

在项目的Podfile文件中添加pod 'PaddleOCR',并执行pod install.

  1. 将项目Targets -> Build Settings -> Enable Bitcode 的值改为No.
  2. 在项目Targets -> Build Settings -> Other Linker Flags中,用$(inherited)代替其他输入项.

使用说明

  1. 使用SampleBuffer作为参数进行扫描,可以使用以下方式:
/*
 *  传入相机识别到的视频流,返回扫描到的文本
 *
 *  @param sampleBuffer  视频buffer
 *  @param complete 返回识别后的信息
 */
- (void)scanTextFromSampleBuffer:(CMSampleBufferRef)sampleBuffer
             complete:(void(^)(NSArray<OcrData *> *))complete;
  1. 使用UIImage作为参数进行扫描,可以使用以下方式:
/*
 *  传入图片开始扫描,返回扫描到的文本
 *
 *  @param image  需要扫描的image图片
 *  @param complete 返回识别后的信息
 */
- (void)scanTextFrom:(UIImage *)image
             complete:(void(^)(NSArray<OcrData *> *))complete;
  1. 也可以随时通过cancelScanTask来结束扫描任务.

其他

如果有好的建议或使用中有疑问可以留言,我们共同来讨论.

weichat

Issues
  • pod 拉不下来,lfs貌似满了

    pod 拉不下来,lfs貌似满了

    ' Downloading PaddleOCR.framework/PaddleOCR (44 MB) Error downloading object: PaddleOCR.framework/PaddleOCR (3c88fcc): Smudge error: Error downloading PaddleOCR.framework/PaddleOCR (3c88fcc191b660f35e12b4dda3e87582c4f93cdb18fe8dbc9976a670a30a7212): batch response: This repository is over its data quota. Account responsible for LFS bandwidth should purchase more data packs to restore access.

    Errors logged to /private/var/folders/7w/zgwzt5bj6zdbfj4zl31whm_80000gn/T/d20210514-58634-1ck0t16/.git/lfs/logs/20210514T095739.747126.log Use git lfs logs last to view the log. error: 外部过滤器 'git-lfs filter-process' 失败 fatal: PaddleOCR.framework/PaddleOCR:smudge 过滤器 lfs 失败 warning: 克隆成功,但是检出失败。 您可以通过 'git status' 检查哪些已被检出,然后使用命令 'git restore --source=HEAD :/' 重试 '

    opened by 2856571872 3
  • undefined symbols for architecture arm64

    undefined symbols for architecture arm64

    undefined symbols for architecture arm64: "OBJC_CLASS$_OcrData", referenced from: objc-class-ref in ViewController.o "OBJC_CLASS$_RYPaddleOCR", referenced from: objc-class-ref in ViewController.o ld: symbol(s) not found for architecture arm64

    opened by fredliu168 3
Owner
Leonard
Leonard