首页 > 编程知识 正文

radiodetection,在css中属性padding是指

时间:2023-05-06 08:37:04 阅读:143841 作者:3851

首先,tensorflow中包含的卷积操作是什么?

3359 tensor flow.Google.cn/API _ docs/python/TF/nn/conv 2d

TF.nn.conv2d(input,filter,strides,padding,use_cudnn_on_gpu=True,data_format='NHWC ', dilationg实际上它是固定你的input的格式,NHWC在与你的输入数据的维度对应时[batch_size,Heigth,Width,Channel],NCHW是[ batch _ sision ]

实际上,strides中的参数和这个data_format是一一对应的。 什么意思? 也就是说,采用NHWC方式和strides=[a,b,c,d]时,计算卷积核迁移过程会怎么样呢? 那个在batch的维度上按照step=a的大小进行移动计算。 同样,在每个HWC维度上移动的step是b c d。 这里a,d的值为1,因为必须分别计算batch和channel。 b c的值可以根据情况变化,他们的值与输出的feature map的维度直接相关。

让我们看一下padding=same和valid这两个参数的计算方法。 参考: https://www.Jian Shu.com/p/05c4f 1621 c7e

假设输入的图像大小为W*H

kernel size的大小为k_h*k_w

将h方向的stride设为h,将w方向的stride设为w

请求出新输出的特征图的大小,n_h和n_w

在valid模式下,他只修改原始图

于是,n_h=(h-k_h )/h向上舍入加1; n_w=(w-k_w )/h向上舍入加1;

在SAME模式下,他会在填充时自动补0。

那么什么是必要的时候呢? 这首先要根据公式n_h=H/h进行舍入和n_w=W/w进行舍入,得到最终的输出n_h和n_w,并根据需要将输出的n_h和n_w反向按压到它们的地方,需要补充0。

在h方向上pad_need_H=(n_h -1 ) * h K_h - H

矩阵中每行上方需要添加的像素数如下:

pad_need_H/2整形

矩阵每行下需要添加的像素数为

pad_need_H -pad_need_H/2

同样在w方向上

源代码如下所示。

例如,输入feature map为4*4,kernel size为1*1,strides 1,1,1

需要补充的图则如下

在这里画斜线是填充的0

输入的feature map为2*5 kernel size为2*2,strides为【1,2,1,1】

需要填充的图如下

最后一列是必须填充的0值,最后输出的feature map为1*5

原文: https://blog.csdn.net/Tian dd12/article/details/80271050

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。