Commit f0c97d61 authored by Xuewei Meng's avatar Xuewei Meng Committed by Steven Liu

libavfilter: Add dehaze-filter option in existing derain.

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.gitReviewed-by: 's avatarSteven Liu <lq@onvideo.cn>
Signed-off-by: 's avatarXuewei Meng <xwmeng96@gmail.com>
parent 43458859
......@@ -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:
......
......@@ -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,9 @@ 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)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment