| Message ID | 20260113174642.1185403-7-rui.wang@ideasonboard.com |
|---|---|
| State | Deferred |
| Headers | show |
| Series |
|
| Related | show |
Hi Rui On Tue, Jan 13, 2026 at 12:46:42PM -0500, Rui Wang wrote: > Enable the RkISP1 denoise pre-filter (DPF) for the imx219/ov5647 > ov5640 sensor by adding the required DPF tuning block. > > Add DPF tuning config for ov5640 to adapt mode selection > > Signed-off-by: Rui Wang <rui.wang@ideasonboard.com> > > --- > changelog since v5: No change > > changelog since v6: > add ov5647 as strong noise sensor for verification > --- > src/ipa/rkisp1/data/imx219.yaml | 38 ++++++++++++++++++++++++ > src/ipa/rkisp1/data/meson.build | 1 + > src/ipa/rkisp1/data/ov5640.yaml | 51 +++++++++++++++++++++++++++++++-- > src/ipa/rkisp1/data/ov5647.yaml | 46 +++++++++++++++++++++++++++++ I would split this one commit per file Even more so for ov5647 which is introduced in this patch > 4 files changed, 133 insertions(+), 3 deletions(-) > create mode 100644 src/ipa/rkisp1/data/ov5647.yaml > > diff --git a/src/ipa/rkisp1/data/imx219.yaml b/src/ipa/rkisp1/data/imx219.yaml > index 0d99cb52..d6068ada 100644 > --- a/src/ipa/rkisp1/data/imx219.yaml > +++ b/src/ipa/rkisp1/data/imx219.yaml > @@ -111,4 +111,42 @@ algorithms: > 1438, 1226, 1059, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1054, 1185, > 1326, 1334, 1334, > ] > + - Dpf: > + filter: > + g: [ 18, 13, 9, 5, 3, 1 ] > + rb: [ 18, 15, 12, 8, 5, 2 ] > + nll: > + coeff: [ > + 0, 14, 28, 42, 58, 76, 96, 120, > + 148, 180, 216, 256, 300, 348, 400, 456, > + 520 > + ] > + scale-mode: "linear" > + strength: > + r: 80 > + g: 80 > + b: 80 From your last reply to v5 ------------------------------------------------------------------------------- The is legacy config of Dpf configuaration , in the current implementation , this configs are only help to initiate struct :config_ strengthConfig_. in the function : int Dpf::parseConfig(const YamlObject &tuningData) { /* Parse base config. */ int ret = parseSingleConfig(tuningData, config_, strengthConfig_); if (ret) return ret; /* Parse modes. */ return parseModes(tuningData); } As default configs , I will use it for controls initiate value for the next follow story: auto/manual mode enable. ------------------------------------------------------------------------------- I understand this part of the configuration to be the initial default value for the algorithm. I wonder if it wouldn't be better expressed as modes: - type: "default" So that it becomes user selectable.. But maybe it is not necessary > + modes: > + - type: "minimal" > + filter: > + g: [ 14, 10, 7, 4, 2, 1 ] > + rb: [ 14, 11, 8, 4, 2, 1 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 60 > + g: 60 > + b: 60 > + - type: "highquality" > + filter: > + g: [ 22, 18, 13, 8, 5, 2 ] > + rb: [ 20, 18, 16, 11, 7, 3 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 130 > + g: 130 > + b: 130 > ... > diff --git a/src/ipa/rkisp1/data/meson.build b/src/ipa/rkisp1/data/meson.build > index 1e3522b2..6388a8be 100644 > --- a/src/ipa/rkisp1/data/meson.build > +++ b/src/ipa/rkisp1/data/meson.build > @@ -6,6 +6,7 @@ conf_files = files([ > 'ov2685.yaml', > 'ov4689.yaml', > 'ov5640.yaml', > + 'ov5647.yaml', > 'ov5695.yaml', > 'ov8858.yaml', > 'uncalibrated.yaml', > diff --git a/src/ipa/rkisp1/data/ov5640.yaml b/src/ipa/rkisp1/data/ov5640.yaml > index 4b21d412..f36a45b5 100644 > --- a/src/ipa/rkisp1/data/ov5640.yaml > +++ b/src/ipa/rkisp1/data/ov5640.yaml > @@ -232,19 +232,64 @@ algorithms: > green: 2 > red-blue: 2 > - Dpf: > - DomainFilter: > + filter: > g: [ 16, 16, 16, 16, 16, 16 ] > rb: [ 16, 16, 16, 16, 16, 16 ] > - NoiseLevelFunction: > + nll: > coeff: [ > 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, > 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, > 1023 > ] > scale-mode: "linear" > - FilterStrength: > + strength: > r: 64 > g: 64 > b: 64 > + modes: > + - type: "minimal" > + filter: > + g: [ 14, 10, 7, 4, 2, 1 ] > + rb: [ 14, 11, 8, 4, 2, 1 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 60 > + g: 60 > + b: 60 > + - type: "highquality" > + filter: > + g: [ 22, 18, 13, 8, 5, 2 ] > + rb: [ 20, 18, 16, 11, 7, 3 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 130 > + g: 130 > + b: 130 > + - type: "fast" > + filter: > + g: [ 16, 12, 9, 5, 3, 1 ] > + rb: [ 16, 13, 10, 6, 4, 2 ] > + nll: > + coeff: [ 0, 16, 32, 48, 66, 86, 108, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528 ] > + scale-mode: "linear" > + strength: > + r: 90 > + g: 90 > + b: 90 > + - type: "zsl" > + filter: > + g: [ 18, 14, 10, 6, 3, 1 ] > + rb: [ 18, 16, 13, 9, 5, 3 ] > + nll: > + coeff: [ 0, 20, 40, 60, 82, 106, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528, 592 ] > + scale-mode: "linear" > + strength: > + r: 110 > + g: 110 > + b: 110 > - Filter: > ... > diff --git a/src/ipa/rkisp1/data/ov5647.yaml b/src/ipa/rkisp1/data/ov5647.yaml > new file mode 100644 > index 00000000..dfdbae14 > --- /dev/null > +++ b/src/ipa/rkisp1/data/ov5647.yaml This should be split to a separate patch indeed Thanks j > @@ -0,0 +1,46 @@ > +# SPDX-License-Identifier: CC0-1.0 > +%YAML 1.1 > +--- > +version: 1 > +algorithms: > + - Agc: > + - Awb: > + - Dpf: > + filter: > + g: [ 18, 13, 9, 5, 3, 1 ] > + rb: [ 18, 15, 12, 8, 5, 2 ] > + nll: > + coeff: [ > + 0, 14, 28, 42, 58, 76, 96, 120, > + 148, 180, 216, 256, 300, 348, 400, 456, > + 520 > + ] > + scale-mode: "linear" > + strength: > + r: 80 > + g: 80 > + b: 80 > + modes: > + - type: "minimal" > + filter: > + g: [ 14, 10, 7, 4, 2, 1 ] > + rb: [ 14, 11, 8, 4, 2, 1 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 60 > + g: 60 > + b: 60 > + - type: "highquality" > + filter: > + g: [ 22, 18, 13, 8, 5, 2 ] > + rb: [ 20, 18, 16, 11, 7, 3 ] > + nll: > + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] > + scale-mode: "linear" > + strength: > + r: 1 > + g: 1 > + b: 1 > +... > -- > 2.43.0 >
On 2026-01-15 09:41, Jacopo Mondi wrote: > Hi Rui > > On Tue, Jan 13, 2026 at 12:46:42PM -0500, Rui Wang wrote: >> Enable the RkISP1 denoise pre-filter (DPF) for the imx219/ov5647 >> ov5640 sensor by adding the required DPF tuning block. >> >> Add DPF tuning config for ov5640 to adapt mode selection >> >> Signed-off-by: Rui Wang <rui.wang@ideasonboard.com> >> >> --- >> changelog since v5: No change >> >> changelog since v6: >> add ov5647 as strong noise sensor for verification >> --- >> src/ipa/rkisp1/data/imx219.yaml | 38 ++++++++++++++++++++++++ >> src/ipa/rkisp1/data/meson.build | 1 + >> src/ipa/rkisp1/data/ov5640.yaml | 51 +++++++++++++++++++++++++++++++-- >> src/ipa/rkisp1/data/ov5647.yaml | 46 +++++++++++++++++++++++++++++ > I would split this one commit per file > > Even more so for ov5647 which is introduced in this patch Thanks Jacopo for your suggestion , I would add two commits into next patch series. > >> 4 files changed, 133 insertions(+), 3 deletions(-) >> create mode 100644 src/ipa/rkisp1/data/ov5647.yaml >> >> diff --git a/src/ipa/rkisp1/data/imx219.yaml b/src/ipa/rkisp1/data/imx219.yaml >> index 0d99cb52..d6068ada 100644 >> --- a/src/ipa/rkisp1/data/imx219.yaml >> +++ b/src/ipa/rkisp1/data/imx219.yaml >> @@ -111,4 +111,42 @@ algorithms: >> 1438, 1226, 1059, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1054, 1185, >> 1326, 1334, 1334, >> ] >> + - Dpf: >> + filter: >> + g: [ 18, 13, 9, 5, 3, 1 ] >> + rb: [ 18, 15, 12, 8, 5, 2 ] >> + nll: >> + coeff: [ >> + 0, 14, 28, 42, 58, 76, 96, 120, >> + 148, 180, 216, 256, 300, 348, 400, 456, >> + 520 >> + ] >> + scale-mode: "linear" >> + strength: >> + r: 80 >> + g: 80 >> + b: 80 > From your last reply to v5 > > ------------------------------------------------------------------------------- > The is legacy config of Dpf configuaration , in the current implementation , > this configs are only help to initiate struct :config_ strengthConfig_. > in the function : > > int Dpf::parseConfig(const YamlObject &tuningData) > { > /* Parse base config. */ > int ret = parseSingleConfig(tuningData, config_, strengthConfig_); > if (ret) > return ret; > > /* Parse modes. */ > return parseModes(tuningData); > } > > As default configs , I will use it for controls initiate value for the next follow story: > auto/manual mode enable. > ------------------------------------------------------------------------------- > > I understand this part of the configuration to be the initial default > value for the algorithm. > > I wonder if it wouldn't be better expressed as > > modes: > - type: "default" > > So that it becomes user selectable.. > > But maybe it is not necessary I think 'default' is meaningless into the reduction options, I would implement like : int Dpf::parseConfig(const YamlObject &tuningData) { /* Parse modes. */ return parseModes(tuningData); } also remove Yaml's DPF base setting , keep only modes. -Dpf filter: g: [ 16, 16, 16, 16, 16, 16 ] rb: [ 16, 16, 16, 16, 16, 16 ] nll: coeff: [ 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023 ] scale-mode: "linear" strength: r: 64 g: 64 b: 64 and the default setting for manual for default controls value , which will be initilized from manual mode PR, and default value can be read from manual setting YAML, it looks more clear and simplicity. >> + modes: >> + - type: "minimal" >> + filter: >> + g: [ 14, 10, 7, 4, 2, 1 ] >> + rb: [ 14, 11, 8, 4, 2, 1 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 60 >> + g: 60 >> + b: 60 >> + - type: "highquality" >> + filter: >> + g: [ 22, 18, 13, 8, 5, 2 ] >> + rb: [ 20, 18, 16, 11, 7, 3 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 130 >> + g: 130 >> + b: 130 >> ... >> diff --git a/src/ipa/rkisp1/data/meson.build b/src/ipa/rkisp1/data/meson.build >> index 1e3522b2..6388a8be 100644 >> --- a/src/ipa/rkisp1/data/meson.build >> +++ b/src/ipa/rkisp1/data/meson.build >> @@ -6,6 +6,7 @@ conf_files = files([ >> 'ov2685.yaml', >> 'ov4689.yaml', >> 'ov5640.yaml', >> + 'ov5647.yaml', >> 'ov5695.yaml', >> 'ov8858.yaml', >> 'uncalibrated.yaml', >> diff --git a/src/ipa/rkisp1/data/ov5640.yaml b/src/ipa/rkisp1/data/ov5640.yaml >> index 4b21d412..f36a45b5 100644 >> --- a/src/ipa/rkisp1/data/ov5640.yaml >> +++ b/src/ipa/rkisp1/data/ov5640.yaml >> @@ -232,19 +232,64 @@ algorithms: >> green: 2 >> red-blue: 2 >> - Dpf: >> - DomainFilter: >> + filter: >> g: [ 16, 16, 16, 16, 16, 16 ] >> rb: [ 16, 16, 16, 16, 16, 16 ] >> - NoiseLevelFunction: >> + nll: >> coeff: [ >> 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, >> 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, >> 1023 >> ] >> scale-mode: "linear" >> - FilterStrength: >> + strength: >> r: 64 >> g: 64 >> b: 64 >> + modes: >> + - type: "minimal" >> + filter: >> + g: [ 14, 10, 7, 4, 2, 1 ] >> + rb: [ 14, 11, 8, 4, 2, 1 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 60 >> + g: 60 >> + b: 60 >> + - type: "highquality" >> + filter: >> + g: [ 22, 18, 13, 8, 5, 2 ] >> + rb: [ 20, 18, 16, 11, 7, 3 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 130 >> + g: 130 >> + b: 130 >> + - type: "fast" >> + filter: >> + g: [ 16, 12, 9, 5, 3, 1 ] >> + rb: [ 16, 13, 10, 6, 4, 2 ] >> + nll: >> + coeff: [ 0, 16, 32, 48, 66, 86, 108, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528 ] >> + scale-mode: "linear" >> + strength: >> + r: 90 >> + g: 90 >> + b: 90 >> + - type: "zsl" >> + filter: >> + g: [ 18, 14, 10, 6, 3, 1 ] >> + rb: [ 18, 16, 13, 9, 5, 3 ] >> + nll: >> + coeff: [ 0, 20, 40, 60, 82, 106, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528, 592 ] >> + scale-mode: "linear" >> + strength: >> + r: 110 >> + g: 110 >> + b: 110 >> - Filter: >> ... >> diff --git a/src/ipa/rkisp1/data/ov5647.yaml b/src/ipa/rkisp1/data/ov5647.yaml >> new file mode 100644 >> index 00000000..dfdbae14 >> --- /dev/null >> +++ b/src/ipa/rkisp1/data/ov5647.yaml > This should be split to a separate patch indeed > > Thanks > j > >> @@ -0,0 +1,46 @@ >> +# SPDX-License-Identifier: CC0-1.0 >> +%YAML 1.1 >> +--- >> +version: 1 >> +algorithms: >> + - Agc: >> + - Awb: >> + - Dpf: >> + filter: >> + g: [ 18, 13, 9, 5, 3, 1 ] >> + rb: [ 18, 15, 12, 8, 5, 2 ] >> + nll: >> + coeff: [ >> + 0, 14, 28, 42, 58, 76, 96, 120, >> + 148, 180, 216, 256, 300, 348, 400, 456, >> + 520 >> + ] >> + scale-mode: "linear" >> + strength: >> + r: 80 >> + g: 80 >> + b: 80 >> + modes: >> + - type: "minimal" >> + filter: >> + g: [ 14, 10, 7, 4, 2, 1 ] >> + rb: [ 14, 11, 8, 4, 2, 1 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 60 >> + g: 60 >> + b: 60 >> + - type: "highquality" >> + filter: >> + g: [ 22, 18, 13, 8, 5, 2 ] >> + rb: [ 20, 18, 16, 11, 7, 3 ] >> + nll: >> + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] >> + scale-mode: "linear" >> + strength: >> + r: 1 >> + g: 1 >> + b: 1 >> +... >> -- >> 2.43.0 >>
diff --git a/src/ipa/rkisp1/data/imx219.yaml b/src/ipa/rkisp1/data/imx219.yaml index 0d99cb52..d6068ada 100644 --- a/src/ipa/rkisp1/data/imx219.yaml +++ b/src/ipa/rkisp1/data/imx219.yaml @@ -111,4 +111,42 @@ algorithms: 1438, 1226, 1059, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1054, 1185, 1326, 1334, 1334, ] + - Dpf: + filter: + g: [ 18, 13, 9, 5, 3, 1 ] + rb: [ 18, 15, 12, 8, 5, 2 ] + nll: + coeff: [ + 0, 14, 28, 42, 58, 76, 96, 120, + 148, 180, 216, 256, 300, 348, 400, 456, + 520 + ] + scale-mode: "linear" + strength: + r: 80 + g: 80 + b: 80 + modes: + - type: "minimal" + filter: + g: [ 14, 10, 7, 4, 2, 1 ] + rb: [ 14, 11, 8, 4, 2, 1 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 60 + g: 60 + b: 60 + - type: "highquality" + filter: + g: [ 22, 18, 13, 8, 5, 2 ] + rb: [ 20, 18, 16, 11, 7, 3 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 130 + g: 130 + b: 130 ... diff --git a/src/ipa/rkisp1/data/meson.build b/src/ipa/rkisp1/data/meson.build index 1e3522b2..6388a8be 100644 --- a/src/ipa/rkisp1/data/meson.build +++ b/src/ipa/rkisp1/data/meson.build @@ -6,6 +6,7 @@ conf_files = files([ 'ov2685.yaml', 'ov4689.yaml', 'ov5640.yaml', + 'ov5647.yaml', 'ov5695.yaml', 'ov8858.yaml', 'uncalibrated.yaml', diff --git a/src/ipa/rkisp1/data/ov5640.yaml b/src/ipa/rkisp1/data/ov5640.yaml index 4b21d412..f36a45b5 100644 --- a/src/ipa/rkisp1/data/ov5640.yaml +++ b/src/ipa/rkisp1/data/ov5640.yaml @@ -232,19 +232,64 @@ algorithms: green: 2 red-blue: 2 - Dpf: - DomainFilter: + filter: g: [ 16, 16, 16, 16, 16, 16 ] rb: [ 16, 16, 16, 16, 16, 16 ] - NoiseLevelFunction: + nll: coeff: [ 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023 ] scale-mode: "linear" - FilterStrength: + strength: r: 64 g: 64 b: 64 + modes: + - type: "minimal" + filter: + g: [ 14, 10, 7, 4, 2, 1 ] + rb: [ 14, 11, 8, 4, 2, 1 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 60 + g: 60 + b: 60 + - type: "highquality" + filter: + g: [ 22, 18, 13, 8, 5, 2 ] + rb: [ 20, 18, 16, 11, 7, 3 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 130 + g: 130 + b: 130 + - type: "fast" + filter: + g: [ 16, 12, 9, 5, 3, 1 ] + rb: [ 16, 13, 10, 6, 4, 2 ] + nll: + coeff: [ 0, 16, 32, 48, 66, 86, 108, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528 ] + scale-mode: "linear" + strength: + r: 90 + g: 90 + b: 90 + - type: "zsl" + filter: + g: [ 18, 14, 10, 6, 3, 1 ] + rb: [ 18, 16, 13, 9, 5, 3 ] + nll: + coeff: [ 0, 20, 40, 60, 82, 106, 132, 160, 192, 228, 268, 312, 360, 412, 468, 528, 592 ] + scale-mode: "linear" + strength: + r: 110 + g: 110 + b: 110 - Filter: ... diff --git a/src/ipa/rkisp1/data/ov5647.yaml b/src/ipa/rkisp1/data/ov5647.yaml new file mode 100644 index 00000000..dfdbae14 --- /dev/null +++ b/src/ipa/rkisp1/data/ov5647.yaml @@ -0,0 +1,46 @@ +# SPDX-License-Identifier: CC0-1.0 +%YAML 1.1 +--- +version: 1 +algorithms: + - Agc: + - Awb: + - Dpf: + filter: + g: [ 18, 13, 9, 5, 3, 1 ] + rb: [ 18, 15, 12, 8, 5, 2 ] + nll: + coeff: [ + 0, 14, 28, 42, 58, 76, 96, 120, + 148, 180, 216, 256, 300, 348, 400, 456, + 520 + ] + scale-mode: "linear" + strength: + r: 80 + g: 80 + b: 80 + modes: + - type: "minimal" + filter: + g: [ 14, 10, 7, 4, 2, 1 ] + rb: [ 14, 11, 8, 4, 2, 1 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 60 + g: 60 + b: 60 + - type: "highquality" + filter: + g: [ 22, 18, 13, 8, 5, 2 ] + rb: [ 20, 18, 16, 11, 7, 3 ] + nll: + coeff: [ 0, 26, 52, 78, 106, 138, 172, 208, 248, 292, 340, 392, 448, 508, 572, 640, 712 ] + scale-mode: "linear" + strength: + r: 1 + g: 1 + b: 1 +...
Enable the RkISP1 denoise pre-filter (DPF) for the imx219/ov5647 ov5640 sensor by adding the required DPF tuning block. Add DPF tuning config for ov5640 to adapt mode selection Signed-off-by: Rui Wang <rui.wang@ideasonboard.com> --- changelog since v5: No change changelog since v6: add ov5647 as strong noise sensor for verification --- src/ipa/rkisp1/data/imx219.yaml | 38 ++++++++++++++++++++++++ src/ipa/rkisp1/data/meson.build | 1 + src/ipa/rkisp1/data/ov5640.yaml | 51 +++++++++++++++++++++++++++++++-- src/ipa/rkisp1/data/ov5647.yaml | 46 +++++++++++++++++++++++++++++ 4 files changed, 133 insertions(+), 3 deletions(-) create mode 100644 src/ipa/rkisp1/data/ov5647.yaml