我正在尝试使用tensorflow Keras进行自定义回调。下面是我的代码。
这是我的张量板tf.summary.audio的制作音频功能
def make_audio(file):
# print(file)
wr = wave.open(file,'r')
ch = wr.getnchannels()
width = wr.getsampwidth()
fr = wr.getframerate()
fn = wr.getnframes()
encoded_frames = b''
for i in range(wr.getnframes()):
encoded_frames += wr.readframes(i)
wr.close()
return tf.Summary.Audio(sample_rate=int(fr),num_channels=int(ch),length_frames=fn,encoded_audio_string=encoded_frames,content_type="audio/wav")
这是我的自定义回调类。
class CustomCallback(tensorflow.keras.callbacks.Callback):
def on_batch_end(self, batch, logs=None):
audio_summary = make_audio("path.wav")
summary = tf.Summary()
summary.value.add(tag="Wave_Audio", audio=audio_summary)
writer =
tf.summary.FileWriter(os.path.join(self.log_dir,self.denoised_log))
writer.add_summary(summary, self.summary_step)
writer.close()
self.summary_step += 1
我的回调正确吗?请帮忙。 在使用keras和tensorboard时,例子太少了。