[PATCH v6 17/18] libcamera: software_isp: Apply black level compensation

Pavel Machek pavel at ucw.cz
Sun Apr 21 22:29:58 CEST 2024


Hi!


> > > The gamma curve needs to go after debayering, and additional histogram
> > > stretching could go there too.
> > > 
> > > There's also a need to add a CCM matrix to the pipeline, multiplying the
> > > RGB values obtained by debayering by a 3x3 matrix before applying the
> > > gamma curve.
> > 
> > I have looked into CCM already, but IMHO that is too heavy to do on
> > the CPU. We might get away with that at the big Intel Cores, but at
> > a significant CPU usage and battery cost.
> 
> Would SIMD help ?

I tried to do debayering using SIMD, and good news is that gcc now has
support so playing with SIMD is easy. Bad news was I was not able to
get speedups... Neither on x86-64 nor on arm64.

(But for matrix multiplication, it might make sense... not
sure). Anyway SIMD is _not_ easy.

Bad news with GPU is that there's quite some overhead with moving data
to and from GPU on my platforms.

Best regards,
								Pavel
-- 
People of Russia, stop Putin before his war on Ukraine escalates.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20240421/ffbc8138/attachment.sig>


More information about the libcamera-devel mailing list