情况仍然是抽象的,我需要训练卷积网络,然后在图像上的滑动窗口上运行这个卷积网络。目标是建立一个热图,为某些物体制作像素完美的检测边界。
我想知道在keras中是否有一种简单的方法来训练网络,然后将其转换为卷积网络,而无需在图像上运行循环,这非常慢?
我想我可以将经过训练的卷积滤波器复制到更大的卷积网络中。
如果没有,我需要直接进入tensorflow。
答案 0 :(得分:1)
只要您使用完全卷积网,即在内核大小为1的卷积层中替换任何密集层,就可以在Keras中轻松完成。
最简单的入门方法是使用Keras中包含的一个预先训练好的网络,请参阅https://keras.io/applications/如何对自定义输入大小进行此操作。如果你已经训练了自己的完全卷积网'old_model',那就行了:
new_input = Input(new_size)
new_model = Model(new_input, old_model.output)
old_model.save_weights('w.h5')
new_model.get_weights('w.h5')