PaddleOCR中Android示例Demo编译问题解决

本文档详细介绍了在不编译整个PaddleOCR项目时,如何解决单独编译Android Demo遇到的OpenCV错误。通过修改build.gradle文件,添加abiFilter指令来指定编译架构,最终成功编译并运行程序。需要注意的是,编译后的程序适用于arm64架构的设备或模拟器。
摘要由CSDN通过智能技术生成

一、前言

在PaddleOCR项目 ( 地址为 https://github.com/PaddlePaddle/PaddleOCR) 中的 deploy 文件夹下有个 android_demo 文件夹.

android_demo 这个文件夹就是一个单独的项目. 但是在未编译 PaddleOCR 时, 单独编译这个项目就会出现问题.

二、解决方案

如果不编译的话, 是可以直接运行这个项目的. 如果对源码进行修改后就需要重新编译, 这个时候就会出现问题.

在第一次进行 Make Build 会出现 OpenCV 的错误, 但这不是 OpenCV 的问题. 错误代码如下所示.

按照网上部分教程, 有些会修改 OpenCVConfig.cmake 中的变量 FASLE 为 TRUE.

但是这个时候编译就会出现新的问题.

这是因为没有编译 PaddleOCR 从而获得其他的芯片架构的运行库文件. 但是这个 Android Demo 里面已经有了 arm-v8 架构的运行库文件. 这里就只需要向 build.gradle 添加编译指定架构的指令.

android {
    defaultConfig {
        xxxxxxxx
        externalNativeBuild {
            xxxxxxx
        }
        // new content
        ndk {
            abiFilter 'arm64-v8a'
        }
    }
}

如果不行就尝试在 externalNativeBuild 中添加

android {
    defaultConfig {
        xxxxxxxx
        externalNativeBuild {
            xxxxxxx
            // new content
            ndk {
                abiFilter 'arm64-v8a'
            }
        }
    }
}

三、结果

编译成功截图

需要注意的是, 这样编译出的程序用模拟器运行时就需要选择 arm64 架构, 或者使用较为新的安卓真机运行.

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值