[PATCH v4 20/23] tuning: rkisp1: Add some static modules

Stefan Klug stefan.klug at ideasonboard.com
Fri Jul 5 16:41:56 CEST 2024


Add awb, blc, cproc, filter, and gamma to the tuning file.  These don't
need any configuration.

At the moment there are no inter-module dependencies in the tuning
process. We can therefore safely sort them alphabetically. As soon as
the first dependency gets introduced (most likely lsc -> ccm) we will
see how to solve that.

The output order controls the order of processing in the IPA. It is now
also in alphabetical order which happens to be no change for the modules
that existed previously. For the others, there is no need for a specific
order.

Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder at ideasonboard.com>
---
 utils/tuning/rkisp1.py | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/utils/tuning/rkisp1.py b/utils/tuning/rkisp1.py
index fae35783c656..0d279a39ab1b 100755
--- a/utils/tuning/rkisp1.py
+++ b/utils/tuning/rkisp1.py
@@ -15,11 +15,24 @@ from libtuning.generators import YamlOutput
 from libtuning.modules.lsc import LSCRkISP1
 from libtuning.modules.agc import AGCRkISP1
 from libtuning.modules.ccm import CCMRkISP1
-
+from libtuning.modules.static import StaticModule
 
 coloredlogs.install(level=logging.INFO, fmt='%(name)s %(levelname)s %(message)s')
 
+awb = StaticModule('Awb')
+blc = StaticModule('BlackLevelCorrection')
+color_processing = StaticModule('ColorProcessing')
+filter = StaticModule('Filter')
+gamma_out = StaticModule('GammaOutCorrection', {'gamma': 2.2})
+
 tuner = lt.Tuner('RkISP1')
+tuner.add(AGCRkISP1(debug=[lt.Debug.Plot]))
+tuner.add(awb)
+tuner.add(blc)
+tuner.add(CCMRkISP1(debug=[lt.Debug.Plot]))
+tuner.add(color_processing)
+tuner.add(filter)
+tuner.add(gamma_out)
 tuner.add(LSCRkISP1(
           debug=[lt.Debug.Plot],
           # This is for the actual LSC tuning, and is part of the base LSC
@@ -39,11 +52,11 @@ tuner.add(LSCRkISP1(
           # values.  This can also be a custom function.
           smoothing_function=lt.smoothing.MedianBlur(3),
           ))
-tuner.add(AGCRkISP1(debug=[lt.Debug.Plot]))
-tuner.add(CCMRkISP1(debug=[lt.Debug.Plot]))
+
 tuner.set_input_parser(YamlParser())
 tuner.set_output_formatter(YamlOutput())
-tuner.set_output_order([AGCRkISP1, CCMRkISP1, LSCRkISP1])
+tuner.set_output_order([AGCRkISP1, awb, blc, CCMRkISP1, color_processing,
+                        filter, gamma_out, LSCRkISP1])
 
 if __name__ == '__main__':
     sys.exit(tuner.run(sys.argv))
-- 
2.43.0



More information about the libcamera-devel mailing list