Beep6581 / RawTherapee

A powerful cross-platform raw photo processing program
https://rawtherapee.com
GNU General Public License v3.0
2.9k stars 323 forks source link

wavelet contrast: Levels 4,5,6 non-functional #5791

Open ff2000 opened 4 years ago

ff2000 commented 4 years ago

I am on newlocallab2.

Version: 5.8-2065-g188f77804
Branch: 5.8-2065-g188f77804
Commit: 188f77804
Commit date: 2020-06-06
Compiler: gcc 10.1.0
Processor: x86_64
System: Linux
Bit depth: 64 bits
Gtkmm: V3.24.1
Lensfun: V0.3.2.0
Build type: RelWithDebInfo
Build flags:  -std=c++11 -fno-tree-loop-vectorize  -Werror=unused-label -Werror=delete-incomplete -fno-math-errno -Wall -Wuninitialized -Wcast-qual -Wno-deprecated-declarations -Wno-unused-result -Wunused-macros -fopenmp -Werror=unknown-pragmas -O2 -g -DNDEBUG -ftree-vectorize
Link flags:   
OpenMP support: ON
MMAP support: ON

Changing wavelet contrast levels 4,5,6 has no effect. RT-5.8 (and also a recent commit some time ago) had no issues. I tested with different RAWs from different cameras (SIGMA fp, Sony A7II, Olympus EM-1, Panasonic G85, Fuji XT-20) and all show the same behaviour. Note that it doesn't matter how many levels you select. 4 Levels selected and 1,2,3 work, 4 doesn't. 9 levels selected and 1,2,3,7,8,9 work, 4,5,6 don't.

RT5.8 is OK: wavelet_contrast_RT5 8

RT-git has issues: grafik

heckflosse commented 4 years ago

@Desmis Jacques, shall I bisect this or do you already have an idea what causes that?

Desmis commented 4 years ago

Perhaps it is a bug, but I don't think so

First Try : replace "selective luminance range" by "whole luminance range"...works

reselect : "selective luminance range" and now move the double sliders "Finer luminance range" to the left....works (I think) change "damper" and offset...works

go to the curve "Finer -Coarser levels" - move the 2 grrens point to the right... works

@TechXavAL is writting a documentation to explain

jacques

ff2000 commented 4 years ago

All right, works. I switched from Detail Level COntrast to Wavelet contrast recently and maybe I either didn't touch the 4,5,6 sliders or went back to Detail Level when I actually touched those sliders. Still I find it somewhat weird that it is always 4,5,6. I thought the whole range of possible (or implamented) detail levels was mapped on the selected number of layers. Selecting "4" should map a really course level to level 4. But probably this is once more a misunderstanding on my side.

Feel free to close this issue if you think all is fine and works/is documented as expected. Thx!

ff2000 commented 4 years ago

No, it's not 100% bug-free (IMO) ;) The upgrade doesn't work. Edit a file with RT-5.8 and reopen it with RT-dev - the effect of levels 4,5,6 is gone. I think RAWs edited with RT-5.8 should look the same when opened in RT-5.9.

RT-5.8 P1200273

Opened in RT-5.9-dev P1200273-1

TechXavAL commented 4 years ago

@ff2000

Hi: I'm checking that behavior, and it seems that you're right.

On the other hand, most probably it's not a bug, but an unexpected behavior that must be fully explained in the documentation (or change it to what the user expects)

There is currently a curve in dev at the end of the Contrast module (the Finer-Coarser levels), which by default has this shape:

Wavelet_contrast_finercoarser

In that graph, all levels that have a flat curve along the axis (the abscissa) will not modify any contrast.

On the other hand, in that curve the level that is gone most probably is only level 5, but levels 4 and 6 have a so little effect that it seems they are gone too.

Let's see how this will be solved (I won't say fixed, yet)

EDIT: by the way, given the upgrades made to the tool, the image won't look the same, but it should look a bit better, with less artifacts.

Desmis commented 4 years ago

@ff2000 Same answer as in PULL REQUEST

I think it will be almost impossible to ensure compatibility .... The operation is different... To sum up, in 2014 I imagined an operation with the inverted "shadows threshold" slider...not intuitive at all

When @TechXavAL begin to write documentation, he showed the difficulties of understanding.

After several stages I had the wrong idea of the curve, which I fully assume.

All these difficulties come from the GUI and my weak knowledge in this field.

Since one week, I got down to the GUI and found this solution which seems to work properly and is intuitive.

In the first step, I take into account the position of "wavelet level" This value this sets the maximum of the 2 sliders Then, the current value of "Finer levels" is passed to "Coarser levels" to set the minimum value

Now to sum up: for "finer levels" : Only levels beyond the chosen value will be affected by the highlight luminance range. for "coarser levels": Only levels above the chosen value and selected 'wavelet levels' will be affected by the shadow luminance range.

TechXavAL commented 4 years ago

Correction: