# 裁剪64*64*3的区域
temp1 = temp[:,j*20:j*20+64,:]
#temp1 = cv2.(temp[:,j*20:j*20+64,:],(227,227))
# 的数据结构是一个5944长度的列表
# 其中每一个元素都是一个2维的列表
# 2维列表中第1维是标签,形如'W_1_1',即
# [i][0] = 'L_0_0'
# 2维列表的第2维是64×64×3的图像,即
# [i][1].shape = (64,64,3)
.([[i][0]+'_'+str(j) , temp1])
1
卷积神经网络采用的结构,所以还需要将64×64×3 64\\×64×3的图像到227×227×3 227\\×227×3 。cv2.默认的数据格式是,也就是类型,特别占用内存,容易爆掉(如果你有64G内存,当我没说) 。所以要特别小心,这里我采用半精度格式,实验证明半精度对最后结果没什么影响 。
# 到227*227*3
# 容易爆内存,分段执行
= []
for i in range(len()):
temp = cv2.([i][1],(227,227)).('')
.([[i][0] , temp])
# 的数据结构是一个5944长度的列表
# 其中每一个元素都是一个2维的列表
# 2维列表中第1维是标签,形如'W_1_1',即
# [i][0] = 'L_0_0'
# 2维列表的第2维是227×227×3的图像,即
# [i][1].shape = (227,227,3)
其实和的数据结构是一样的,只不过图片的尺寸变了而已 。
下一步是网络的搭建和训练 。打标签的时候注意,从一个音频文件中生成的227×227×3 227\\×227×3的图像都打成同一个情感标签,采用one-hot编码 。是训练集,数据尺寸(N,227,227,3),是标签文件,数据格式(N,7) 。应网友的建议,把One-hot标签的生成代码重写了一遍 。
# 训练数据
= []
for i in range(len()):
.([i][1])
= np.array() # 训练数据转成格式
# 做如下规定
# W ==> 0
# L ==> 1
# E ==> 2
# A ==> 3
# F ==> 4
# T ==> 5
# N ==> 6
= []
for i in range(len()):
if [i][0][0] == 'W':
.(0)
if [i][0][0] == 'L':
.(1)
if [i][0][0] == 'E':
.(2)
if [i][0][0] == 'A':
.(3)
if [i][0][0] == 'F':
.(4)
if [i][0][0] == 'T':
.(5)
if [i][0][0] == 'N':
.(6)
# 将0-6的标签转换成(0,0,1,0,0,0,0)的独热码
from keras.utils.
= ()
1
网络训练的对应代码如下 。
keras
from keras.
from keras.Input,Dense,,,,,
from keras.,,
from keras.,add
from keras.,
from keras.Model,
from keras.utils.
from keras.
from keras,# 优化器,正则化项
from keras.SGD, Adam
# 参数设置
= 32
= 50
,= 227, 227 # 输入图片尺寸
= (, , 3)
# 模型保存的路径
= './model/.h5'
=
=
# = [0:900]/[0:900].max()
# = [0:900]
print(' shape:', .shape)
print(.shape[0], 'train ')
#
model = ()
model.add((96,(11,11),=(4,4),=(227,227,3),='valid',='relu',=''))
model.add((=(3,3),=(2,2)))
model.add((256,(5,5),=(1,1),='same',='relu',=''))
model.add((=(3,3),=(2,2)))
model.add((384,(3,3),=(1,1),='same',='relu',=''))
model.add((384,(3,3),=(1,1),='same',='relu',=''))
model.add((256,(3,3),=(1,1),='same',='relu',=''))
model.add((=(3,3),=(2,2)))
model.add(())
model.add(Dense(4096,='relu'))
model.add((0.5))
model.add(Dense(4096,='relu'))
model.add((0.5))
model.add(Dense(7,=''))
#ZF-Net
#model = ()
#model.add((96,(7,7),=(2,2),=,='valid',='relu',=''))
#model.add((=(3,3),=(2,2)))
#model.add((256,(5,5),=(2,2),='same',='relu',=''))
- 多模态情感识别-MISA: baseline解读
- 算法分析与设计 练习三
- 柏林情感语料库(Emo
- 语音情感识别领域-论文阅读笔记1:融合语音和文字的句段级别情感识别技术
- 完美芦荟胶入选“中国500最具价值品牌” 中国之最分析
- 史湘云醉卧的故事史湘云人物性格分析
- 雍正与干妈佟佳氏十余年不寻常的情感经历
- C语言农夫过河问题
- 中美关系目前存在的问题,分析中美战略协作关系取得共识与存在分歧的原因
- 歌唱家金婷婷歌唱技法优缺点分析及其学习注意事项 金婷婷的中国之最