readme.md 2.17 KB
Newer Older
Daniel's avatar
Daniel committed
1

游雁's avatar
游雁 committed
2

Daniel's avatar
Daniel committed
3
## 注意
Daniel's avatar
Daniel committed
4
本程序只支持 采样率16000hz, 位深16bit的 **单通道** 音频。
游雁's avatar
游雁 committed
5

Daniel's avatar
Daniel committed
6
7
## 快速使用

Daniel's avatar
Daniel committed
8
9
10
11
12
13
### Windows
 
 安装Vs2022 打开cpp_onnx目录下的cmake工程,直接 build即可。 本仓库已经准备好所有相关依赖库。
 
### Linux
See the bottom of this page: Building Guidance
Daniel's avatar
Daniel committed
14
15
16



Daniel's avatar
Daniel committed
17
18
Windows下已经预置fftw3及openblas库。

Daniel's avatar
Daniel committed
19
20
21
22
23
24
25
26
27
28
29

###  运行程序

tester  /path/to/models/dir /path/to/wave/file

tester /data/models  /data/test.wav

/data/models 需要包括如下两个文件: model.onnx 和vocab.txt
```

```
Daniel's avatar
Daniel committed
30
## 支持平台
Daniel's avatar
Daniel committed
31

Daniel's avatar
Daniel committed
32
33
- Windows
- Linux/Unix
Daniel's avatar
Daniel committed
34
35
36
37

## 依赖
- fftw3
- openblas
Daniel's avatar
Daniel committed
38
- onnxruntime
游雁's avatar
游雁 committed
39
40
41
42
43
44
45
46
47
48
49
50
51
52


## 导出onnx格式模型文件
安装 modelscope与FunASR,[安装文档](https://github.com/alibaba-damo-academy/FunASR/wiki)
```shell
pip config set global.index-url https://mirror.sjtu.edu.cn/pypi/web/simple #推荐使用上交pip源
pip install "modelscope[audio_asr]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
git clone https://github.com/alibaba/FunASR.git && cd FunASR
pip install --editable ./
```
导出onnx模型,[详见](https://github.com/alibaba-damo-academy/FunASR/tree/main/funasr/export),参考示例,从modelscope中模型导出:

```
python -m funasr.export.export_model 'damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch' "./export" true
Daniel's avatar
Daniel committed
53
```
Daniel's avatar
Daniel committed
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73

## Building Guidance

```
git clone https://github.com/RapidAI/RapidASR.git
cd RapidASR/cpp_onnx/
mkdir build
cd build
# download an appropriate onnxruntime from https://github.com/microsoft/onnxruntime/releases/tag/v1.14.0
# here we get a copy of onnxruntime for linux 64
wget https://github.com/microsoft/onnxruntime/releases/download/v1.14.0/onnxruntime-linux-x64-1.14.0.tgz
#ls 
# onnxruntime-linux-x64-1.14.0  onnxruntime-linux-x64-1.14.0.tgz

#install fftw3-dev
apt install libfftw3-dev
#install openblas
apt install libopenblas-dev

# build 
Daniel's avatar
Daniel committed
74
75
 cmake  -DCMAKE_BUILD_TYPE=release .. -DONNXRUNTIME_DIR=/mnt/c/Users/ma139/RapidASR/cpp_onnx/build/onnxruntime-linux-x64-1.14.0
 make
Daniel's avatar
Daniel committed
76
77
78
 
 # then in the subfolder tester of current direcotry, you will see a program, tester
 
Daniel's avatar
Daniel committed
79
80

````
Daniel's avatar
Daniel committed
81
82
83
84
85
86
87
88

### the structure of onnxruntime package.
```
onnxruntime_xxx
├───include
└───lib
```