我的項目中,keras的h5爲分類模型,tensorflow的ckpt爲特徵點檢測模型,兩個模型串聯到一起,沒有如其他博客中所述的報錯情況,只是分類模型得到的分類結果與預期大相徑庭。而這個模型單獨跑是完全正常的。
原因:session混用,ckpt應該單獨創建session。
比如:
with tf.Session().as_default() as sess:
sess.run(global_init)
latest_ck_file = tf.train.latest_checkpoint(checkpoint_dir)
爲tensorflow的模型單獨創建會話,注意使用tf.Session().as_default(),這樣就算with中的代碼結束,會話也不會關閉。
在需要使用tf模型時,再使用 with sess.as_default(): 調用會話。程序運行結束手動關閉會話,sess.close()
參考blog:https://blog.csdn.net/googler_offer/article/details/91416521