使任何keras网络卷积

时间:2016-12-29 22:16:05

标签: convolution

情况仍然是抽象的,我需要训练卷积网络,然后在图像上的滑动窗口上运行这个卷积网络。目标是建立一个热图,为某些物体制作像素完美的检测边界。

我想知道在keras中是否有一种简单的方法来训练网络,然后将其转换为卷积网络,而无需在图像上运行循环,这非常慢?

我想我可以将经过训练的卷积滤波器复制到更大的卷积网络中。

如果没有,我需要直接进入tensorflow。

1 个答案:

答案 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')