[v2,0/2] Add contrast control to software ISP
mbox series

Message ID 20241009193318.2394762-1-mzamazal@redhat.com
Headers show
Series
  • Add contrast control to software ISP
Related show

Message

Milan Zamazal Oct. 9, 2024, 7:33 p.m. UTC
These are preview patches adding support to software ISP for modifying
image processing parameters in runtime.  They depend on patches not yet
merged and are likely to be modified based on how those patches evolve.
They serve as an illustration and proof of concept how the
implementation of software ISP controls can be done.

The first software ISP image control, implemented here, is contrast.  It
is simple to implement, doesn’t slow down image processing and can
enhance the image easily.

Changes in v2:
- Rebased on the merged version of software ISP refactoring.
- Control initialization moved from toplevel to an algorithm.

Milan Zamazal (2):
  libcamera: software_isp: Add contrast algorithm
  libcamera: software_isp: Add contrast control

 .../internal/software_isp/software_isp.h      |  3 +-
 include/libcamera/ipa/soft.mojom              |  2 +-
 src/ipa/simple/algorithms/contrast.cpp        | 52 +++++++++++++++++++
 src/ipa/simple/algorithms/contrast.h          | 39 ++++++++++++++
 src/ipa/simple/algorithms/lut.cpp             | 20 +++++--
 src/ipa/simple/algorithms/meson.build         |  1 +
 src/ipa/simple/data/uncalibrated.yaml         |  1 +
 src/ipa/simple/ipa_context.h                  |  8 +++
 src/ipa/simple/soft_simple.cpp                | 11 ++--
 src/libcamera/pipeline/simple/simple.cpp      |  2 +-
 src/libcamera/software_isp/software_isp.cpp   |  8 ++-
 11 files changed, 134 insertions(+), 13 deletions(-)
 create mode 100644 src/ipa/simple/algorithms/contrast.cpp
 create mode 100644 src/ipa/simple/algorithms/contrast.h