Help understanding your layer stack from the "Backlit Challenge"


I am trying to learn Photoflow, now that I have got it working with the git version.

As well as reading your blog tutorials, watching some of the G+/Youtube screencasts, & playing about with a number of edits myself, I downloaded your .pfi from the Backlit Challenge to see if I could follow what you had done.

I have some questions, if you don’t mind.

Working from the bottom of the layers stack upwards :-

In the 1st New Layer Group :
On the curves layer, looking within the mask - I understand the bottom 3 mask layers, but I don’t understand what the top layer “mask” is doing?
On the “New Layer” layer, looking into the mask - the “layer clone” takes its data from “New Group Layer/curves/OMap/layer clone(blended)”. Does the “OMap” signify that it is the layer clone within the mask of the curves layer? Also, what is the significance of using the blended version vs the unblended version?

2nd New Layer Group
The bottom layer “split input” does not have any ajustments or any other features, what is it’s purpose?
The next layer up “split details” uses wavelets with 3 scales. Does this not act like the GMIC “split details” where it decomposes the image into layers equal to the number of scales you choose, which you then work on? The layers above this, “split scale clo”, “split scale 1”, & “split scale 2” all appear to be clones of the “split input” layer which, as I say, I cannot find what that is doing, and there is no drawing on any of the layers. (I tried "the filter “split details” myself on the image and it didn’t seem to create any output layers, or do anything?)
So - I’m not sure what is going on in this middle layer group at all :frowning:

I’m OK with what’s happening on the top “New Layer Group” and with the 3 individual layers above that :slight_smile:

If you have some time, I’d be grateful for some insight/explanations to my questions/observations to help me learn.

It’s OK if you you don’t have time and would prefer get on with “real life”, or even programming some improvements to Photoflow, rather than answering stupid questions :slight_smile:



On the contrary, I’m glad to explain how PhF works! However, sometimes I might not be very quick in answering :wink:

The short answer: nothing! The longer one: this is a “buffer” layer, which is a sort of no-op tool. It does nothing, and it is just used to “give a name” to a specific point in the layer stack. In this specific case, I only used it to visualise the output of the mask while editing the other layers in the mask.

Yes, the layer clone in this case take the data from another mask layer… this is perfectly legitimate.
The difference between cloning the blended or not-blended version of a layer is that, in the blended case, one copies the result of the blending step. If for example a layer is blended with 50% opacity, cloning the blended version will give you the result of the 50% mix, while cloning the non-blended version will give you the layer data before being mixed…

The “plot input” is again a buffer layer, it is only there to “give a name” to the input data of the group.
The “split details” does the wavelet decomposition. On top of it I put a copy of the input data of the group, in the “split input clone”. Above the input copy, I put a copy of two of the detail scales, blended in “grain merge” mode… this effectively adds high-frequency details to the original image, thus obtaining a sharpening effect. This is basically a version of the wavelet sharpening technique.

The “split details” filter is a quite special one, in that it produces more than one output image. The individual output images can be accessed with clone layers, using the “sub-image” parameter, like this:

I hope this answers at lest few of your questions…

1 Like

Thanks very much for the replies.

I’m still not sure about the buffer layers and when & why you would NEED to use them, but if they do nothing, I guess I don’t need to use them for now. I read on your blog that they are needed if you want to save a preset, for some reason?

So, in terms of the split-details group layer, if I didn’t want to add the first buffer layer of “split input”, then when I wanted to clone the layer after the “split details” filter I would choose the layer name from the picker of the last previous layer in the stack which was the B-C-S-H adjustment layer? But then, when I wanted to put the two “sharpening” scale layers on top with “clone layer”, which layer would I choose for them? The same “B-C-S-H …” layer with sub images 1 & 2? Or is this why you need a buffer layer in this instance?

BTW, I would never have figured out that the “scales layers” images could not be seen and that you had to add them blind using the sub-image control. (I see you have to type these numbers in, the increase/decrease arrows don’t seem to do anything.) I was expecting those layers to be automatically generated by the filter and placed in the stack above the filter layer.

Also, do I understand correctly, then, that the “sub images” are attached to the “input” layer before the filter? Again, I would have assumed that the input layer was untouched and I would be looking for an “output layer”. So, in this case, I am looking to clone the input layer of “split input” and choose the sub-images of 1 & 2 to correspond with scales 1 & 2 from the"split details" wavelets scaling? I assume that iin order of coarse to fine that is in ascending order, 1 being coarsest and 2 being finest (in this case)? If the buffer layer had not been placed there, where would the output of the “split details” filter be, to choose from in the clone layer?

Apologies for the follow-up questions, but thanks again for your help.

Hi @Carmelo_DrRaw

Just a bump in case you missed my follow-up questions.



I think that the best way to understand the sub-images in the “split details” tools is with an example, which you can easily reproduce yourself.

Here, I opened a sample image and added a “split details” layer with 5 levels, such that the base level is visibly blurred:

Then I added a “clone layer”, targeting the “split details” layer and with the sub-image initially to “0”. This gives you the the same image as shown by the “split details” layer itself, which is the base level:

If you now change the sub-image to another value (here I set it to “1”), you can access the various details levels (I have called the clone layer “detail level 1”):

They details levels are built as “fluctuations” around 50%, because they represent the difference between one blur level and the next one, and therefore they need to “encode” positive as well as negative variations. The details can be added back to the blurred image using the “grain merge” blend mode:

In fact, if you put each detail level on top of each other, and above the blurred base level (corresponding to sub-image=0), and blend them in “grain merge” mode, you will get back the original image…

Finally, if you put a clone of the background layer between the “split details” and “detail level 1” layers, with the “detail level 1” layer blend in “grain merge” mode, you effectively increase the sharpness/local contrast of the image, because you add some high-frequency details to the original image data:

Just try and play with the different combinations, and feel free to ask me further questions.

For example, try to see the effect of changing the sub-image (and therefore the frequency range of the detail level) in the last step, and see how details at different scales are enhanced…

1 Like

Many thanks for your detailed reply.

I worked through an example as you suggested and now I understand the sub-images for each detail level.

That made it much clearer :smiley:

Thanks again.

1 Like