@@ -225,8 +225,12 @@ void Dpf::prepare(IPAContext &context, const uint32_t frame,
auto config = params->block<BlockType::Dpf>();
config.setEnabled(frameContext.dpf.denoise);
+ auto strengthConfig = params->block<BlockType::DpfStrength>();
+ strengthConfig.setEnabled(frameContext.dpf.denoise);
+
if (frameContext.dpf.denoise) {
*config = config_;
+ *strengthConfig = strengthConfig_;
const auto &awb = context.configuration.awb;
const auto &lsc = context.configuration.lsc;
@@ -250,12 +254,6 @@ void Dpf::prepare(IPAContext &context, const uint32_t frame,
else
mode = RKISP1_CIF_ISP_DPF_GAIN_USAGE_DISABLED;
}
-
- if (frame == 0) {
- auto strengthConfig = params->block<BlockType::DpfStrength>();
- strengthConfig.setEnabled(true);
- *strengthConfig = strengthConfig_;
- }
}
REGISTER_IPA_ALGORITHM(Dpf, "Dpf")
The filter strength configuration block was previously only enabled on the first frame (frame == 0). Apply the strength values when denoise is active. This prevents the strength config from being disabled on subsequent frames. Signed-off-by: Rui Wang <rui.wang@ideasonboard.com> --- src/ipa/rkisp1/algorithms/dpf.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)