codecamp

TensorFlow函数教程:tf.nn.dilation2d

tf.nn.dilation2d函数

tf.nn.dilation2d(
    input,
    filter,
    strides,
    rates,
    padding,
    name=None
)

定义在:tensorflow/python/ops/gen_nn_ops.py.

请参阅指南:神经网络>形态学滤波

计算4-Dinput和3-Dfilter张量的灰度扩张.

input张量具有shape[batch, in_height, in_width, depth],filter张量具有shape[filter_height, filter_width, depth],即,每个输入通道都独立于其他输入通道进行处理,具有自己的结构函数.该output张量具有shape[batch, out_height, out_width, depth].输出张量的空间维度取决于padding算法.我们目前只支持默认的“NHWC”data_format.

详细地说,灰度形态2-D扩张是最大和相关(为了与conv2d一致,我们使用未经过镜像的滤波器):

output[b, y, x, c] =
   max_{dy, dx} input[b,
                      strides[1] * y + rates[1] * dy,
                      strides[2] * x + rates[2] * dx,
                      c] +
                filter[dy, dx, c]

当过滤器的大小等于池内核大小并包含全零时,最大池是一种特殊情况.

二元性的注意事项:filterinput的扩张等于反射filter-input侵蚀的否定.

参数:

  • input:一个4-DTensor,必须是下列类型之一:float32,float64,int32,uint8,int16,int8,int64,bfloat16,uint16,half,uint32,uint64,shape为[batch, in_height, in_width, depth].
  • filter:一个3-DTensor,必须与input具有相同类型,shape为[filter_height, filter_width, depth].
  • stridesints列表,长度>= 4.输入张量的每个维度的滑动窗口的步幅.必须是:[1, stride_height, stride_width, 1].
  • ratesints列表,长度>= 4.输入大步进行剧烈的形态学扩张.必须是:[1, rate_height, rate_width, 1].
  • paddingstring,可以是:"SAME", "VALID".要使用的填充算法的类型.
  • name:操作的名称(可选).

返回:

一个Tensor,input有相同的类型.

TensorFlow函数教程:tf.nn.depthwise_conv2d_native_backprop_input
TensorFlow函数教程:tf.nn.dropout
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

TensorFlow 函数介绍

TensorFlow 函数模块:tf

TensorFlow的image模块

TensorFlow使用之tf.io

TensorFlow使用之tf.keras

TensorFlow函数教程:tf.keras.applications

TensorFlow函数教程:tf.keras.backend

TensorFlow使用之tf.metrics

TensorFlow使用之tf.nn

TensorFlow使用之tf.python_io

TensorFlow 功能函数

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }