Cover Letter Detail
Show a cover letter.
GET /api/1.1/covers/23116/?format=api
{ "id": 23116, "url": "https://patchwork.libcamera.org/api/1.1/covers/23116/?format=api", "web_url": "https://patchwork.libcamera.org/cover/23116/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/1.1/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20250403154925.382973-1-stefan.klug@ideasonboard.com>", "date": "2025-04-03T15:49:05", "name": "[v3,00/16] Some rkisp1 awb improvements", "submitter": { "id": 184, "url": "https://patchwork.libcamera.org/api/1.1/people/184/?format=api", "name": "Stefan Klug", "email": "stefan.klug@ideasonboard.com" }, "mbox": "https://patchwork.libcamera.org/cover/23116/mbox/", "series": [ { "id": 5111, "url": "https://patchwork.libcamera.org/api/1.1/series/5111/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5111", "date": "2025-04-03T15:49:05", "name": "Some rkisp1 awb improvements", "version": 3, "mbox": "https://patchwork.libcamera.org/series/5111/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/23116/comments/", "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 447A7C327D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 3 Apr 2025 15:49:38 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 0E956689A1;\n\tThu, 3 Apr 2025 17:49:37 +0200 (CEST)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 3900068980\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 3 Apr 2025 17:49:35 +0200 (CEST)", "from ideasonboard.com (unknown\n\t[IPv6:2a00:6020:448c:6c00:6d9d:9854:3fc1:4bb2])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 6E7388FA;\n\tThu, 3 Apr 2025 17:47:41 +0200 (CEST)" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"lORGyOS3\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1743695261;\n\tbh=vuF0Hteiz0VvXO5Pec77ZE5UkVPYJcHndEfuw0sr0Do=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=lORGyOS3jklwI2WHv2MnFJc6UFWJFsW/FdyRcKEyCj2wcynu4a1E7M/bZcYE9tlGO\n\tWyIJD+/ffcp410g4Uis+JvQ9riacJpEXGGiy0DUHDkB/EFhd6J8BKfpPKnWLLm+VkH\n\t+tte21xvICKG3OPcGcUcGVii8GL97Jw8uofFT9s8=", "From": "Stefan Klug <stefan.klug@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "Stefan Klug <stefan.klug@ideasonboard.com>", "Subject": "[PATCH v3 00/16] Some rkisp1 awb improvements", "Date": "Thu, 3 Apr 2025 17:49:05 +0200", "Message-ID": "<20250403154925.382973-1-stefan.klug@ideasonboard.com>", "X-Mailer": "git-send-email 2.43.0", "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": "Hi all,\n\nThis series contains a few fixes that greatly improve and stabilize the\nAWB handling on rkisp1.\n\nAfter the feedback from the first version, some parts were rewritten and\nLaurent added a generic matrix inverse function.\n\nPatches 1-8 add utility functions to Vector and Matrix.\n\nThe rest fixes some bugs and generally improves the AWB on rkisp1.\nPlease see the individual patches for details.\n\nBest regards,\nStefan\n\nChanges in v2:\n\n- Replaced the matrix cast() and inverse() functions by better alternatives\n- Added a manual CCM control\n- Some small fixes (see logs in individual patches)\n\nChanges in v3:\n- Included feedback from review (See individual changelogs)\n- Split patch 10 into 10 and 11\n- Dropped patch 13 (Use gains from color temperature curve) because it\n was actually doing the wrong thing when bayesian awb was active and\nthe benefit was not that big anymore, now that bayesian awb is\navailable.\n- Dropped patch 15 (Set rgb mean limits to 180) because it was not\n really necessary and the description was not sufficient.\n\n\nLaurent Pinchart (2):\n libcamera: matrix: Extend multiplication operator to heterogenous\n types\n libcamera: vector: Extend matrix multiplication operator to\n heterogenous types\n\nStefan Klug (14):\n libcamera: matrix: Replace SFINAE with static_asserts\n libcamera: matrix: Make most functions constexpr\n libcamera: matrix: Add a Span based constructor\n libcamera: vector: Add a Span based constructor\n libcamera: matrix: Add inverse() function\n test: Add minimal test for Matrix\n ipa: rkisp1: Refactor automatic/manual structure in IPAActiveState\n ipa: rkisp1: algorithms: awb: Fix wrong colour temperature reporting\n ipa: rkisp1: ccm/lsc: Fix CCM/LSC based on manual color temperature\n ipa: rkisp1: Implement manual ColourCorrectionMatrix control\n libipa: awb: Make result of gainsFromColourTemp optional\n ipa: rkisp1: Damp color temperature regulation\n ipa: rkisp1: awb: Take the CCM into account for the AWB gains\n calculation\n ipa: rkisp1: awb: Avoid division by zero\n\n include/libcamera/internal/matrix.h | 71 +++++++----\n include/libcamera/internal/vector.h | 17 ++-\n src/ipa/libipa/awb.cpp | 2 +-\n src/ipa/libipa/awb.h | 3 +-\n src/ipa/libipa/awb_bayes.cpp | 4 +-\n src/ipa/libipa/awb_bayes.h | 2 +-\n src/ipa/libipa/awb_grey.cpp | 6 +-\n src/ipa/libipa/awb_grey.h | 2 +-\n src/ipa/rkisp1/algorithms/awb.cpp | 64 ++++++----\n src/ipa/rkisp1/algorithms/awb.h | 2 -\n src/ipa/rkisp1/algorithms/ccm.cpp | 66 ++++++++--\n src/ipa/rkisp1/algorithms/ccm.h | 6 +\n src/ipa/rkisp1/algorithms/lsc.cpp | 6 +-\n src/ipa/rkisp1/ipa_context.cpp | 36 ++++--\n src/ipa/rkisp1/ipa_context.h | 15 ++-\n src/libcamera/matrix.cpp | 181 +++++++++++++++++++++++++++-\n src/libcamera/vector.cpp | 13 +-\n test/matrix.cpp | 53 ++++++++\n test/meson.build | 1 +\n 19 files changed, 455 insertions(+), 95 deletions(-)\n create mode 100644 test/matrix.cpp" }