大河向东流! 2022-09-06 12:23 采纳率: 50%
浏览 42
已结题

特征集矩阵太大,内存不够,提取不了

问题遇到的现象和发生背景

在提取语音数据特征时,一条语音数据.wav特征为(M,N)维,再创建一个(n,M,N)的矩阵来存放n条语音特征集,但是这样操作存在一个问题就是这样得到的矩阵太大

问题相关代码,请勿粘贴截图

audio_duration = 3
sampling_rate = 44100
input_length = sampling_rate * audio_duration
n_mfcc = 20
data_sample = np.zeros(input_length)
MFCC = librosa.feature.mfcc(data_sample, sr=sampling_rate, n_mfcc=n_mfcc)
audios = np.empty(shape=(128, 255, 50000, 1), dtype='float32')
emotion_labels = []
counter = 0
for file in glob.glob("E:/ser0002///*.wav"):
file_name = os.path.basename(file)
emotion_labels.append(file_name.split("-")[2])
emotion = emotions[file_name.split("-")[2]]
signals, sample_rate = librosa.load(file, res_type='kaiser_fast', sr=22050 * 2)
signals, index = librosa.effects.trim(signals, top_db=25) # 移除开始和结尾的静音
signals = signal.wiener(signals)

运行结果及报错内容

img

我的解答思路和尝试过的方法

(1)有没有什么办法是,读一条就存一条最后把6000条都存起来
(2)使用keras 提供的 DataGenerator,DataGenerator只是把特征集分批次的送入模块,而我的特征集还没有提出来

  • 写回答

3条回答 默认 最新

    报告相同问题?

    相关推荐 更多相似问题

    问题事件

    • 系统已结题 9月14日
    • 创建了问题 9月6日

    悬赏问题

    • ¥15 关于C# 英文打字练习器程序设计
    • ¥15 synchronized
    • ¥15 想用switch完成这个操作,但试了很多遍都无法运行
    • ¥15 wfp应用层设计规则如何能传递到内核层
    • ¥15 关于机器学习创新点几个问题
    • ¥15 python程序编写
    • ¥15 Type-C扩展坞的RTL8153地址硬改
    • ¥15 uniapp websocket 发送 sub 监听后,代码自动发送了 unsub ,解除了监听
    • ¥15 nativefier封装electron的应用遇到alert弹窗后input栏获取不到焦点,confirm不弹出的问题。
    • ¥15 Simulink使用HDL coder生成verilog代码时遇到问题