[v2,0/5] Software ISP levels cleanup
mbox series

Message ID 20240430173430.200392-1-mzamazal@redhat.com
Headers show
Series
  • Software ISP levels cleanup
Related show

Message

Milan Zamazal April 30, 2024, 5:34 p.m. UTC
This is a cleanup of black level and color gain handling in software
ISP.  It fixes omission of black level subtraction in white balance
computation and moves color lookup tables computations out of
debayering.  The latter also serves as a preparation for bringing
software ISP algorithms closer to common libcamera algorithm handling,
in future patches.

Changes in v2:
- stdint.h include moved from black_level.cpp to black_level.h.
- Removed meaningless multiplication in black level subtraction.
- Removed local variable scoping block.
- Added a comment about subtracting black level for auto white balance.
- A code snippet related to black level subtraction moved to the right
  patch.
- Dropped the patch moving TODO #13 to a source code comment.
- Added a patch to use float rather than uint8_t gains in color lookup
  tables passed to debayering.

Milan Zamazal (5):
  libcamera: software_isp: Use a specific integer type for black level
  libcamera: software_isp: Honor black level in AWB
  libcamera: software_isp: Move color mappings out of debayering
  libcamera: software_isp: Remove DebayerParams::kGain10
  libcamera: software_isp: Pass color lookup tables as floats

 .../internal/software_isp/debayer_params.h    | 19 +++--
 src/ipa/simple/black_level.cpp                |  2 +-
 src/ipa/simple/black_level.h                  |  5 +-
 src/ipa/simple/soft_simple.cpp                | 76 ++++++++++++++-----
 src/libcamera/software_isp/TODO               | 13 ----
 src/libcamera/software_isp/debayer.cpp        | 28 +++----
 src/libcamera/software_isp/debayer_cpu.cpp    | 53 +++++--------
 src/libcamera/software_isp/debayer_cpu.h      | 13 ++--
 src/libcamera/software_isp/software_isp.cpp   |  4 +-
 9 files changed, 109 insertions(+), 104 deletions(-)

Comments

Milan Zamazal May 13, 2024, 3:08 p.m. UTC | #1
Milan Zamazal <mzamazal@redhat.com> writes:

> This is a cleanup of black level and color gain handling in software
> ISP.  It fixes omission of black level subtraction in white balance
> computation and moves color lookup tables computations out of
> debayering.  The latter also serves as a preparation for bringing
> software ISP algorithms closer to common libcamera algorithm handling,
> in future patches.
>
> Changes in v2:
> - stdint.h include moved from black_level.cpp to black_level.h.
> - Removed meaningless multiplication in black level subtraction.
> - Removed local variable scoping block.
> - Added a comment about subtracting black level for auto white balance.
> - A code snippet related to black level subtraction moved to the right
>   patch.
> - Dropped the patch moving TODO #13 to a source code comment.
> - Added a patch to use float rather than uint8_t gains in color lookup
>   tables passed to debayering.

Hi Laurent,

do you plan to take a look what else may be missing?

Thanks,
Milan

> Milan Zamazal (5):
>   libcamera: software_isp: Use a specific integer type for black level
>   libcamera: software_isp: Honor black level in AWB
>   libcamera: software_isp: Move color mappings out of debayering
>   libcamera: software_isp: Remove DebayerParams::kGain10
>   libcamera: software_isp: Pass color lookup tables as floats
>
>  .../internal/software_isp/debayer_params.h    | 19 +++--
>  src/ipa/simple/black_level.cpp                |  2 +-
>  src/ipa/simple/black_level.h                  |  5 +-
>  src/ipa/simple/soft_simple.cpp                | 76 ++++++++++++++-----
>  src/libcamera/software_isp/TODO               | 13 ----
>  src/libcamera/software_isp/debayer.cpp        | 28 +++----
>  src/libcamera/software_isp/debayer_cpu.cpp    | 53 +++++--------
>  src/libcamera/software_isp/debayer_cpu.h      | 13 ++--
>  src/libcamera/software_isp/software_isp.cpp   |  4 +-
>  9 files changed, 109 insertions(+), 104 deletions(-)