美文网首页iOS学习开发iOS开发记录
iOS Swift 摄像头实时识别手机号(实时OCR)

iOS Swift 摄像头实时识别手机号(实时OCR)

作者: jzhang | 来源:发表于2019-03-24 20:56 被阅读5次

    希望实现的效果如图:

    效果

    前期踩的坑

    前段时间项目上有个需求,需要通过摄像头识别快递单中的快递单号及手机号。快递单号没什么问题,只是二维码的识别。但是手机号的识别需要使用OCR识别,有点难度。
    一开始找到了Tesseract-OCR-iOS库,但是DEMO都跑不起来,放弃了。又找到一个SwiftOCR库,据作者介绍,这个库适用于快速识别单行文本,速度比TesseractOCRiOS快得多。但是我试用下来,确实集成什么的都很方便,但是识别手机号的准确性问题很大。一开始我测试用的快递单倒是问题不大,但是后来换了个快递单,字体不一样了,识别准确率就极低了。真的是很诡异,也没有找到什么很好的办法解决这个问题,最后无奈又回头使用TesseractOCRiOS了。(PS:这两个库都有3000多star,我觉得可能是我不会用,如果有人使用SwiftOCR没问题的话,希望评论一下,提供个 demo给我学习,万分感谢)

    最后用TesseractOCRiOS解决问题

    集成

    1.使用cocoapods集成
    target 'MobileOCRDemo' do
      # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
      use_frameworks!
    
      # Pods for MobileOCRDemo
      pod 'TesseractOCRiOS', '~> 5.0.1'
    
    end
    

    这个库比较大,估计pod install速度会比较慢,加速参考:gem install、brew install、pod install速度慢的终极解决办法

    2.导入训练好的识别数据文件。
    image.png
    注意事项:
    1.文件夹名称和文件名称不能改。并且必须用我demo里的文件,这个文件有版本要求,找最新的是用不了的。
    2.导入文件方式要直接拖入tessdata文件夹,选Create folder references
    image.png
    3.其它的看demo里面的代码吧

    具体TesseractOCRiOS的使用下次另开文章写,只是需要识别手机号的话,这篇文章和demo已经足够了。

    相关文章

      网友评论

        本文标题:iOS Swift 摄像头实时识别手机号(实时OCR)

        本文链接:https://www.haomeiwen.com/subject/mmdpvqtx.html