asr-models-lyric

0 downloads 0 likes on ModelScope updated

Model card

语音识别模型(lyric_asr 使用)

本仓库存放 ROS2 人机交互项目 lyric_acns2 中 lyric_asr 语音识别功能包所依赖的 ASR 转写 + KWS 唤醒词模型。这些模型不进入 git(体积大且来自第三方),统一在此托管、 供协同开发拉取。

目录结构

asr-models-lyric/
├── asr/   # 实时双语 ASR(sherpa-onnx-streaming-paraformer-bilingual-zh-en, int8)
│   ├── encoder.int8.onnx   # 165MB 流式编码器(CPU int8)
│   ├── decoder.int8.onnx   # 71MB 解码器
│   └── tokens.txt          # 词表
└── kws/   # 唤醒词(sherpa-onnx-kws-zipformer-wenetspeech-3.3M-2024-01-01)
    ├── encoder/decoder/joiner-*.onnx   # zipformer 唤醒词模型(拼音建模单元)
    ├── keywords.txt / keywords_raw.txt # 内置唤醒词表
    ├── tokens.txt
    └── test_wavs/          # 自带测试音频 + test_keywords.txt

使用方式(sherpa-onnx)

# ASR 转写(lyric_asr 已封装,模型路径自动从 db/models/asr/asr 加载)
from sherpa_onnx import OnlineRecognizer
r = OnlineRecognizer.from_paraformer(
    tokens="asr/tokens.txt",
    encoder="asr/encoder.int8.onnx",
    decoder="asr/decoder.int8.onnx",
    sample_rate=16000, feature_dim=80, enable_endpoint_detection=True,
)

# KWS 唤醒词
from sherpa_onnx import KeywordSpotter
kws = KeywordSpotter.from_zipformer(
    tokens="kws/tokens.txt",
    encoder="kws/encoder-*.onnx",
    decoder="kws/decoder-*.onnx",
    joiner="kws/joiner-*.onnx",
    keywords_file="kws/keywords.txt",
)

板端部署

  • 模型放运行机 ~/ros_workspaces/db/models/asr/{asr,kws},ros2 launch lyric_asr asr.launch.py
  • 板端(无外网)由 scripts/asr_prepare_offline.sh 打包 + asr_provision.sh 离线部署
  • 自检:scripts/asr_test_chain.sh(依赖/TTS/KWS/ASR/音频IO 等 13 项)

来源与许可

  • ASR:源自 sherpa-onnx 生态、ModelScope ZhaoChaoqun/sherpa-onnx-asr-models(Apache-2.0)
  • KWS:源自 ModelScope pkufool/sherpa-onnx-kws-zipformer-wenetspeech-3.3M-2024-01-01(Apache-2.0,wenetspeech L 10000h 训练)
  • 本仓库仅作镜像托管与团队分发,版权归原作者所有。