[PATCH v3 0/5] Software ISP levels cleanup

Kieran Bingham kieran.bingham at ideasonboard.com
Fri May 24 23:59:17 CEST 2024


Quoting Milan Zamazal (2024-05-23 12:26:51)
> 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.

Testing this series on Lenovo X13s has some oddity at startup.

Videos with before and after can be found at - https://photos.app.goo.gl/jWvqK5nNBBpdNqNK8

Milan, have you seen such corruption/overflow in your testing?

--
Kieran


> 
> Changes in v3:
> - Casting an uint8_t value to unsigned int when logging it. 
> 
> 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(-)
> 
> -- 
> 2.42.0
>


More information about the libcamera-devel mailing list