Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

is it possible to replace the commercial preprocessing by an invokable API? #36

Open
Vandermode opened this issue Dec 8, 2018 · 1 comment

Comments

@Vandermode
Copy link

Hi, very appealing work, and I would like to know whether it is possible to replace the inconvenient commercial preprocessing (i.e. the operations implemented by Lightroom mentioned in your wiki by a invokable API, since in most cases we should start from the unprocessed raw data rather than the demosaicked one.

Virtually I tried to utilize the dcraw/libraw to preprocess the mosaicked raw data into the ProPhoto RGB space, but unfortunately no decent result is obtained by post-processing with the 'exposure' framework.

Besides, I was also wondering how you can ensure the Adobe LightRoom behaves as intended? In my sense, the aimed preprocessing consists of three steps as follow:

  1. white balance 2) demosaick the (bayer) raw data 3) convert the linear camera-specific raw space into linear ProPhoto RGB space by a 3x3 color transformation matrix.

Nevertheless, it seems the additional step, \e.g. gamma correction is also applied by LightRoom, since I find in your implementation, the linearizing is necessary to invert the effect of non-linear gamma correction. I also have no idea how you can figure out the parameters of gamma correction there (is that just an approximation like 1/2.2?)

In summary, my question is what you exactly intended to do in Adobe Lightroom, and can it be replaced by a invokable API?

Thank you very much!

@Vandermode Vandermode changed the title is it possible to replace the commercial preprocessing by a invokable API? is it possible to replace the commercial preprocessing by an invokable API? Dec 8, 2018
@yuanming-hu
Copy link
Owner

Sorry for the very long delay - I've been occupied by the coming SIGGRAPH deadline.
I actually tried using dcraw at the early stage of this project, and it worked well. Later I switch to Adobe Lightroom to follow the "standard" way to utilize the data.

In fact, there is no guarantee that the gamma is correctly restored and we start from linear RGB images. The colorspace relationship between the input and the "recovered" output is actually very complicated (given the complexity of PhotoPro RGB, closed-sourced Lightroom processing pipeline, etc), and based on previous work I know, people simply assume what we are doing is a good enough approximation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants