pb模型测试——忘掉过去,重新出发

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/SPESEG/article/details/100582752

pb是不是能用还不好说,所以这一步测试是不可避免的。人生总是不断向前,曾经的失败荣辱,都是过去,不如我们重新开始??

你是否还记得《春光乍泄》中的何宝荣???

“不如我们重新来过?”

由于直接的输入并不是真正的网络所要的输入,而是fft后的结果,所以先进行fft再进行输入,同样输出也是fft后,需要时频掩蔽恢复波形,不过stft时有帧移,不知道是否会有影响???影响大不大?

补充一:我发现我已经create_eval_graph,这个在tf早期版本中似乎已经相当于进行了tf lite转化,或者说已经是量化后的图了。这种情况下先测试是否好用再考虑这一步。

补充二:只定义一个输出不对,不能进行时频掩蔽的计算,y_out1也应该有,pb应该再次生成。看看如何。

补充三:pb测试通过,但是工作还有很多,1-是否可以转tflite;2-cpp/Java调用是如何实现的;3-其他参数如SEQ_LEN、L_HOP是否可以修改;4-如果tf有这部分,那么可以直接融合在网络中,直接输入输出的就是波形数据,这将是最简单的。

补充四:老子想将两个输出执行一次代码,结果发现不太行啊,好好搜搜看看。get_tensor_by_name似乎必须分开写,sess.run可以合在一起写。这样也行吧。

补充五:stft似乎无法融入到tf中,但可以尝试下sess.run得到的短时谱进行下istft转换。不然写成其他语言太麻烦了。为啥tf中stft与librosa中的有很大差别呢?真是够了。另外也出现了端点问题,这个似乎不可避免了,只要按帧处理都有这个问题了。

补充六:自己写的stft函数与librosa中的相差不大,不过是针对nfft为2的指数幂进行计算比较的,hop为nfft//4,这种情况下用自己的函数与librosa的函数基本99%相同,除了个别差别,但也在10e-8级别,所以说这个函数是成功的,下一步,将此 函数融入tf加减乘除,希望好运,如果不行,自编底层函数就有点繁琐了,其实也不难,我已经实现的就是最底层的,就是有点懒,再说了完全融入模型,输入波形,输出恢复的波形岂不是更好,拿来就用最好了。

补充七:我特么

猜你喜欢

转载自blog.csdn.net/SPESEG/article/details/100582752