| Message ID | 20260904062840.46739-1-dmanresa@gmail.com |
|---|---|
| Headers | show |
| Series |
|
| Related | show |
Hello - thanks for the contribution! We don't often get people working on the IPU3 IPA, so that's pretty cool to see. On 04/09/2026 07:28, D. Manresa wrote: > This series collects three small fixes for the IPU3 IPA found while > bringing up the OV5670 front camera of a Dell Latitude 7275 (Skylake, > IPU3 8086:1919): > > - The AGC luminance estimate receives the AWB gains as { red, blue, > green } while an RGB vector is expected. > - The black level is hard-coded to 64. The ImgU obgrid unit turns out to > be half a 10-bit LSB, so with 64 an OV5670 keeps a ~9/255 pedestal in > the statistics and the image, which the colour gains amplify. Make it > a tuning parameter, keeping the default. > - The tone mapping gamma is hard-coded to 1.1. Make it a tuning > parameter and document that the video pipe of the current firmware > ignores the LUT contents. > > All measurements were made with synthetic parameter tables and by reading > the NV12 output statistics; details and tools are available at the > project repository: > https://github.com/dmanresa-saes/latitude-7275-camera > > Follow-up series will add a Ccm > algorithm ported from rkisp1, lens shading through the SHD block These two changes are also currently on the list here: https://patchwork.libcamera.org/project/libcamera/list/?series=6162 Apologies for the preemption, there's been quite some work on unifying libcamera's IPA modules to use as much code as possible between them all, and the IPU3 has benefited from that. , and > controls for the TCC chroma gain and IEFD sharpening. But this one is not, and I have no plans to work on it, so that would be very welcome :) Thanks Dan > > D. Manresa (3): > ipa: ipu3: agc: Fix swapped green and blue gains in luminance estimate > ipa: ipu3: blc: Make the black level configurable > ipa: ipu3: tone_mapping: Make the gamma configurable > > src/ipa/ipu3/algorithms/agc.cpp | 2 +- > src/ipa/ipu3/algorithms/blc.cpp | 42 +++++++++++++++++++++--- > src/ipa/ipu3/algorithms/blc.h | 5 +++ > src/ipa/ipu3/algorithms/tone_mapping.cpp | 37 ++++++++++++++++++++- > src/ipa/ipu3/algorithms/tone_mapping.h | 3 ++ > 5 files changed, 83 insertions(+), 6 deletions(-) >
This series collects three small fixes for the IPU3 IPA found while bringing up the OV5670 front camera of a Dell Latitude 7275 (Skylake, IPU3 8086:1919): - The AGC luminance estimate receives the AWB gains as { red, blue, green } while an RGB vector is expected. - The black level is hard-coded to 64. The ImgU obgrid unit turns out to be half a 10-bit LSB, so with 64 an OV5670 keeps a ~9/255 pedestal in the statistics and the image, which the colour gains amplify. Make it a tuning parameter, keeping the default. - The tone mapping gamma is hard-coded to 1.1. Make it a tuning parameter and document that the video pipe of the current firmware ignores the LUT contents. All measurements were made with synthetic parameter tables and by reading the NV12 output statistics; details and tools are available at the project repository: https://github.com/dmanresa-saes/latitude-7275-camera Follow-up series will add a Ccm algorithm ported from rkisp1, lens shading through the SHD block, and controls for the TCC chroma gain and IEFD sharpening. D. Manresa (3): ipa: ipu3: agc: Fix swapped green and blue gains in luminance estimate ipa: ipu3: blc: Make the black level configurable ipa: ipu3: tone_mapping: Make the gamma configurable src/ipa/ipu3/algorithms/agc.cpp | 2 +- src/ipa/ipu3/algorithms/blc.cpp | 42 +++++++++++++++++++++--- src/ipa/ipu3/algorithms/blc.h | 5 +++ src/ipa/ipu3/algorithms/tone_mapping.cpp | 37 ++++++++++++++++++++- src/ipa/ipu3/algorithms/tone_mapping.h | 3 ++ 5 files changed, 83 insertions(+), 6 deletions(-)