[libcamera-devel] GSoC: OpenGL/OpenCL software ISP

paul.elder at ideasonboard.com paul.elder at ideasonboard.com
Mon Mar 22 10:15:23 CET 2021


Hello Abhay,

Sorry for the delay.

On Tue, Mar 16, 2021 at 05:03:27PM +0530, Abhay Raj Singh wrote:
> Hello everyone,
> 
> I am Abhay a 3rd-year student at the National Institute of Technology,
> Hamirpur, India. I had participated in GSoC last year with Inkscape(Open source
> vector graphics editor)
> as my mentoring organization, and I am very interested in the project titled
> OpenGL/OpenCL software ISP. Sorry for approaching late, I had mid-semester
> exams.

The application period hasn't even started yet so you're good :)

> I am an open-source enthusiast trusting nothing but open-source software, and
> images and graphics partcularly interest me. But, it pains me to see that most
> of the good camera features
> are offered by privacy guzzling corps. It will give me immense happiness to be
> able to contribute to the open-source solutions libcamera aims to provide.
> 
> I had written a header-only library to create Netpbm images in the first year.
> Source code: https://github.com/rathod-sahaab/cppm
> However, I lost direction due to the "everything from scratch" attitude as a
> new programmer back then.
> 
> I really want to get involved with the libcamera community to learn from the
> experienced developers. Though I won't bother you much just a nudge in the
> right direction and what to learn
> will be enough for me.
> 
> I am experienced in C and C++(modern and pre-modern) which I used and learned
> more about during my projects last GSoC.
> I also have some experience with HTML5 Canvas so I am confident I can learn
> OpenGL with some effort.
> 
> I have some doubts regarding the project OpenGL/OpenCL software ISP https://
> libcamera.org/open-projects.html#opengl-opencl-software-isp

This project idea is more open ended, so the answer to all of these
questions is "whatever you want". That being said...

> 1. Will the project aims to provide a binary(CLI app) or library or both?

It would probably be a plugin of some sort to libcamera, to "replace"
the ISPs that the pipeline handlers currently use. Sure, it could be a
separate binary or library, but then you'd have an extra layer to deal
with in the limited about of time the GSoC provides.

> 2. Can I use Rust?

You could, but as mentioned above, it would create an extra layer of
work and complexity. libcamera is written in C++.

> 3. What image formats should the project support? (Just .raw or others too)

The input would be just raw Bayer images. To make the project simpler
you /could/ narrow down the number of specific Bayer formats.


Paul


More information about the libcamera-devel mailing list