[v5,6/6] ipa: rkisp1: algorithms: data: enable DPF tuning for imx219/ov5640
diff mbox series

Message ID 20251214181646.573675-7-rui.wang@ideasonboard.com
State New
Headers show
Series
  • refactor DPF parsing and initialization
Related show

Commit Message

Rui Wang Dec. 14, 2025, 6:16 p.m. UTC
Enable the RkISP1 denoise pre-filter (DPF) for the imx219 sensor by
adding the required DPF tuning block to imx219.yaml.

Add DPF tuning config for ov5640 to adapt mode selection

Signed-off-by: Rui Wang <rui.wang@ideasonboard.com>
---

changelog:
 - Update ov5640 dpf config against key name change :
  DomainFilter-> filter, NoiseLevelFunction-> nll ,FilterStrength ->strength
 
 src/ipa/rkisp1/data/imx219.yaml | 38 ++++++++++++++++++++++++
 src/ipa/rkisp1/data/ov5640.yaml | 51 +++++++++++++++++++++++++++++++--
 2 files changed, 86 insertions(+), 3 deletions(-)

Patch
diff mbox series

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/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:
 ...