[FFmpeg-devel] [GSOC] [PATCH] On the fly generation of default DNN models and code style fixes
Michael Niedermayer
michael at niedermayer.cc
Mon Jul 30 02:01:15 EEST 2018
On Sat, Jul 28, 2018 at 01:00:53PM +0300, Sergey Lavrushkin wrote:
> 2018-07-28 4:31 GMT+03:00 Michael Niedermayer <michael at niedermayer.cc>:
>
> > On Fri, Jul 27, 2018 at 08:06:15PM +0300, Sergey Lavrushkin wrote:
> > > Hello,
> > >
> > > The first patch provides on the fly generation of default DNN models,
> > > that eliminates data duplication for model weights. Also, files with
> > > internal weights
> > > were replaced with automatically generated one for models I trained.
> > > Scripts for training and generating these files can be found here:
> > > https://github.com/HighVoltageRocknRoll/sr
> > > Later, I will add a description to this repo on how to use it and
> > benchmark
> > > results for trained models.
> > >
> > > The second patch fixes some code style issues for pointers in DNN module
> > > and sr filter. Are there any other code style fixes I should make for
> > this
> > > code?
> >
> >
> > It seems the code with these patches produces some warnings:
> >
> > In file included from libavfilter/dnn_backend_native.c:27:0:
> > libavfilter/dnn_srcnn.h:2113:21: warning: ‘srcnn_consts’ defined but not
> > used [-Wunused-variable]
> > static const float *srcnn_consts[] = {
> > ^
> > libavfilter/dnn_srcnn.h:2122:24: warning: ‘srcnn_consts_dims’ defined but
> > not used [-Wunused-variable]
> > static const long int *srcnn_consts_dims[] = {
> > ^
> > libavfilter/dnn_srcnn.h:2142:20: warning: ‘srcnn_activations’ defined but
> > not used [-Wunused-variable]
> > static const char *srcnn_activations[] = {
> > ^
> > In file included from libavfilter/dnn_backend_native.c:28:0:
> > libavfilter/dnn_espcn.h:5401:21: warning: ‘espcn_consts’ defined but not
> > used [-Wunused-variable]
> > static const float *espcn_consts[] = {
> > ^
> > libavfilter/dnn_espcn.h:5410:24: warning: ‘espcn_consts_dims’ defined but
> > not used [-Wunused-variable]
> > static const long int *espcn_consts_dims[] = {
> > ^
> > libavfilter/dnn_espcn.h:5432:20: warning: ‘espcn_activations’ defined but
> > not used [-Wunused-variable]
> > static const char *espcn_activations[] = {
> > ^
> >
>
> Here is the patch, that fixes these warnings.
> dnn_backend_tf.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
> dnn_espcn.h | 37 -------------------------------
> dnn_srcnn.h | 35 ------------------------------
> 3 files changed, 63 insertions(+), 73 deletions(-)
> 1faef51b86165326a4693c07a203113e2c85f7fb 0003-libavfilter-Fixes-warnings-for-unused-variables-in-d.patch
> From 37cd7bdf2610e1c3e89210a49e8f5f3832726281 Mon Sep 17 00:00:00 2001
> From: Sergey Lavrushkin <dualfal at gmail.com>
> Date: Sat, 28 Jul 2018 12:55:02 +0300
> Subject: [PATCH 3/3] libavfilter: Fixes warnings for unused variables in
> dnn_srcnn.h, dnn_espcn.h, dnn_backend_tf.c.
>
> ---
> libavfilter/dnn_backend_tf.c | 64 +++++++++++++++++++++++++++++++++++++++++++-
> libavfilter/dnn_espcn.h | 37 -------------------------
> libavfilter/dnn_srcnn.h | 35 ------------------------
> 3 files changed, 63 insertions(+), 73 deletions(-)
>
> diff --git a/libavfilter/dnn_backend_tf.c b/libavfilter/dnn_backend_tf.c
> index 6307c794a5..7a4ad72d27 100644
> --- a/libavfilter/dnn_backend_tf.c
> +++ b/libavfilter/dnn_backend_tf.c
> @@ -374,9 +374,71 @@ DNNModel *ff_dnn_load_default_model_tf(DNNDefaultModel model_type)
> TFModel *tf_model = NULL;
> TF_OperationDescription *op_desc;
> TF_Operation *op;
> - TF_Operation *const_ops_buffer[6];
> TF_Output input;
> int64_t input_shape[] = {1, -1, -1, 1};
> + const char tanh[] = "Tanh";
> + const char sigmoid[] = "Sigmoid";
> + const char relu[] = "Relu";
> +
> + const float *srcnn_consts[] = {
> + srcnn_conv1_kernel,
> + srcnn_conv1_bias,
> + srcnn_conv2_kernel,
> + srcnn_conv2_bias,
> + srcnn_conv3_kernel,
> + srcnn_conv3_bias
> + };
> + const long int *srcnn_consts_dims[] = {
> + srcnn_conv1_kernel_dims,
> + srcnn_conv1_bias_dims,
> + srcnn_conv2_kernel_dims,
> + srcnn_conv2_bias_dims,
> + srcnn_conv3_kernel_dims,
> + srcnn_conv3_bias_dims
> + };
> + const int srcnn_consts_dims_len[] = {
> + 4,
> + 1,
> + 4,
> + 1,
> + 4,
> + 1
> + };
not important at all but, why do you remove "static" from these ?
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
it is not once nor twice but times without number that the same ideas make
their appearance in the world. -- Aristotle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180730/a38e4ae0/attachment.sig>
More information about the ffmpeg-devel
mailing list