卷积系列——形变卷积(Deformable convolution)代码理解和使用

本文详细介绍了形变卷积的工作原理,重点解析了Keras版本的实现代码,包括ConvOffset2D层的构建,以及如何通过偏移量计算得到变形特征图。提供了一个示例脚本scaled_mnist.py,展示如何在CNN网络中集成形变卷积。
摘要由CSDN通过智能技术生成

给出代码地址:https://github.com/kastnerkyle/deform-conv,keras版本的。

可以直接看目录scripts下的scaled_mnist.py,网络模型由函数get_deform_cnn()加载:

# ---
# Deformable CNN

inputs, outputs = get_deform_cnn(trainable=False)
model = Model(inputs=inputs, outputs=outputs)

get_deform_cnn()定义在目录deform_conv下的cnn.py中,整体就是一个普通的cnn网络,只不过卷积前加了ConvOfffset2D:

def get_deform_cnn(trainable):
    inputs = l = Input((28, 28, 1), name='input')

    # conv11
    l = Conv2D(32, (3, 3), padding='same', name='conv11', trainable=trainable)(l)
    l = Activation('relu', name='conv11_relu')(l)
    l = BatchNormalization(name='conv11_bn')(l)

    # conv12
    l_offset = ConvOffset2D(32, name='conv12_offset')(l)
    l = Conv2
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值