一月份,我在 DSX 中创建了一个链接到 Bluemix 对象存储的项目。来自 Watson IoT 平台的音频文件保存在此对象存储中,并自动加载到项目的 DSX 文件部分。我不再能够重新创建具有相同功能的新项目:我不再能够添加数据服务,并且如果我配置对象存储,它会显示为目标而不是源。我需要阅读 .wav 文件并在 Python 笔记本中使用 numpy 处理它们。有什么建议吗?
2 回答
你能添加更多细节吗?我不明白是什么问题:
- 您无法在 DSX 中创建与对象存储关联的新项目?
- 您的 wav 文件不会自动显示在 DSx 项目中吗?
我假设您正在尝试读取您上传到对象存储的 .wav 文件。
要读取波形格式文件,您需要像 scipy 这样的库。
scipy 库允许您从文件源读取 wav 文件。
https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html
为了从对象存储中读取数据,您需要使用请求,然后您需要将内容作为文件保存到 GPFS,以便您可以在 scipy 的读取功能中使用它。
scipy.io.wavfile.read('samplewavefile1.wav')
然后你可以使用 numpy 做任何你想做的事情 如何在 Python 中操作 wav 文件数据?
import numpy as np
import scipy.io.wavfile
rate, data = scipy.io.wavfile.read('samplewavefile1.wav')
sin_data = np.sin(data)
print sin_data
这是完整笔记本的链接:- https://github.com/charles2588/bluemixsparknotebooks/blob/master/Python/ReadBinaryfilesfromObjectStorage.ipynb