Android 使用百度飞桨做OCR的本地识别

在项目过程中,由于调用接口识别比较费时间,后来采用了飞桨开源模型来做本地的OCR识别,它的SDK使用完全免费,无有效期限制。

我们这里使用的是OCRV3的包,只是在扫描过程中使用了下OCR的识别

按demo导入包文件

调用方法:

    private void uploadOcr(Bitmap bitmap, Handler handler) {
        try {
            mInferConfig = new InferConfig(activity.getAssets(), "infer");
            mInferConfig.setThread(Util.getInferCores());


            mOcrManager = new InferManager(activity, mInferConfig, "XXXX-XXXX-XXXX-XXXX");
            StringBuffer stringBuffer = new StringBuffer();
            List<com.baidu.ai.edge.core.ocr.OcrResultModel> modelList;
            modelList = mOcrManager.ocr(bitmap, 0.1f);
            List<BasePolygonResultModel> results = new ArrayList<>();
            for (int i = 0; i < modelList.size(); i++) {
                com.baidu.ai.edge.core.ocr.OcrResultModel mOcrResultModel = modelList.get(i);
                OcrViewResultModel mOcrViewResultModel = new OcrViewResultModel();
                mOcrViewResultModel.setColorId(mOcrResultModel.getLabelIndex());
                mOcrViewResultModel.setIndex(i + 1);
                mOcrViewResultModel.setConfidence(mOcrResultModel.getConfidence());
                mOcrViewResultModel.setName(mOcrResultModel.getLabel());
                mOcrViewResultModel.setBounds(mOcrResultModel.getPoints());
                mOcrViewResultModel.setTextOverlay(true);
                results.add(mOcrViewResultModel);
            }
            mOcrManager.destroy();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

这里返回的结果是按一个个矩形识别的,所以最后结果需要自己按矩形的x,y值来判断计算拼接下

### 如何获取并使用 PaddleSpeech 飞桨语音合成工具 #### 工具概述 PaddleSpeech 是由百度飞桨开源的一个强大的语音处理工具包,涵盖了多种语音技术应用,包括但不限于语音识别、语音合成、声纹识别以及语音指令等功能[^3]。 #### 获取文档与教程资源 官方提供了详尽的学习资料和实践指南来帮助开发者快速上手。具体可以通过以下途径获得相关文档: - **在线学习课程**:可以参考《飞桨PaddleSpeech语音技术课程》,其中包含了关于如何通过 paddle astudio 平台训练模型的具体指导[^1]。 - **GitHub 仓库中的 README 文件**:此文件不仅介绍了安装方法还列举了一些常见问题解答链接至 issues 页面供进一步查阅[^2]。 #### 安装与环境搭建 为了能够顺利运行该工具包内的各项功能模块,在正式操作之前需完成必要的软件依赖项配置工作: ##### 步骤说明(非实际步骤描述) 以下是推荐的一种实现方案用于设置开发环境以便于后续实验开展: ```bash # 克隆项目代码库到本地机器 git clone https://github.com/PaddlePaddle/PaddleSpeech.git # 进入指定子目录位置准备执行特定任务流程 cd PaddleSpeech/examples/zh_en_tts/tts3/ ``` 接着按照指示进行数据集准备工作之后即可启动针对 fastspeech2 和 hifigan 模型参数调整过程从而构建属于自己的个性化声音生成解决方案[^4]。 #### 功能探索实例分享 下面给出一段简单的 Python 脚本用来演示基本 API 接口调用方式实现文本转语音转换效果如下所示: ```python from paddlespeech.t2s.bin.synthesize import main as synthesize_main config_path = 'conf/default.yaml' checkpoint_path = './exp/checkpoints/snapshot_iter_10000.pdz' synthesize_main(config=config_path, ckpt=checkpoint_path, text="你好世界", output_dir='./output/') ``` 以上代码片段展示了如何利用 `main` 函数加载预先定义好的配置文件路径(`default.yaml`) 及保存下来的权重参数快照 (`snapshot_iter_10000.pdz`) 来完成给定字符串 ("你好世界") 向对应音频片段输出的过程。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值