当前位置: 首页 > news >正文

【具身智能】本地实时语音识别kaldi在正点原子RK3588上部署

纸上得来终觉浅,终知此事要躬行

费曼学习法:确定目标,以教代学,不断反馈和总结


1. 安装

        官网上描述有3种安装方法:从预构建wheels下载安装、直接在目标板安装和通过交叉编译工具编译安装。

        预构建wheels安装

        首先登陆rk3588终端查看安装的python版

root@ATK-DLRK3588:/# python --version
Python 3.10.5

        下载对应python版本的whl文件,由于我的arm 64位开发板对应的python版本为3.10,所以下载sherpa_onnx-1.11.2-cp310-cp310-linux_aarch64.whl安装包。如果使用网页下载速度太慢,建议在链接上右击使用迅雷下载。

下载连接: https://k2-fsa.github.io/sherpa/onnx/rk-npu-cn.html

        登录开发板,新建文件夹/userdata/caldi

        cd  /userdata

        mkdir caldi

        在adb所在文件夹,按住shift键右击,打开powershell窗口,输入如下命令复制文件到开发板的caldi目录。如果adb命令执行失败,将adb所在目录添加到环境变量的path变量里。

adb push sherpa_onnx-1.11.2-cp310-cp310-linux_aarch64.whl  /userdata/caldi

        进入到/userdata/caldi目录,进行安装

 pip install sherpa_onnx-1.11.2-cp310-cp310-linux_aarch64.whl

         警告先不用管

        检查sherpa-onnx是否安装成功 

 2. 识别文件

        在Ubuntu上下载识别文件

        由于需要VPN,经常下载到一半失败,建议通过迅雷下载 

        解压压缩包

 复制到开发板上

 登录开发板,进入目录/userdata/caldi,使用如下命令进行语音文件转文本测试

sherpa-onnx \
  --provider=rknn \
  --encoder=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/encoder.rknn \
  --decoder=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/decoder.rknn \
  --joiner=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/joiner.rknn \
  --tokens=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/tokens.txt \
  ./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/test_wavs/4.wav

 显示如下代表成功

 如果出现RKNN报错,需要重新安装librknnrt.so,经测试2.2.0版本是可以用的。

librknnrt.so 下载地址https://github.com/airockchip/rknn-toolkit2/blob/master/rknpu2/runtime/Linux/librknn_api/aarch64/librknnrt.so

 下载整个仓库会耗费大量时间,可以用GitHub directory downloader下载单独文件。

 3. 实时语音识别

        首先获取麦克风设备的名称,使用命令 arecord -l


        使用card 0,device 0,USB 摄像头上的麦克风

sherpa-onnx-alsa \
  --provider=rknn \
  --encoder=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/encoder.rknn \
  --decoder=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/decoder.rknn \
  --joiner=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/joiner.rknn \
  --tokens=./sherpa-onnx-rk3588-streaming-zipformer-small-bilingual-zh-en-2023-02-16/tokens.txt \
  plughw:0,0

 输出如下,代表成功

 参考链接:


实时语音识别Kaldi官网

111. 新一代Kaldi + RK NPU: 本地实时语音识别之rk3588_哔哩哔哩_bilibili

http://www.xdnf.cn/news/1094779.html

相关文章:

  • 图像匹配方向最新论文--CoMatch: Covisibility-Aware Transformer for Subpixel Matching
  • 自动化Trae Apollo参数解释的批量获取
  • LeetCode热题100—— 152. 乘积最大子数组
  • 7.神经网络基础
  • SpringBoot集成文件 - 大文件的上传(异步,分片,断点续传和秒传)
  • huggingface 笔记: Trainer
  • Airtest 的 Poco 框架中,offspring()
  • 使用Python求解最优化问题:从理论到实践的全方位指南
  • 2025年上半年软件设计师考后分享
  • LLM中 最后一个词语的表征(隐藏状态)通常会融合前面所有词语的信息吗?
  • 跨服务sqlplus连接oracle数据库
  • Flink-1.19.0源码详解6-JobGraph生成-后篇
  • 【Java】【字节面试】字符串中 出现次数最多的字符和 对应次数
  • pytorch chunk 切块
  • 两种方式清除已经保存的git账号密码
  • 11.7 ChatGPT奖励模型完全解读:RLHF核心技术深度剖析与Hugging Face实战
  • MyBatisPlus-03-扩展功能
  • 学习日记-spring-day44-7.9
  • 前端进阶之路-从传统前端到VUE-JS(第四期-VUE-JS页面布局与动态内容实现)(Element Plus方式)
  • 2025快手创作者中心发布视频python实现
  • 基于docker进行渗透测试环境的快速搭建(在ubantu中docker设置代理)
  • 单细胞入门(2)-经典案例分析
  • 分治算法---快排
  • 【TCP/IP】2. 计算机网络与因特网体系结构
  • Linux驱动04 --- 网络编程TCP客户端
  • 【AI News | 20250708】每日AI进展
  • mysql 故障检测与处理
  • 【牛客刷题】游游的字母串
  • RIP实验
  • 练习:对象数组 5