Questions on computational photography

93 views
Skip to first unread message

Akunna Megwa

unread,
Mar 31, 2025, 10:56:18 AMMar 31
to opencv-gsoc-202x
Hello mentors,

I'm quite taken with idea 11, specifically improving white balance and colour constancy. I've looked at the repo and have noted three algorithms for white balance so far, the simple one, the greyworld, and learned balance models. All of these seem to be working in the sRGB space, I was wondering if there are any tools currently implemented that can aid with raw reconstruction (if not then that's likely not the way to go about this)?

Also, could you give some more background on what sorts of things users may expect? I recently used cv2 for a computer vision class and it was very useful but we didn't do anything crazy with it because our professor wanted us to build most things ourselves. Anyway I digress, from your perspective, who are the majority users of openCV, cs enthusiasts, camera companies, individuals with too much time on their hands looking at each pixel of their photo? I'm trying to get an idea of what the majority of people would do with this and what to prioritize.

Thanks in advance,

Akunna Megwa

Gursimar Singh

unread,
Apr 3, 2025, 4:46:37 PMApr 3
to opencv-gsoc-202x

You're right that OpenCV currently offers a few basic white balance algorithms (simple white balance, gray world, and learning-based ones). As for raw image reconstruction: OpenCV doesn't directly handle RAW processing pipelines—at least not in the sense that full RAW-to-RGB conversion (like Demosaicing with camera-specific color matrices or black level corrections) is part of its standard workflow. So if your idea hinges on manipulating RAW data, you'd either need to preprocess with external tools (like dcraw, libraw, or rawpy) or restrict your scope to sRGB-space improvements, which aligns better with the current direction of OpenCV's photo module.

As for your second question: OpenCV’s user base is quite broad. It includes:

  • Students and researchers, like in your class, often using it to quickly prototype CV ideas or learn the basics.

  • Industry practitioners, including those in robotics, AR/VR, automotive, mobile, and occasionally even camera manufacturers

  • Software Vision Applications: A lot of vision processing applications use OpenCV to tinker with personal photography tools, image enhancement filters, or even retro camera software.

So, in terms of prioritization:

  • Smarter white balance algorithms (e.g., illuminant estimation, color constancy using spatial or learning-based cues)

  • Color corrections

  • vignetting correction, chromatic aberration correction

  • Exposure, contrast, temperature correction and enhancement in color images

Reply all
Reply to author
Forward
0 new messages