Giter Club home page Giter Club logo

ocrliteandroidonnx's Introduction

OcrLiteAndroidOnnx

Issue Star

目录

联系方式

  • QQ①群:994929053(满)
  • QQ②群:820132154(满)
  • QQ③群:904091319(满)
  • QQ④群:615877948(满)
  • QQ⑤群:185905924

项目完整源码

  • 整合好源码和依赖库的完整工程项目,可到Q群共享内下载或Release下载,以Project开头的压缩包文件为源码工程,例:Project_OcrLiteAndroidOnnx-版本号.7z
  • 如果想自己折腾,则请继续阅读本说明

APK下载

  • 编译好的demo apk,可以在release中下载,或者Q群共享内下载,文件名例:OcrLiteAndroidOnnx-版本号-release.apk
  • 或者Github下载

简介

Chineseocr Lite Android Onnx Demo,超轻量级中文OCR Android Demo,支持onnx推理 (DBNet+AngleNet+CRNN)

代码和模型均源自chineseocr lite的onnx分支

详情请查看 https://github.com/ouyanghuiyu/chineseocr_lite

onnxruntime框架https://github.com/microsoft/onnxruntime

总体说明

  1. 封装为独立的Library,可以编译为aar,作为模块来调用;
  2. Native层以C++编写;
  3. Demo App以Kotlin-JVM编写;
  4. Android版与其它版本不同,包含了几个应用场景,包括相册识别、摄像头识别、手机IMEI号识别、摄像头身份证识别这几个功能页面;

更新说明

2021-09-29 update 1.6.0

  • opencv 3.4.15(特别说明:4.5.3也可以支持,如果换成cv4,minSdkVersion必须改为24)
  • onnxruntime 1.9.0
  • 升级kotlin: 1.5.31
  • 升级gradle: 7.0.2
  • 升级各dependencies
  • 使用kotlin coroutines代替rxjava

2021-10-28 update 1.6.1

  • 编辑build.gradle,把版本定义放到root build.gradle
  • 编辑github workflow config,上传aar文件到release

2022-03-03 update 1.6.2

  • 升级gradle
  • 升级依赖库

2022-06-20 update 1.7.0

  • onnxruntime 1.11.1
  • 高版本的opencv会要求 Minimum required by OpenCV API level is android-24,所以目前仍停留在3.4.15
  • 如果不在意MinSdk,可自行下载新版opencv

编译说明

  1. AndroidStudio 2021.2.1或以上;
  2. NDK下载,在SDK Tools中下载,版本选最新版;
  3. cmake 3.4.1或以上,最好是3.18.1,在SDK Tools中下载;
  4. 原始模型来自https://github.com/DayBreak-u/chineseocr_lite/tree/onnx/models。
  5. 模型目录结构为
OcrLiteAndroidOnnx/OcrLibrary/src/main/assets
├── angle_net.onnx
├── crnn_lite_lstm.onnx
├── dbnet.onnx
└── keys.txt

5.下载opencv-mobile-3.4.15-android.7z,下载地址 解压后目录结构为

OcrLiteAndroidNcnn/OcrLibrary/src/sdk
    └── native
        ├── jni
        └── staticlibs
  1. 下载onnxruntime-1.11.1-android.7z,下载地址
  • 解压后目录结构为
OcrLiteAndroidOnnx/OcrLibrary/src/main/onnx
├── ONNXConfig.cmake
├── arm64-v8a
│   └── libonnxruntime.so
├── armeabi-v7a
│   └── libonnxruntime.so
├── include
├── x86
│   └── libonnxruntime.so
└── x86_64
    └── libonnxruntime.so
  1. 编译好的apk大约3xMB

编译Release包

  • mac/linux使用命令编译./gradlew assembleRelease
  • win使用命令编译gradlew.bat assembleRelease
  • 输出apk文件在app/build/outputs/apk

重新编译

删除项目根目录下的如下缓存文件夹

.idea
build
app/build
OcrLibrary/.cxx
OcrLibrary/build

项目结构

OcrLiteAndroidOnnx
    ├── app               # demo app
    ├── capture           # 截图
    ├── common-aar        # app引用的aar库
    ├── keystore          # app签名密钥文件
    ├── OcrLibrary        # Ocr引擎库,包含Jni和C++代码
    └── scripts           # 编译脚本

常见问题

输入参数说明

请参考OcrLiteOnnx项目

关于作者

版权声明

  • OCR模型版权归DayBreak所有;
  • 其它工程代码版权归本仓库所有者所有;

示例图

IMEI识别

avatar

身份证识别

avatar

车牌识别

avatar

ocrliteandroidonnx's People

Contributors

benjaminwan avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.