From patchwork Tue Dec 13 11:48:31 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 17995 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 98A93BDE6B for ; Tue, 13 Dec 2022 11:48:50 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 9E56263365; Tue, 13 Dec 2022 12:48:49 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1670932129; bh=ihBle4ilA8QcjPlZX76cHp5n9GCxOnPym4xnHeNNI9Y=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=1m6sqRIv7nxpCVUZew3dcdgMU3JWvHeo/Vu7qzWvm7z4yVY2CROYPkw9B0vSstyLa zoU7R5NwQn+vN/B/xqwmKQ3+6L5kkgNuqSI4kbsYabhR7ydwLeu0pZlLEXgV+VYHgN G/m8Bcn/j5HO3gORkDQo7yXyJKMGkvVh7J7C0b4N+JpMrJfRzpGtk3fQlquu+d7hFf /gpWLadREqsbyGkg41DnxQb+mTe7nKyPzpBIJLi2TUxnnA+ECE1O5aL3sVApjkztS7 Q5MtITFNTAW531OsH/6aJ6PdHU/g4c7O1rdru/DPdm4F3TnGVuWfLAOnaS17uWKGwQ eabIip0qhQpvQ== Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id AE4A863340 for ; Tue, 13 Dec 2022 12:48:47 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="ciIGkAi3"; dkim-atps=neutral Received: by mail-wm1-x336.google.com with SMTP id o15so8065382wmr.4 for ; Tue, 13 Dec 2022 03:48:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=YrdKEmCWcOzPzhqZDaeBXOJdqh7PS3bP95CyRiOpOc8=; b=ciIGkAi33PVgzbLryvq00H5ujrnQ2VHjvTxcG04huzPnLsU6si7+0DoegQ48xtV+pz QBgdcz0A2+40YcRpQDCU+/waBc/2Xf97XmOaNgAdZpJwXWSlHhTFT1HmpQ6e6hRiDAKd lPjv//zbuuCtt5ENgIXzW1jFl9p7OvnWnnxsyitk6QjAPTWVYpZoMCzfTGCu61q7tOYE n0ZtSFB3iW+FfqoJOOMPkGQKMeXjWFRuHY9S7ciB/2qnhd0R6ja0cQ6gjFNoiW6TXB8h UbljfkH/vuZZTZFsN43AuDp6MRJLTnzhgW943ylcMepYV8kR8HHkmx90pAnOEj5mClBD ssWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=YrdKEmCWcOzPzhqZDaeBXOJdqh7PS3bP95CyRiOpOc8=; b=31Z5xsfBeZZ4Ols3RM4R7/LtUJua6eXFc6VGZ756Ufur5fUJxLa8fnVMwOxAYunG+v PX2g1vfWuTOB4IumoRwK/soqemTvcN5eqDFlhCcVqyV3d2WbYo/cCR5SPRlZ9lKe4E4m PAo3RngiiovY/auXHdEeUgmphxcspPnQ7VQCwnVvgqy2gHDTQ+8ViXwqIsVLEJFamMEa 75onY+2hQANgZgKShDisplq/5VQjQiLUXj0b5uI4XgAKcPdKjZDpUjb+dMAfnxWfVJzq fHUic+K0QV7Nwj0B5LnsGkgTEOwX/Yh6I7yfNy3Kj/N4xV8o4Z81APIpnCLNnWV97DfY dqAw== X-Gm-Message-State: ANoB5pkJZ3fZ6CN5nxW8Iqr02MO4negBQ7egUj9cL80npTizvr9NqFc1 KI45bakx7fRmGeTXVvA/pySma9xZN2e6zKjE X-Google-Smtp-Source: AA0mqf5tFtn4qIWAs/aK1T8rh+kKnfmxil+OXnoM20VWl0YeAKrNs/AmP7hJRLrJBUOyNp2o+ZV6SA== X-Received: by 2002:a05:600c:1c87:b0:3cf:ae53:9193 with SMTP id k7-20020a05600c1c8700b003cfae539193mr16251676wms.39.1670932127017; Tue, 13 Dec 2022 03:48:47 -0800 (PST) Received: from naush-laptop.localdomain ([93.93.133.154]) by smtp.gmail.com with ESMTPSA id j8-20020a5d4528000000b0024287d9d4a8sm11574541wra.74.2022.12.13.03.48.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Dec 2022 03:48:46 -0800 (PST) To: libcamera-devel@lists.libcamera.org Date: Tue, 13 Dec 2022 11:48:31 +0000 Message-Id: <20221213114836.15473-1-naush@raspberrypi.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v3 0/5] Raspberry Pi: Generalise statistics 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: , X-Patchwork-Original-From: Naushir Patuck via libcamera-devel From: Naushir Patuck Reply-To: Naushir Patuck Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Hi, I've rebased this change to the top of master as there were some merge conflits that needed resolving. Apart from fixing a commit message typo, the changes are identical to version 2. Thanks, Naush Naushir Patuck (5): ipa: raspberrypi: Generalise statistics ipa: raspberrypi: histogram: Add a constructor for an empty histogram ipa: raspberrypi: awb: Delay release of the statistics buffer ipa: raspberrypi: Use the generic statistics structure in the algorithms ipa: raspberrypi: Normalise region sums to 16-bits src/ipa/raspberrypi/controller/controller.h | 4 +- src/ipa/raspberrypi/controller/histogram.h | 5 + src/ipa/raspberrypi/controller/region_stats.h | 123 ++++++++++++++++++ src/ipa/raspberrypi/controller/rpi/agc.cpp | 31 ++--- src/ipa/raspberrypi/controller/rpi/agc.h | 2 +- src/ipa/raspberrypi/controller/rpi/alsc.cpp | 32 ++--- src/ipa/raspberrypi/controller/rpi/alsc.h | 3 +- src/ipa/raspberrypi/controller/rpi/awb.cpp | 30 ++--- src/ipa/raspberrypi/controller/rpi/awb.h | 1 + .../raspberrypi/controller/rpi/contrast.cpp | 8 +- src/ipa/raspberrypi/controller/rpi/focus.cpp | 7 +- src/ipa/raspberrypi/controller/rpi/lux.cpp | 14 +- src/ipa/raspberrypi/raspberrypi.cpp | 48 ++++++- src/ipa/raspberrypi/statistics.h | 72 ++++++++++ 14 files changed, 304 insertions(+), 76 deletions(-) create mode 100644 src/ipa/raspberrypi/controller/region_stats.h create mode 100644 src/ipa/raspberrypi/statistics.h