Skip to content

Commit e02db1d

Browse files
authored
Update README.md (#719)
1 parent 24e1ddb commit e02db1d

File tree

1 file changed

+102
-0
lines changed

1 file changed

+102
-0
lines changed

docs/components/README.md

+102
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ VisualDL 是一个面向深度学习任务设计的可视化工具。VisualDL
1212
| :----------------------------------------------------------: | :--------: | :----------------------------------------------------------- |
1313
| [ Scalar](#Scalar--标量组件) | 折线图 | 动态展示损失函数值、准确率等标量数据 |
1414
| [Image](#Image--图片可视化组件) | 图片可视化 | 显示图片,可显示输入图片和处理后的结果,便于查看中间过程的变化 |
15+
| [Audio](#Audio--音频可视化组件) | 音频可视化 | 播放训练过程中的音频数据,监控语音识别与合成等任务的训练过程 |
1516
| [Graph](#Graph--网络结构组件) | 网络结构 | 展示网络结构、节点属性及数据流向,辅助学习、优化网络结构 |
1617
| [Histogram](#Histogram--直方图组件) | 直方图 | 展示训练过程中权重、梯度等张量的分布 |
1718
| [PR Curve](#PR-Curve--PR曲线组件) | 折线图 | 权衡精度与召回率之间的平衡关系 |
@@ -265,6 +266,107 @@ visualdl --logdir ./log --port 8080
265266
<img src="https://visualdl.bj.bcebos.com/images/image-eye.gif" width="60%"/>
266267
</p>
267268

269+
## Audio--音频可视化组件
270+
271+
### 介绍
272+
273+
Audio组件实时查看训练过程中的音频数据,监控语音识别与合成等任务的训练过程。
274+
275+
### 记录接口
276+
277+
Audio 组件的记录接口如下:
278+
279+
```python
280+
add_audio(tag, audio_array, step, sample_rate)
281+
```
282+
接口参数说明如下:
283+
| 参数 | 格式 | 含义 |
284+
| -------- | ------------- | ------------------------------------------- |
285+
| tag | string | 记录指标的标志,如`audio_tag`,不能含有`%` |
286+
| audio_arry | numpy.ndarray | 以ndarray格式表示的音频 |
287+
| step | int | 记录的步数 |
288+
| sample_rate | int | 采样率 |
289+
290+
291+
### Demo
292+
293+
```python
294+
from visualdl import LogWriter
295+
import numpy as np
296+
import wave
297+
298+
299+
def read_audio_data(audio_path):
300+
"""
301+
Get audio data.
302+
"""
303+
CHUNK = 4096
304+
f = wave.open(audio_path, "rb")
305+
wavdata = []
306+
chunk = f.readframes(CHUNK)
307+
while chunk:
308+
data = np.frombuffer(chunk, dtype='uint8')
309+
wavdata.extend(data)
310+
chunk = f.readframes(CHUNK)
311+
# 8k sample rate, 16bit frame, 1 channel
312+
shape = [8000, 2, 1]
313+
return shape, wavdata
314+
315+
316+
if __name__ == '__main__':
317+
with LogWriter(logdir="vdl_audio_0713") as writer:
318+
audio_shape, audio_data = read_audio_data("./testing.wav")
319+
audio_data = np.array(audio_data)
320+
writer.add_audio(tag="audio_tag",
321+
audio_array=audio_data,
322+
step=0,
323+
sample_rate=8000)
324+
```
325+
326+
运行上述程序后,在命令行执行
327+
```shell
328+
visualdl --logdir ./log --port 8080
329+
```
330+
331+
在浏览器输入`http://127.0.0.1:8080`,即可查看图片数据。
332+
333+
<p align="center">
334+
<img src="https://user-images.githubusercontent.com/48054808/87659138-b4746880-c78f-11ea-965b-c33804e7c296.png" width="90%"/>
335+
</p>
336+
337+
### 功能操作说明
338+
339+
- 可搜索音频标签显示对应音频数据
340+
341+
<p align="center">
342+
<img src="https://user-images.githubusercontent.com/48054808/87661431-29956d00-c793-11ea-833b-172d8fc1b221.png" width="80%"/>
343+
</p>
344+
345+
- 支持滑动Step/迭代次数查看不同迭代次数下的音频数据
346+
347+
<p align="center">
348+
<img src="https://user-images.githubusercontent.com/48054808/87661089-a07e3600-c792-11ea-8740-cbe99a64d830.png" width="40%"/>
349+
</p>
350+
351+
- 支持播放/暂停音频数据
352+
353+
<p align="center">
354+
<img src="https://user-images.githubusercontent.com/48054808/87661130-b3910600-c792-11ea-9f9f-2ae66132e9de.png" width="40%"/>
355+
</p>
356+
357+
- 支持音量调节
358+
359+
<p align="center">
360+
<img src="https://user-images.githubusercontent.com/48054808/87661497-49c52c00-c793-11ea-9eeb-471543cd2a0b.png" width="40%"/>
361+
</p>
362+
363+
- 支持音频下载
364+
365+
<p align="center">
366+
<img src="https://user-images.githubusercontent.com/48054808/87661166-c277b880-c792-11ea-8ad7-5c60bb08379b.png" width="40%"/>
367+
</p>
368+
369+
268370
## Graph--网络结构组件
269371

270372
### 介绍

0 commit comments

Comments
 (0)