From patchwork Wed May 22 14:54:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Klug X-Patchwork-Id: 20082 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 6008EBD87C for ; Wed, 22 May 2024 14:54:49 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 3755F63488; Wed, 22 May 2024 16:54:48 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="pFBukKyS"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id D3BB761A58 for ; Wed, 22 May 2024 16:54:45 +0200 (CEST) Received: from ideasonboard.com (unknown [IPv6:2a00:6020:448c:6c00:9beb:c30d:4413:8c99]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id E648EABE; Wed, 22 May 2024 16:54:32 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1716389673; bh=y6KK+gbeFd7W2vMd4AR8cfHg0NFp6bLjzZnmrm0hlA4=; h=From:To:Cc:Subject:Date:From; b=pFBukKySg082NaibqjBvKY6YjodIb5FdaVBdS7SetZJjg5VLY7ip0AkNLF7T3Fiy+ 44LHl3eyR5nIY74X+HXtnMZpEieAjl7bu8TPd1/3+XRVrv9P6Poa+lnbdXfLJSyTtI szBijJcswaNV9XAPYz7Vji28WXoTdWJcLGXXaFsU= From: Stefan Klug To: libcamera-devel@lists.libcamera.org Cc: Stefan Klug Subject: [PATCH v2 0/4] libcamera: Add gamma control for rkisp1 Date: Wed, 22 May 2024 16:54:34 +0200 Message-Id: <20240522145438.436688-1-stefan.klug@ideasonboard.com> X-Mailer: git-send-email 2.40.1 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" This patchset adds a gamma algorithm and the corresponding control for rkisp1. A camera gamma of roughly 2.2 is necessary to produce correct output images on a standard monitor and to comply with sRGB. Further information is available here: https://en.wikipedia.org/wiki/SRGB https://www.cambridgeincolour.com/tutorials/gamma-correction.htm v1 -> v2: - fixed some stylistic issues from review - added gamma control only if algorithm is present Stefan Klug (4): ipa: rkisp1: Add gamma algorithm libcamera: Add gamma control id ipa: rkisp1: Fix algorithm controls vanish after configure pipeline: rkisp1: Implement gamma control src/ipa/rkisp1/algorithms/goc.cpp | 157 ++++++++++++++++++++++++++ src/ipa/rkisp1/algorithms/goc.h | 41 +++++++ src/ipa/rkisp1/algorithms/meson.build | 1 + src/ipa/rkisp1/ipa_context.h | 4 + src/ipa/rkisp1/rkisp1.cpp | 2 +- src/libcamera/control_ids_core.yaml | 7 ++ 6 files changed, 211 insertions(+), 1 deletion(-) create mode 100644 src/ipa/rkisp1/algorithms/goc.cpp create mode 100644 src/ipa/rkisp1/algorithms/goc.h