# android_finger_ocr **Repository Path**: maxenergy/android_finger_ocr ## Basic Information - **Project Name**: android_finger_ocr - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: yuhao1 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-03-18 - **Last Updated**: 2021-03-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # android离线指读OCR DEMO 对指尖所指区域做OCR 采用NCNN做离线推理,指读骨干网络为shufflenetv2,主要是参数少。尾部为手分割分支和指尖定位分支。假设摄像头45度拍摄,app/src/main/camera.h 做图像矫正。app/src/main/hand.h指尖神经网络的后处理,输出指尖坐标和debug图片。OCR部分来自https://github.com/ouyanghuiyu/chineseocr_lite。

## 在android-studio中配置项目 下载解压opencv-4.5.0-android-sdk.zip到根目录 https://sourceforge.net/projects/opencvlibrary/files/4.5.0/opencv-4.5.0-android-sdk.zip/download 依赖NDK版本:android-ndk-r21d。可以在local.properties手动指定 ## 图片上传到android测试机 adb push ./t1.jpg /sdcard/DCIM/Camera/t1.jpg 刷新相册使图片可见 adb shell am broadcast -a android.intent.action.MEDIA_SCANNER_SCAN_FILE -d file:///sdcard/DCIM/Camera/t1.jpg ## Linux系统连接android测试机 https://blog.csdn.net/binglumeng/article/details/69525361 # 本地生成ncnn模型(.bin .param)并测试 ## 编译ncnn mkdir build cd build cmake .. make -j4 生成ncnn/build/tools/onnx/onnx2ncnn 如果编译时报错(target pattern contains no '%')说明需要安装高版本protobuf。https://askubuntu.com/questions/1072683/how-can-i-install-protoc-on-ubuntu-16-04 ## 生成ncnn模型文件,param和bin pth -> onnx ./cv-book-image-recognition/utils/model/pth2trt.py python utils/model/pth2trt.py onnx2ncnn *.onnx *.bin *.param ## 本地ncnn inference 测试 本地编译 examples/handseg.cpp 生成ncnn/build/examples/handseg ./handseg t1.jpg ## android工程更新libncnn.a mkdir build_android cd build_android export NDK_ROOT=/media/pallas/69c96109-1b7a-4adc-91e9-e72166a8d823/android/android-ndk-r21d cmake -DCMAKE_TOOLCHAIN_FILE="${NDK_ROOT}/build/cmake/android.toolchain.cmake" -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DNCNN_OPENMP=ON -DCMAKE_BUILD_TYPE=debug -DANDROID_PLATFORM=android-21 .. make -j4 make install 生成build_android/install/lib/libncnn.a ,替换 handseg_android/app/src/main/jniLibs/armeabi-v7a/libncnn.a 生成build_android/install/include/ncnn , 替换handseg_android/app/src/cpp/include/ncnn