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

White jpg/tif when using Ciecam - Enable checkbutton preferences - ciecam artifacts - issue 6343 #6347

Merged
merged 1 commit into from Aug 29, 2021

Conversation

Desmis
Copy link
Collaborator

@Desmis Desmis commented Aug 27, 2021

This PR solve (I hope) the problem in #6343.

  • I add a checkbutton in Preferences "Avoid artifacts"
  • by default CAM16 is used instead of CAM02 (CAM16 brings less artifacts)

When you enable "avoid artefacts" , the old algorithm is used (an can create white jpg...), and some processes are ignored to avoid artifacts in some cases (defringe, wavelets levels, etc.)

If nobody objects I will merge this afternoon.

Jacques

@Thanatomanic
Copy link
Contributor

Hi Jacques, thanks for the solution. I would like to test but can only do so tomorrow. Please delay merging for a bit.

@Desmis
Copy link
Collaborator Author

Desmis commented Aug 27, 2021

@Thanatomanic

No problem :)

jacques

@jade-nl
Copy link

jade-nl commented Aug 27, 2021

Just to be complete: I've also done some more testing and all seems to be well.

Tests included:

  • Turning on/off the Avoid artefacts preference. It is not needed to restart RawTherapee to make this work. If already zoomed in to 100(+)% you do need to zoom in or out one step to see the effect after changing this preference.
  • This worked on the original 2 problem edits I posted in Empty input file message and a white jpg/tif when using CIECAM #6343.
    Both exporting and zooming now work when the Avoid artefacts preference turned off.
  • Tried to introduce this issue editing other RAWs using the known and a reduced fresh set of modules that triggered this: I could not do so.

@Thanatomanic
Copy link
Contributor

This solves the issue. However, I must admit that I don't understand exactly why this works. In particular, what is automatic about autocielab? Can this variable be set through the GUI in any other way than through the new option in the preferences?

As for the new option itself: if I see something labeled "Avoid artifacts" I would think this is a good thing. However, having it enabled can actually cause (big white) problems. This seems very counter intuitive and would require some explanation at least.

@Desmis
Copy link
Collaborator Author

Desmis commented Aug 28, 2021

@Thanatomanic @jade-nl

It solves the problem, because it's a very very old problem.
When I set up Ciecam in 2011, as time went by, bugs were discovered, which led to the deletion of upstream functions (this around 2012, 2013), these functions brought artifacts.
We gradually set up a workaround using several variables, distributed between improccoordinator, dcrop, simpleprocess and improcfun (where there is the main Ciecam code) . These 2 variables were named "autocielab" and "labpassone"...Also from memory there was a GUI part to control which disappeared it seems to me. I have only re-established it

We can discuss endlessly about the name of the variables, but at the time "auto" meant (I think) that automatically all the processes that brought artifacts were not taken into account.

The recent introduction of CAM16 that I added this year should normally remove the artifacts when using the incriminated functions (CA, wavelet, etc.) and therefore one can now use denoise and Ciecam at the same time (which was not the case with CAM02). Normally the artifacts should appear (I hope) only in the case of CAM02

Of course we can change the GUI and replace Options with something else. That's what was set up 10 years ago. I don't see the point of it

jacques

@Thanatomanic
Copy link
Contributor

I understand that CIECAM02 has difficulties, and I appreciate your historic efforts to counteract them to the best of your abilities 🙂
I am a little surprised that "artifiact" means an entirely blank export image (which is very different from the preview!), but for now, I think this PR is good for a merge.

@Desmis
Copy link
Collaborator Author

Desmis commented Aug 28, 2021

Artifacts does not mean white screen....when using the functions in question and Ciecam, we ended up with black spots, bad colors, etc.
"White sceen" was only discovered today if you validate all excluded functions.... which was never done before. This is a malfunction which should be rare (very very) because of CAM16 by default.
The development of ciecam02 was very laborious about ten years ago and involved the participation of many actors, who are no longer in the current team (except Ingo which is still there, fortunately)

I will merge tommrow morning

Jacques

@Desmis Desmis merged commit ba2985a into dev Aug 29, 2021
@Desmis Desmis deleted the ciecam_empty branch August 29, 2021 05:39
@jade-nl
Copy link

jade-nl commented Aug 29, 2021

Thanks for the time and effort, appreciated.

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

Successfully merging this pull request may close these issues.

None yet

3 participants