目的
????????在前三篇文章中完成了銀行卡識別整個模型訓練等工作,通過了解PaddleOCR的端側部署,我們也可以將銀行卡號檢測模型和識別模型移植到手機中,做成一款uni-app手機端離線銀行卡號識別的應用。
準備工作 ?
為了不占用過多篇幅,這里不講解Android studio如何下載和SDK配置,請自行查找資料。
1、HbuilderX
2、Android Studio 并配置 NDK?
請根據 Android Studio 用戶指南中的安裝及配置 NDK 和 CMake 內容,預先配置好 NDK 。
3、基于PaddleOCR的離線銀行卡號識別插件
插件包結構:
開始
一、HbuilderX中使用
1、將插件包拷貝到nativeplugins中
2、manifest.json中選擇離線插件
3、制作自定義基座后,就可以正常使用了
二、Android Studio中使用
1、將插件里文件引入libs目錄下
2、修改app包下的build.gradle
添加ndk配置
排除libc++_shared.so包沖突:
3、修改dcloud_uniplugins.json,添加插件配置
三、編寫uni-app頁面代碼
<template><div><button type="primary" @click="takePhoto">銀行卡識別</button></div>
</template><script>var ocrModule = uni.requireNativePlugin("YY-TomatoOCRBank")// var ocrModule = uni.requireNativePlugin("OCRModule")const modal = uni.requireNativePlugin('modal');export default {onLoad() {},methods: {takePhoto() {uni.chooseImage({count: 6, //默認9sizeType: ['original', 'compressed'], //可以指定是原圖還是壓縮圖,默認二者都有sourceType: ['camera'], //從相冊選擇success: function(res) {console.log(JSON.stringify(res.tempFilePaths));uni.getImageInfo({src: res.tempFilePaths[0],success: function(image) {// 調用異步方法ocrModule.ocrAsyncFunc({'filePath': image.path},(ret) => {modal.toast({message: ret,duration: 30});})}});}});}}}
</script>
制作一中的自定義基座打包并運行到手機上或導出離線頁面在android studio中運行到手機上。


?完畢!!!
總結
? ? ? ? ?以上就是制作uni-app離線銀行卡識別全流程步驟,當然如果你不會Android開發也沒關系,在uni-app的插件市場中已經發布了本插件。
本文章中插件下載地址:基于PaddleOCR開發uni-app離線銀行卡識別插件
uni-app的插件市場地址:本地離線銀行卡識別TomatoOCR - DCloud 插件市場