From patchwork Wed Mar 1 10:28:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Plowman X-Patchwork-Id: 18321 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id EAAC0BE080 for ; Wed, 1 Mar 2023 10:28:48 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 60D0F626AC; Wed, 1 Mar 2023 11:28:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1677666528; bh=d46IfgCSVGie1sL6OGVmdoqUupNjL9r04UPk/yMzawQ=; h=To:Date:List-Id:List-Post:From:List-Subscribe:List-Unsubscribe: List-Archive:Reply-To:List-Help:Subject:From; b=xiziEeL6cv/QD4NXKiblX2q0mY7ZJCUCED/s6qGRo4FX61dLNuoJPAvfEaCgm+Pt5 +5CcyDkgNhpIDJMMEiBDG3dIkWue3AAPkrPPvC7maWRpZsUKvAFH/FGLlfoU5BaG6V a80Quy2kdLNK2cHjOd4ntkI049Ca+JLpfqM9q1XhfkD/j3M36W6UTSeh9x6C4CKlUi uQaM3AaQhPF1RFb36I64eexQiHCUB/qP5wLnR6u+iXNyGLp8igTPMzK9eRwU3MQyk+ kn2mHAiAmz4ydssp6Gr88HnLnk7PXTg4mgupZHZyZjb3vYxgl208xtrgYJ7PtGxaRo B68uLBBgqSONw== To: libcamera-devel@lists.libcamera.org Date: Wed, 1 Mar 2023 10:28:41 +0000 MIME-Version: 1.0 Message-ID: List-Id: List-Post: X-Patchwork-Original-From: David Plowman via libcamera-devel From: David Plowman Precedence: list X-Mailman-Version: 2.1.29 X-BeenThere: libcamera-devel@lists.libcamera.org List-Subscribe: , List-Unsubscribe: , List-Archive: Reply-To: David Plowman List-Help: Subject: [libcamera-devel] [PATCH v2] ipa: raspberrypi: imx296: Minor tuning updates Content-Disposition: inline Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Some updates to the tuning for the imx296 sensors. For the colour variant: * Minor change to the AWB curve, making things a little less green. * Updated CCMs that reduce colour saturation to a more accurate level. Thanks to Dr. Rolf Henkel for these measurements and calculations. * Sharpening has been toned down quite a lot. * rpi.focus algorithm added so that the focus measure can be accessed. The sharpening and focus changes are applied to the mono version of the sensor too as we expect similar characteristics. Signed-off-by: David Plowman Reviewed-by: Naushir Patuck --- src/ipa/raspberrypi/data/imx296.json | 180 ++++++++++++++++++---- src/ipa/raspberrypi/data/imx296_mono.json | 12 +- 2 files changed, 158 insertions(+), 34 deletions(-) diff --git a/src/ipa/raspberrypi/data/imx296.json b/src/ipa/raspberrypi/data/imx296.json index 4e830517..346f5b65 100644 --- a/src/ipa/raspberrypi/data/imx296.json +++ b/src/ipa/raspberrypi/data/imx296.json @@ -78,7 +78,7 @@ "auto": { "lo": 2500, - "hi": 8000 + "hi": 7600 }, "incandescent": { @@ -108,7 +108,7 @@ "cloudy": { "lo": 7000, - "hi": 8600 + "hi": 7600 } }, "bayes": 1, @@ -122,8 +122,8 @@ 5600.0, 0.2948, 0.6124, 7400.0, 0.2336, 0.6894 ], - "sensitivity_r": 1.0, - "sensitivity_b": 1.0, + "sensitivity_r": 1.05, + "sensitivity_b": 1.05, "transverse_pos": 0.03093, "transverse_neg": 0.02374 } @@ -352,73 +352,189 @@ { "ccms": [ { - "ct": 2500, + "ct": 2000, "ccm": [ - 1.73697, -0.36758, -0.36939, - -0.46469, 1.75868, -0.29399, - 0.14353, -1.26221, 2.11867 + 1.48716, -0.1877, -0.35079, + -0.48577, 1.55088, -0.03387, + 0.24919, -1.4583, 2.12083 + ] + }, + { + "ct": 2200, + "ccm": + [ + 1.53439, -0.28852, -0.29392, + -0.44748, 1.56295, -0.08907, + 0.23529, -1.30488, 1.99784 + ] + }, + { + "ct": 2400, + "ccm": + [ + 1.57619, -0.36904, -0.25181, + -0.41654, 1.57046, -0.13192, + 0.21678, -1.18352, 1.90786 + ] + }, + { + "ct": 2600, + "ccm": + [ + 1.61348, -0.43497, -0.2198, + -0.39075, 1.5753, -0.1665, + 0.19789, -1.08592, 1.83942 ] }, { "ct": 2800, "ccm": [ - 1.77684, -0.48089, -0.29595, - -0.41669, 1.74344, -0.32675, - 0.11995, -1.10172, 1.98177 + 1.64717, -0.49009, -0.1951, + -0.36881, 1.57852, -0.1952, + 0.18016, -1.00609, 1.78575 + ] + }, + { + "ct": 3000, + "ccm": + [ + 1.67798, -0.53693, -0.17591, + -0.34986, 1.58074, -0.21955, + 0.16406, -0.9398, 1.74261 + ] + }, + { + "ct": 3200, + "ccm": + [ + 1.70647, -0.5773, -0.161, + -0.33332, 1.58235, -0.24056, + 0.14961, -0.88398, 1.70721 + ] + }, + { + "ct": 3400, + "ccm": + [ + 1.73305, -0.61248, -0.14951, + -0.31875, 1.58355, -0.25894, + 0.13671, -0.83642, 1.67769 + ] + }, + { + "ct": 3600, + "ccm": + [ + 1.75802, -0.64343, -0.14077, + -0.30581, 1.5845, -0.27518, + 0.12518, -0.79546, 1.65271 ] }, { - "ct": 2900, + "ct": 4100, "ccm": [ - 1.83447, -0.50694, -0.32754, - -0.44924, 1.86236, -0.41312, - 0.06159, -0.91231, 1.85071 + 1.78116, -0.67459, -0.13048, + -0.26859, 1.58692, -0.31929, + 0.11915, -0.77931, 1.64012 ] }, { - "ct": 3620, + "ct": 4600, "ccm": [ - 1.91315, -0.61463, -0.29852, - -0.38782, 1.80483, -0.41701, - 0.00632, -0.74309, 1.73678 + 1.83867, -0.73605, -0.12044, + -0.24947, 1.58699, -0.34207, + 0.09949, -0.71041, 1.59842 ] }, { - "ct": 4560, + "ct": 5100, "ccm": [ - 2.13144, -0.79703, -0.33441, - -0.41488, 2.10864, -0.69376, - -0.03975, -0.70785, 1.74761 + 1.88967, -0.78455, -0.11744, + -0.23398, 1.58806, -0.36172, + 0.08362, -0.6574, 1.56728 ] }, { "ct": 5600, "ccm": [ - 1.95828, -0.76779, -0.19049, - -0.26299, 1.70577, -0.44278, - -0.05451, -0.51918, 1.57369 + 1.93485, -0.82318, -0.1191, + -0.22108, 1.58973, -0.37892, + 0.07074, -0.61609, 1.54362 + ] + }, + { + "ct": 6100, + "ccm": + [ + 1.97481, -0.85423, -0.12371, + -0.21015, 1.59169, -0.39406, + 0.06021, -0.58353, 1.52536 + ] + }, + { + "ct": 6600, + "ccm": + [ + 2.01029, -0.87946, -0.13017, + -0.20074, 1.59378, -0.4075, + 0.05146, -0.55732, 1.51096 + ] + }, + { + "ct": 7100, + "ccm": + [ + 2.04183, -0.9002, -0.13765, + -0.19255, 1.59586, -0.41944, + 0.04414, -0.53603, 1.49947 + ] + }, + { + "ct": 7600, + "ccm": + [ + 2.07001, -0.91744, -0.14566, + -0.18534, 1.59788, -0.43013, + 0.03791, -0.51841, 1.49013 + ] + }, + { + "ct": 8100, + "ccm": + [ + 2.09534, -0.93195, -0.15388, + -0.17893, 1.59981, -0.43974, + 0.03256, -0.50364, 1.48243 ] }, { - "ct": 7400, + "ct": 8600, "ccm": [ - 2.14829, -0.65425, -0.49405, - -0.46729, 2.66571, -1.19841, - -0.28128, -0.56248, 1.84377 + 2.11799, -0.94416, -0.16203, + -0.17324, 1.60161, -0.44836, + 0.02795, -0.4912, 1.47604 ] } ] } }, { - "rpi.sharpen": { } + "rpi.sharpen": + { + "threshold": 0.1, + "strength": 1.0, + "limit": 0.18 + } + }, + { + "rpi.focus": { } } ] -} \ No newline at end of file +} diff --git a/src/ipa/raspberrypi/data/imx296_mono.json b/src/ipa/raspberrypi/data/imx296_mono.json index b68b11db..e9fa30c6 100644 --- a/src/ipa/raspberrypi/data/imx296_mono.json +++ b/src/ipa/raspberrypi/data/imx296_mono.json @@ -222,7 +222,15 @@ } }, { - "rpi.sharpen": { } + "rpi.sharpen": + { + "threshold": 0.1, + "strength": 1.0, + "limit": 0.18 + } + }, + { + "rpi.focus": { } } ] -} \ No newline at end of file +}