> 在 2019年8月22日,下午6:28,Xuewei Meng <xwmen...@gmail.com> 写道: > > Add the support of dehaze filter in existing derain filter source > code. As the processing procedure in FFmpeg is the same for current > derain and dehaze, we reuse the derain filter source code. The > model training and generation scripts are in repo > https://github.com/XueweiMeng/derain_filter.git > > Signed-off-by: Xuewei Meng <xwmen...@gmail.com> > --- > doc/filters.texi | 12 ++++++++++++ > libavfilter/vf_derain.c | 5 +++++ > 2 files changed, 17 insertions(+) > > diff --git a/doc/filters.texi b/doc/filters.texi > index 323c02970e..5d63b337f8 100644 > --- a/doc/filters.texi > +++ b/doc/filters.texi > @@ -8449,6 +8449,18 @@ files (.pb) by using tools/python/convert.py > The filter accepts the following options: > > @table @option > +@item filter_type > +Specify which filter to use. This option accepts the following values: > + > +@table @samp > +@item derain > +Derain filter. To conduct derain filter, you need to use a derain model. > + > +@item dehaze > +Dehaze filter. To conduct dehaze filter, you need to use a dehaze model. > +@end table > +Default value is @samp{derain}. > + > @item dnn_backend > Specify which DNN backend to use for model loading and execution. This option > accepts > the following values: > diff --git a/libavfilter/vf_derain.c b/libavfilter/vf_derain.c > index c380b40122..110eab54ff 100644 > --- a/libavfilter/vf_derain.c > +++ b/libavfilter/vf_derain.c > @@ -34,6 +34,7 @@ > typedef struct DRContext { > const AVClass *class; > > + int filter_type; > char *model_filename; > DNNBackendType backend_type; > DNNModule *dnn_module; > @@ -46,6 +47,10 @@ typedef struct DRContext { > #define OFFSET(x) offsetof(DRContext, x) > #define FLAGS AV_OPT_FLAG_FILTERING_PARAM | AV_OPT_FLAG_VIDEO_PARAM > static const AVOption derain_options[] = { > + { "filter_type", "filter type(derain/dehaze)", OFFSET(filter_type), > AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, FLAGS, "type" }, > + { "derain", "derain filter flag", 0, > AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FLAGS, "type" }, > + { "dehaze", "dehaze filter flag", 0, > AV_OPT_TYPE_CONST, { .i64 = 1 }, 0, 0, FLAGS, "type" }, > + > { "dnn_backend", "DNN backend", OFFSET(backend_type), > AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, FLAGS, "backend" }, > { "native", "native backend flag", 0, > AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FLAGS, "backend" }, > #if (CONFIG_LIBTENSORFLOW == 1) > -- > 2.17.1 > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe”.
removed the empty line locally and pushed Thanks Steven _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".