From patchwork Sun Nov 24 19:29:48 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Geoffrey Van Landeghem X-Patchwork-Id: 22062 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 14390C3309 for ; Sun, 24 Nov 2024 19:30:04 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 9BFC766001; Sun, 24 Nov 2024 20:30:03 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Cef5rEIw"; dkim-atps=neutral Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id E4F8C65FFD for ; Sun, 24 Nov 2024 20:29:57 +0100 (CET) Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-432d866f70fso34533225e9.2 for ; Sun, 24 Nov 2024 11:29:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1732476597; x=1733081397; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pO3WU8Pwyqk8wrEI3opMQFnQFAq6Yn4LVeyjx6+p3jM=; b=Cef5rEIwNfNpiYi9+lEfn8Opx0svLTFgoIAAF6KvQf95tco384PkO3t8A6RuiPTEvf EWsaDIMbDsXlwDxWtDNA2B77zmbBoquDOicjiFv7aSrxeRde2pvlBzXDdHcusHP1GkuX DqVyZY4SQgMa0T/TEnLAOKUZr0dubtbsBaGLFMl17x1zhrXisWCFZbkWg67jy4Uznf3f KJjAjAPczzJE3l6Nx6TLtZyEr9XWc/wwDNsb6Z2YyWDsHr1qh6UL67/U+zutYTB727EP n4HigOPoTH2U6imxceCZMVYb0+5XAmwjQtMN6XWsHxIdDtWVz2APKQzT7fnrb284Qg8V 1o2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732476597; x=1733081397; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pO3WU8Pwyqk8wrEI3opMQFnQFAq6Yn4LVeyjx6+p3jM=; b=p8OHQdy1NB6C4inZotk0SR0kyrVHyrvQi7hoCflKF5vRLxcxCv+4pHSZDmp3iJ1v3m kHEOSraecmFY5pqA4J0QOxEl7KrvkMaLXuiNgGp7rgkqwHSyGNniyFfVYK9XzUpU3dpP EI3rvQDf53DFFT8B+qP+0wFT1YI5HCbao+n300hvhQLFMAvlgc524uHivkThZYruYe9G V4jlYkYoSb8dHVKU7G0/4tRKL6GaWRTX1ANndQJcimBix5JnqIIL1vGczO8BXitq9anR 9l6R5ApUfqCH+Pl7JE367PwRfM6/yIPTNbzxJcIS154/KR45me1ZnUjQG7UkiUERD7Fk ovpQ== X-Gm-Message-State: AOJu0YxL2t5xM72qZmqd1/rZoy87cy0nzSTh40FUXRPbn6bOeJgiDmj5 dDqJJPkzBIBFy/uf9MQEG5ByX+1SaiZfToXED24pu2JYkdxncFGcWqz2PA== X-Gm-Gg: ASbGncs4XzUXzMHDzINvEqPnU0ei72YZmD5EYl7JG6RXiHb1zDe/cw9npB2TwYZIMyQ LCuv0UVX2uxfcvA3CC2CXgo0+10RIiRf0tbrpNodaXnVq0q7rMe42deCy4sU22QwXjXm/f8CFmj R+f+5SlDLf77QzwUqUJwCluevaYfHHGL5QE0S7m0LE2tgh8lYdyFafPGBfyxNDh+TNR49zEYB+X oImj3HRucdL8AgTDn3gYTt4W1WOjGyw/D9usFQH45O6Q1iRsmnIbVTrqw5mdk6GZwx10c2YjITR 2AjAGKjpii03ud/NZCakfXRWFwFXcKYxUPAMBF+znzOzxYDAqA5XhTo= X-Google-Smtp-Source: AGHT+IEpyEdut13V3jopaOIqPgbxRccrtxTkVMhNg7tKOXfyXwed+RiWuwZ66LdDzlTtXGIXuMHUuw== X-Received: by 2002:a05:600c:4f41:b0:431:5eeb:2214 with SMTP id 5b1f17b1804b1-433ce4c2ad6mr78159605e9.33.1732476596797; Sun, 24 Nov 2024 11:29:56 -0800 (PST) Received: from localhost.localdomain (ptr-gh3gmp9ck9bx99mg7lb.18120a2.ip6.access.telenet.be. [2a02:1812:2512:400:400a:4d18:885b:f46f]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-433b463ab6csm169691645e9.35.2024.11.24.11.29.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 24 Nov 2024 11:29:56 -0800 (PST) From: Geoffrey Van Landeghem To: libcamera-devel@lists.libcamera.org Cc: Geoffrey Van Landeghem Subject: [PATCH v3 3/5] ipa: raspberrypi: Add tuning file for IMX462 sensor Date: Sun, 24 Nov 2024 20:29:48 +0100 Message-ID: <20241124192950.542686-4-geoffrey.vl@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241124192950.542686-1-geoffrey.vl@gmail.com> References: <20241124192950.542686-1-geoffrey.vl@gmail.com> MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Add a default tuning file for Sony IMX462 sensor. This tuning file is a copy of the IMX290 and is added to make the IMX462 sensor just work without hassle. Note the extra description field to clarify this is just an interim tuning file untill someone provides a proper one. Signed-off-by: Geoffrey Van Landeghem Reviewed-by: Jacopo Mondi --- src/ipa/rpi/vc4/data/imx462.json | 215 +++++++++++++++++++++++++++++++ src/ipa/rpi/vc4/data/meson.build | 1 + 2 files changed, 216 insertions(+) create mode 100644 src/ipa/rpi/vc4/data/imx462.json diff --git a/src/ipa/rpi/vc4/data/imx462.json b/src/ipa/rpi/vc4/data/imx462.json new file mode 100644 index 00000000..40a56842 --- /dev/null +++ b/src/ipa/rpi/vc4/data/imx462.json @@ -0,0 +1,215 @@ +{ + "version": 2.0, + "target": "bcm2835", + "description": "This is an interim tuning only. Please consider doing a more formal tuning for your application.", + "algorithms": [ + { + "rpi.black_level": + { + "black_level": 3840 + } + }, + { + "rpi.dpc": { } + }, + { + "rpi.lux": + { + "reference_shutter_speed": 6813, + "reference_gain": 1.0, + "reference_aperture": 1.0, + "reference_lux": 890, + "reference_Y": 12900 + } + }, + { + "rpi.noise": + { + "reference_constant": 0, + "reference_slope": 2.67 + } + }, + { + "rpi.geq": + { + "offset": 187, + "slope": 0.00842 + } + }, + { + "rpi.sdn": { } + }, + { + "rpi.awb": + { + "bayes": 0 + } + }, + { + "rpi.agc": + { + "speed": 0.2, + "metering_modes": + { + "matrix": + { + "weights": + [ + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 + ] + }, + "centre-weighted": + { + "weights": + [ + 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 + ] + }, + "spot": + { + "weights": + [ + 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ] + } + }, + "exposure_modes": + { + "normal": + { + "shutter": [ 10, 30000, 60000 ], + "gain": [ 1.0, 2.0, 8.0 ] + }, + "short": + { + "shutter": [ 10, 5000, 10000, 20000, 120000 ], + "gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ] + }, + "long": + { + "shutter": [ 1000, 30000, 60000, 90000, 120000 ], + "gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ] + } + }, + "constraint_modes": + { + "normal": [ ], + "highlight": [ + { + "bound": "LOWER", + "q_lo": 0.98, + "q_hi": 1.0, + "y_target": + [ + 0, 0.5, + 1000, 0.5 + ] + }, + { + "bound": "UPPER", + "q_lo": 0.98, + "q_hi": 1.0, + "y_target": + [ + 0, 0.8, + 1000, 0.8 + ] + } + ] + }, + "y_target": + [ + 0, 0.16, + 1000, 0.16, + 10000, 0.16 + ] + } + }, + { + "rpi.alsc": + { + "omega": 1.3, + "n_iter": 100, + "luminance_strength": 0.7, + "luminance_lut": + [ + 2.844, 2.349, 2.018, 1.775, 1.599, 1.466, 1.371, 1.321, 1.306, 1.316, 1.357, 1.439, 1.552, 1.705, 1.915, 2.221, + 2.576, 2.151, 1.851, 1.639, 1.478, 1.358, 1.272, 1.231, 1.218, 1.226, 1.262, 1.335, 1.438, 1.571, 1.766, 2.067, + 2.381, 2.005, 1.739, 1.545, 1.389, 1.278, 1.204, 1.166, 1.153, 1.161, 1.194, 1.263, 1.356, 1.489, 1.671, 1.943, + 2.242, 1.899, 1.658, 1.481, 1.329, 1.225, 1.156, 1.113, 1.096, 1.107, 1.143, 1.201, 1.289, 1.423, 1.607, 1.861, + 2.152, 1.831, 1.602, 1.436, 1.291, 1.193, 1.121, 1.069, 1.047, 1.062, 1.107, 1.166, 1.249, 1.384, 1.562, 1.801, + 2.104, 1.795, 1.572, 1.407, 1.269, 1.174, 1.099, 1.041, 1.008, 1.029, 1.083, 1.146, 1.232, 1.364, 1.547, 1.766, + 2.104, 1.796, 1.572, 1.403, 1.264, 1.171, 1.097, 1.036, 1.001, 1.025, 1.077, 1.142, 1.231, 1.363, 1.549, 1.766, + 2.148, 1.827, 1.594, 1.413, 1.276, 1.184, 1.114, 1.062, 1.033, 1.049, 1.092, 1.153, 1.242, 1.383, 1.577, 1.795, + 2.211, 1.881, 1.636, 1.455, 1.309, 1.214, 1.149, 1.104, 1.081, 1.089, 1.125, 1.184, 1.273, 1.423, 1.622, 1.846, + 2.319, 1.958, 1.698, 1.516, 1.362, 1.262, 1.203, 1.156, 1.137, 1.142, 1.171, 1.229, 1.331, 1.484, 1.682, 1.933, + 2.459, 2.072, 1.789, 1.594, 1.441, 1.331, 1.261, 1.219, 1.199, 1.205, 1.232, 1.301, 1.414, 1.571, 1.773, 2.052, + 2.645, 2.206, 1.928, 1.728, 1.559, 1.451, 1.352, 1.301, 1.282, 1.289, 1.319, 1.395, 1.519, 1.685, 1.904, 2.227 + ], + "sigma": 0.005, + "sigma_Cb": 0.005 + } + }, + { + "rpi.contrast": + { + "ce_enable": 1, + "gamma_curve": + [ + 0, 0, + 1024, 5040, + 2048, 9338, + 3072, 12356, + 4096, 15312, + 5120, 18051, + 6144, 20790, + 7168, 23193, + 8192, 25744, + 9216, 27942, + 10240, 30035, + 11264, 32005, + 12288, 33975, + 13312, 35815, + 14336, 37600, + 15360, 39168, + 16384, 40642, + 18432, 43379, + 20480, 45749, + 22528, 47753, + 24576, 49621, + 26624, 51253, + 28672, 52698, + 30720, 53796, + 32768, 54876, + 36864, 57012, + 40960, 58656, + 45056, 59954, + 49152, 61183, + 53248, 62355, + 57344, 63419, + 61440, 64476, + 65535, 65535 + ] + } + }, + { + "rpi.sharpen": { } + }, + { + "rpi.ccm": + { + "ccms": [ + { + "ct": 3900, + "ccm": + [ + 1.54659, -0.17707, -0.36953, + -0.51471, 1.72733, -0.21262, + 0.06667, -0.92279, 1.85612 + ] + } + ] + } + } + ] +} \ No newline at end of file diff --git a/src/ipa/rpi/vc4/data/meson.build b/src/ipa/rpi/vc4/data/meson.build index 8c34a1a5..6b4d443f 100644 --- a/src/ipa/rpi/vc4/data/meson.build +++ b/src/ipa/rpi/vc4/data/meson.build @@ -8,6 +8,7 @@ conf_files = files([ 'imx296.json', 'imx296_mono.json', 'imx378.json', + 'imx462.json', 'imx477.json', 'imx477_noir.json', 'imx477_scientific.json',