[libcamera-devel] [PATCH v2 09/11] utils: tuning: Add alsc-only libtuning raspberrypi tuning script

Naushir Patuck naush at raspberrypi.com
Wed Nov 9 10:39:12 CET 2022


Hi Paul,

I've not had a chance to fully look through this work yet, so apologies.
However, I do have a question - does this script produce identical results
when compared with the existing RPi script for a given set of inputs?

Regards,
Naush


On Sat, 22 Oct 2022 at 07:23, Paul Elder via libcamera-devel <
libcamera-devel at lists.libcamera.org> wrote:

> Add a tuning script for raspberrypi for alsc only, that uses libtuning.
> Since there will also be a tuning script for raspberrypi that has more
> modules, put the libtuning alsc module definition in a separate file so
> that it can be reused later.
>
> Signed-off-by: Paul Elder <paul.elder at ideasonboard.com>
>
> ---
> Changes in v2:
> - fix python errors
> - fix style
> - add SPDX and copyright
> - s/average_functions/average/
> - update script to work with new raspberrypi alsc module
> ---
>  utils/tuning/raspberrypi/__init__.py  |  0
>  utils/tuning/raspberrypi/alsc.py      | 17 +++++++++++++++++
>  utils/tuning/raspberrypi_alsc_only.py | 22 ++++++++++++++++++++++
>  3 files changed, 39 insertions(+)
>  create mode 100644 utils/tuning/raspberrypi/__init__.py
>  create mode 100644 utils/tuning/raspberrypi/alsc.py
>  create mode 100755 utils/tuning/raspberrypi_alsc_only.py
>
> diff --git a/utils/tuning/raspberrypi/__init__.py
> b/utils/tuning/raspberrypi/__init__.py
> new file mode 100644
> index 00000000..e69de29b
> diff --git a/utils/tuning/raspberrypi/alsc.py
> b/utils/tuning/raspberrypi/alsc.py
> new file mode 100644
> index 00000000..71ab3995
> --- /dev/null
> +++ b/utils/tuning/raspberrypi/alsc.py
> @@ -0,0 +1,17 @@
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +#
> +# Copyright (C) 2022, Paul Elder <paul.elder at ideasonboard.com>
> +
> +import libtuning as lt
> +from libtuning.modules.alsc import ALSCRaspberryPi
> +
> +ALSC = \
> +    ALSCRaspberryPi(do_color=lt.Param('do_alsc_colour',
> lt.Param.Mode.Optional, True),
> +                    luminance_strength=lt.Param('luminance_strength',
> lt.Param.Mode.Optional, 0.5),
> +                    debug=[lt.Debug.Plot],
> +                    sector_shape=(16, 12),
> +
> sector_x_gradient=lt.gradient.Linear(lt.Remainder.DistributeFront),
> +
> sector_y_gradient=lt.gradient.Linear(lt.Remainder.DistributeFront),
> +                    sector_average_function=lt.average.Mean(),
> +                    smoothing_function=lt.smoothing.MedianBlur(3),
> +                    )
> diff --git a/utils/tuning/raspberrypi_alsc_only.py
> b/utils/tuning/raspberrypi_alsc_only.py
> new file mode 100755
> index 00000000..3cd7b074
> --- /dev/null
> +++ b/utils/tuning/raspberrypi_alsc_only.py
> @@ -0,0 +1,22 @@
> +#!/usr/bin/env python3
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +#
> +# Copyright (C) 2022, Paul Elder <paul.elder at ideasonboard.com>
> +#
> +# raspberrypi_alsc_only.py - Tuning script for raspberrypi, ALSC only
> +
> +import sys
> +
> +import libtuning as lt
> +from libtuning.parsers import RaspberryPiParser
> +from libtuning.generators import RaspberryPiOutput
> +
> +from raspberrypi.alsc import ALSC
> +
> +tuner = lt.Camera('Raspberry Pi (ALSC only)')
> +tuner.add(ALSC)
> +tuner.setInputType(RaspberryPiParser)
> +tuner.setOutputType(RaspberryPiOutput)
> +tuner.setOutputOrder([ALSC])
> +
> +tuner.run(sys.argv)
> --
> 2.30.2
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20221109/cb04c378/attachment.htm>


More information about the libcamera-devel mailing list