Tensorflow 实现卷积操作
恰逢新年假期,家里的事情变得多了起来。但是十几天零星的时间如果拿来积累,总是有些用的。近期着手于手部关键点检测,读了一篇论文 ICCV2017 Learning to Estimate 3D Hand Pose from Single RGB Images 并且查看了源代码。之前在实验室里自己录制了视频进行了简单的测试,但是结果差强人意。说跑题了,作者的代码功底应该是很深厚的,下面我引用一下作者书写的代码,来简单说明一下Tensorflow是如何实现卷积操作的。
这里我罗列一下作者的代码:
import tensorflow as tf
neg_slope_of_relu = 0.01
//Relu operation
def leaky_relu(tensor, name='relu'):
out_tensor = tf.maximum(tensor, neg_slope_of_relu * tensor, name=name)
return out_tensor
//Conv operation
def conv(in_tensor, layer_name, kernel_size, stride, out_chan, trainable=True):
with tf.variable_scope(layer_name):
in_size = in_tensor.get_shape

本文通过作者在手部关键点检测项目中遇到的Tensorflow卷积操作,详细解释了如何实现卷积和ReLU激活函数。代码分为ReLU实现、卷积实现和卷积+ReLU三部分,包括输入tensor的尺寸理解、卷积核初始化、步长设置以及核心的卷积函数tf.nn.conv2d()的使用。文章还简单介绍了添加偏置的操作,并提供了测试流程。
最低0.47元/天 解锁文章
508

被折叠的 条评论
为什么被折叠?



