[FFmpeg-devel] [PATCH V6 1/2] dnn/native: add native support for avg_pool
Guo, Yejun
yejun.guo at intel.com
Fri Aug 7 05:32:47 EEST 2020
> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of Ting Fu
> Sent: 2020年8月5日 14:54
> To: ffmpeg-devel at ffmpeg.org
> Subject: [FFmpeg-devel] [PATCH V6 1/2] dnn/native: add native support for
> avg_pool
>
> Not support pooling strides in channel dimension now.
> It can be tested with the model generated with below python script:
>
> import tensorflow as tf
> import numpy as np
> import imageio
>
> in_img = imageio.imread('input_odd.jpg') in_img =
> in_img.astype(np.float32)/255.0 in_data = in_img[np.newaxis, :]
>
> x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in') x_pool =
> tf.nn.avg_pool(x, ksize=[1,2,2,1], strides=[1,2,2,1], padding='SAME') #please alter
> the params as needed y = tf.identity(x_pool, name='dnn_out')
>
> sess=tf.Session()
> sess.run(tf.global_variables_initializer())
>
> graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def,
> ['dnn_out']) tf.train.write_graph(graph_def, '.', 'image_process.pb',
> as_text=False)
>
> print("image_process.pb generated, please use \
> path_to_ffmpeg/tools/python/convert.py to generate image_process.model\n")
>
> output = sess.run(y, feed_dict={x: in_data}) imageio.imsave("out.jpg",
> np.squeeze(output))
>
> Signed-off-by: Ting Fu <ting.fu at intel.com>
> ---
> libavfilter/dnn/Makefile | 1 +
> libavfilter/dnn/dnn_backend_native.h | 2 +
> .../dnn/dnn_backend_native_layer_avgpool.c | 141 ++++++++++++++++++
> .../dnn/dnn_backend_native_layer_avgpool.h | 40 +++++
> .../dnn/dnn_backend_native_layer_conv2d.h | 3 +-
> libavfilter/dnn/dnn_backend_native_layers.c | 2 +
> tools/python/convert_from_tensorflow.py | 37 ++++-
please make sure the patch is based on the latest code.
convert_from_tensorflow.py has been changed and so I'm unable to apply your patch.
More information about the ffmpeg-devel
mailing list