[libcamera-devel] [PATCH v6 4/6] ipa: raspberrypi: Rename SdnStatus to DenoiseStatus
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Feb 9 01:37:15 CET 2021
Hi Naush,
Thank you for the patch.
On Mon, Feb 08, 2021 at 03:07:36PM +0000, Naushir Patuck wrote:
> This change is in anticipation of the addition of a DenoiseAlgorithm
> base class which the SDN class will derive from. We want to match the
> metadata object name with the base class algorithm name.
>
> This renames:
> - SdnStatus metadata object to DenoiseStatus
> - "sdn.status" metadata string key to "denoise.status"
> - sdn_status.h header file to denoise_status.h
>
> Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
> Reviewed-by: David Plowman <david.plowman at raspberrypi.com>
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> .../controller/{sdn_status.h => denoise_status.h} | 8 ++++----
> src/ipa/raspberrypi/controller/rpi/sdn.cpp | 4 ++--
> src/ipa/raspberrypi/raspberrypi.cpp | 8 ++++----
> 3 files changed, 10 insertions(+), 10 deletions(-)
> rename src/ipa/raspberrypi/controller/{sdn_status.h => denoise_status.h} (50%)
>
> diff --git a/src/ipa/raspberrypi/controller/sdn_status.h b/src/ipa/raspberrypi/controller/denoise_status.h
> similarity index 50%
> rename from src/ipa/raspberrypi/controller/sdn_status.h
> rename to src/ipa/raspberrypi/controller/denoise_status.h
> index 871e0b62af1f..94f5df200ffd 100644
> --- a/src/ipa/raspberrypi/controller/sdn_status.h
> +++ b/src/ipa/raspberrypi/controller/denoise_status.h
> @@ -1,18 +1,18 @@
> /* SPDX-License-Identifier: BSD-2-Clause */
> /*
> - * Copyright (C) 2019, Raspberry Pi (Trading) Limited
> + * Copyright (C) 2019-2021, Raspberry Pi (Trading) Limited
> *
> - * sdn_status.h - SDN (spatial denoise) control algorithm status
> + * denoise_status.h - Denoise control algorithm status
> */
> #pragma once
>
> -// This stores the parameters required for Spatial Denoise (SDN).
> +// This stores the parameters required for Denoise (SDN).
Should we drop "(SDN)" ?
>
> #ifdef __cplusplus
> extern "C" {
> #endif
>
> -struct SdnStatus {
> +struct DenoiseStatus {
> double noise_constant;
> double noise_slope;
> double strength;
> diff --git a/src/ipa/raspberrypi/controller/rpi/sdn.cpp b/src/ipa/raspberrypi/controller/rpi/sdn.cpp
> index 0fad25504345..ef84a2dcbf86 100644
> --- a/src/ipa/raspberrypi/controller/rpi/sdn.cpp
> +++ b/src/ipa/raspberrypi/controller/rpi/sdn.cpp
> @@ -7,8 +7,8 @@
>
> #include "libcamera/internal/log.h"
>
> +#include "../denoise_status.h"
> #include "../noise_status.h"
> -#include "../sdn_status.h"
>
> #include "sdn.hpp"
>
> @@ -49,7 +49,7 @@ void Sdn::Prepare(Metadata *image_metadata)
> LOG(RPiSdn, Debug)
> << "Noise profile: constant " << noise_status.noise_constant
> << " slope " << noise_status.noise_slope;
> - struct SdnStatus status;
> + struct DenoiseStatus status;
> status.noise_constant = noise_status.noise_constant * deviation_;
> status.noise_slope = noise_status.noise_slope * deviation_;
> status.strength = strength_;
v5 used to rename the metadata entry here:
- image_metadata->Set("sdn.status", status);
+ image_metadata->Set("denoise.status", status);
Isn't it still needed ? I can add this back when applying.
> diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
> index ff14cfc4b706..e76688a7b323 100644
> --- a/src/ipa/raspberrypi/raspberrypi.cpp
> +++ b/src/ipa/raspberrypi/raspberrypi.cpp
> @@ -43,13 +43,13 @@
> #include "contrast_algorithm.hpp"
> #include "contrast_status.h"
> #include "controller.hpp"
> +#include "denoise_status.h"
> #include "dpc_status.h"
> #include "focus_status.h"
> #include "geq_status.h"
> #include "lux_status.h"
> #include "metadata.hpp"
> #include "noise_status.h"
> -#include "sdn_status.h"
> #include "sharpen_algorithm.hpp"
> #include "sharpen_status.h"
>
> @@ -110,7 +110,7 @@ private:
> void applyBlackLevel(const struct BlackLevelStatus *blackLevelStatus, ControlList &ctrls);
> void applyGamma(const struct ContrastStatus *contrastStatus, ControlList &ctrls);
> void applyGEQ(const struct GeqStatus *geqStatus, ControlList &ctrls);
> - void applyDenoise(const struct SdnStatus *denoiseStatus, ControlList &ctrls);
> + void applyDenoise(const struct DenoiseStatus *denoiseStatus, ControlList &ctrls);
> void applySharpen(const struct SharpenStatus *sharpenStatus, ControlList &ctrls);
> void applyDPC(const struct DpcStatus *dpcStatus, ControlList &ctrls);
> void applyLS(const struct AlscStatus *lsStatus, ControlList &ctrls);
> @@ -952,7 +952,7 @@ void IPARPi::prepareISP(unsigned int bufferId)
> if (geqStatus)
> applyGEQ(geqStatus, ctrls);
>
> - SdnStatus *denoiseStatus = rpiMetadata_.GetLocked<SdnStatus>("sdn.status");
> + DenoiseStatus *denoiseStatus = rpiMetadata_.GetLocked<DenoiseStatus>("denoise.status");
> if (denoiseStatus)
> applyDenoise(denoiseStatus, ctrls);
>
> @@ -1171,7 +1171,7 @@ void IPARPi::applyGEQ(const struct GeqStatus *geqStatus, ControlList &ctrls)
> ctrls.set(V4L2_CID_USER_BCM2835_ISP_GEQ, c);
> }
>
> -void IPARPi::applyDenoise(const struct SdnStatus *denoiseStatus, ControlList &ctrls)
> +void IPARPi::applyDenoise(const struct DenoiseStatus *denoiseStatus, ControlList &ctrls)
> {
> bcm2835_isp_denoise denoise;
>
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list