{"id":22991,"url":"https://patchwork.libcamera.org/api/patches/22991/?format=json","web_url":"https://patchwork.libcamera.org/patch/22991/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20250319161152.63625-14-stefan.klug@ideasonboard.com>","date":"2025-03-19T16:11:18","name":"[v2,13/17] ipa: rkisp1: awb: Use gains from color temperature curve","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"af1b580fa4f6bb504a7c24469d10564e668f1170","submitter":{"id":184,"url":"https://patchwork.libcamera.org/api/people/184/?format=json","name":"Stefan Klug","email":"stefan.klug@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/22991/mbox/","series":[{"id":5071,"url":"https://patchwork.libcamera.org/api/series/5071/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=5071","date":"2025-03-19T16:11:05","name":"Some rkisp1 awb improvements","version":2,"mbox":"https://patchwork.libcamera.org/series/5071/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/22991/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/22991/checks/","tags":{},"headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 17412C32FE\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 19 Mar 2025 16:12:37 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CD5C66896A;\n\tWed, 19 Mar 2025 17:12:36 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6933668954\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 19 Mar 2025 17:12:35 +0100 (CET)","from ideasonboard.com (unknown\n\t[IPv6:2a00:6020:448c:6c00:760:e5ca:4814:99c7])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 833708FA;\n\tWed, 19 Mar 2025 17:10:52 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"HfdBn6p9\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1742400652;\n\tbh=d8mMAhwL3xlqhrLmdBVsg08EjU9FZJx2JwYHYc8fttI=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=HfdBn6p9RW/Mvk7FzoYqzH687g3iuWz9kC557RYYFChpeUnsYMzm05kUEJatGDVSx\n\tjIT95CgLHZQvb0eibGHgC52/zbBXNtEja3qyzr8YSSjTs9G5bzV2TXIjHwDxnBoMt8\n\tW4vTdZKrPu7MnhIewnZRte+p4wZpXPcA1SGLV56g=","From":"Stefan Klug <stefan.klug@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Stefan Klug <stefan.klug@ideasonboard.com>","Subject":"[PATCH v2 13/17] ipa: rkisp1: awb: Use gains from color temperature\n\tcurve","Date":"Wed, 19 Mar 2025 17:11:18 +0100","Message-ID":"<20250319161152.63625-14-stefan.klug@ideasonboard.com>","X-Mailer":"git-send-email 2.43.0","In-Reply-To":"<20250319161152.63625-1-stefan.klug@ideasonboard.com>","References":"<20250319161152.63625-1-stefan.klug@ideasonboard.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Use the color gains for white balance if calibrated light sources are\ncontained in the tuning file. The results are generally better\nespecially when large uniformly colored objects are in the scene. Pure\ngrey world model is still available by removing the color gains from the\ntuning file.\n\nSigned-off-by: Stefan Klug <stefan.klug@ideasonboard.com>\n---\n src/ipa/rkisp1/algorithms/awb.cpp | 10 ++++++++++\n 1 file changed, 10 insertions(+)","diff":"diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp\nindex 58b8370d2c61..286d9e3e2018 100644\n--- a/src/ipa/rkisp1/algorithms/awb.cpp\n+++ b/src/ipa/rkisp1/algorithms/awb.cpp\n@@ -218,6 +218,16 @@ void Awb::prepare(IPAContext &context, const uint32_t frame,\n \t\tauto &awb = context.activeState.awb;\n \t\tframeContext.awb.gains = awb.automatic.gains;\n \t\tframeContext.awb.temperatureK = awb.automatic.temperatureK;\n+\n+\t\tconst auto &gains = awbAlgo_->gainsFromColourTemperature(\n+\t\t\tawb.automatic.temperatureK);\n+\t\tif (gains) {\n+\t\t\tframeContext.awb.gains.r() = gains->r();\n+\t\t\tframeContext.awb.gains.g() = 1.0;\n+\t\t\tframeContext.awb.gains.b() = gains->b();\n+\t\t} else {\n+\t\t\tframeContext.awb.gains = awb.automatic.gains;\n+\t\t}\n \t}\n \n \tauto gainConfig = params->block<BlockType::AwbGain>();\n","prefixes":["v2","13/17"]}