From patchwork Fri Jun 19 09:27:22 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Plowman X-Patchwork-Id: 4098 Return-Path: Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 16B55603BE for ; Fri, 19 Jun 2020 11:27:50 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="EwZX8oAQ"; dkim-atps=neutral Received: by mail-wm1-x334.google.com with SMTP id f185so8477769wmf.3 for ; Fri, 19 Jun 2020 02:27:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ySuowHOOwFSyBPJkaHmXMaD8EH7/Wqal9sTi5d7VEFI=; b=EwZX8oAQSO986MolFUm+Up06YOl/CTOThjCdXEtqthtX094ZWy4mhsO+P87S4m6+iD 60ynVUnFdO14BvgTG59TZUWNttBKgFr4M/03kwkA/r/z1S6Yhs3jLd4vo4DoSaj/KPNB LSEkt5cZJH6ZjTQVyG46Ec453bqfHD1xAm2w+oOA5Ch29FlMnRF6mGoxR/QYPv5GU4oV yj2z0e8b4YMZFCwLFnkm3T5MFzjPHAadYc5j7zMTMsuRCfaWyiMRxz3RnMYjGLDQZq5W tFEvMTkqVFnUOkUBkrcVDVKQlsKC/Zltd88M5eN/g9k5ypq2t3i0QU5Rr2K0Bn0fPUHh rFBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ySuowHOOwFSyBPJkaHmXMaD8EH7/Wqal9sTi5d7VEFI=; b=GM1+rYAmEUe4e9kpVDjAXElwGOxCQJCI4wLf79ovhbm1mqcJovCzppdq2tGOaTqjwz ltGEJ1DqMCVtjPbFCqNmhyhgjA2dBux+1Z+APDRSzBTXYV9QDFfKb+jTImxxOFyVQv6a qotVjBnBYYG9ERS5L0p+a3g0ejoEjBZAQuNBeSPQP3CTFMIfu5UG4v9CtZ3KleiX4Tz+ ZgtB2GK5f4kAHUPwT9Fjph0/HYS+spjoHjQtq7dmUXkKil0EelZezCTo0XFdkIDDpRWZ 6k11yuZ1TiEWyaUV8rGJ8jDXbsGZLr1Q8BI+UwUlZ2zd4kuw7eSlgwoay6VBAAxItJjY r8jA== X-Gm-Message-State: AOAM533dxhjEc9YOM2KM2QFWHp1krO4MqUIzA4h0N9hDhUyxl2DmNE/M MZ0dgSkbUG//dI5yAGP1+aLg/sqxGhw= X-Google-Smtp-Source: ABdhPJy0qsYITMtsO1xCgKWGwcBn/RyZ8dSGej0u9suFLgV5yShenlb3uoQEbHhECAuuP2VgrWxpHA== X-Received: by 2002:a1c:a993:: with SMTP id s141mr1930031wme.174.1592558869448; Fri, 19 Jun 2020 02:27:49 -0700 (PDT) Received: from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72]) by smtp.gmail.com with ESMTPSA id n65sm5156154wmf.47.2020.06.19.02.27.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 Jun 2020 02:27:48 -0700 (PDT) From: David Plowman To: libcamera-devel@lists.libcamera.org Date: Fri, 19 Jun 2020 10:27:22 +0100 Message-Id: <20200619092725.19109-1-david.plowman@raspberrypi.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 0/3] libcamera sharpness strength control 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-List-Received-Date: Fri, 19 Jun 2020 09:27:50 -0000 Hi Here is a set of patches to implement a sharpness strength control for libcamera. Unfortunately I couldn't quite bring myself to do it as an int32_t control because it seems so similar to existing float controls like contrast, or saturation. But if we'd rather go back to ints, as previously suggested, just let me know and I'll redo the changes! There are 3 small patches in this set: 1. The first one just adds the "sharpness" control. This commit is the only Raspberry Pi indpendent change (and doesn't even involve any C++ code). 2. The second implements the control's effect in Raspberry Pi's sharpness control algorithm. 3. The final patch just plumbs the two together. Thanks and best regards David David Plowman (3): libcamera: add a sharpness strength control libcamera: raspberrypi: add sharpness strength control to Raspberry Pi IPAs libcamera: raspberrypi: plumb the libcamera sharpness control through to the Raspberry Pi implementation include/libcamera/ipa/raspberrypi.h | 1 + .../raspberrypi/controller/rpi/sharpen.cpp | 23 +++++++++++++++---- .../raspberrypi/controller/rpi/sharpen.hpp | 6 +++-- .../controller/sharpen_algorithm.hpp | 21 +++++++++++++++++ .../raspberrypi/controller/sharpen_status.h | 2 ++ src/ipa/raspberrypi/raspberrypi.cpp | 12 ++++++++++ src/libcamera/control_ids.yaml | 11 +++++++++ 7 files changed, 70 insertions(+), 6 deletions(-) create mode 100644 src/ipa/raspberrypi/controller/sharpen_algorithm.hpp