Using 2 Correction Curves to make Digital Negatives

Discussion in 'Digital Negatives' started by nmp, Jun 5, 2018.

  1. nmp

    nmp Member
    Ads Enabled

    Messages:
    467
    Joined:
    Jan 20, 2005
    Shooter:
    35mm
    I have had this question for a while: Can you use a second correction curve as a way to fine tune the the first one if the latter didn't quite give a good enough linearity in the print? My intuition was that you should be able to. A couple of times I tried this, the results were not consistent. In real application, there is always some noise introduced because of print-to-print variations in the process, particularly earlier in the development. So it was not immediately clear to me where the problem was.

    To figure it out, I decided to do a simulation of the process using Photoshop and ChartThrob. (I am sparing the details here unless someone wants to know the methodology.) From this I was able to convince myself that if the first curve is somehow not accurate, one could derive a second curve using the first curve as a starting point. The two curves can then be used in conjunction to get the required linearity in the final print. However, there is a catch. The second curve must be used BEFORE the first curve, not AFTER as one might have tendency to do in a Photoshop application. I tried many different first curves, from being very close to the theoretical to completely out-of-whack and arrived at the same result.

    In retrospect, thinking some more why the position of the curve matters, it finally downed to me that it made perfect sense. The first curve is for correction of the ensuing process which can be seen as lumping together of three steps which are a) inversion to negative and flipping, b) addition of colorized layer, and finally c) making of the print. In next iteration the process can be seen a combination with the first curve as the first step and the rest same as before. This would necessitate that the second curve be placed before the second curve.

    What is the point of all this? In many processes like salt print, density change is extremely gradual in the shadows, with the toe part of the characteristic S-curve sometimes extending to almost half of the range, due to a strong self-masking effect. This squeezes the zone of usable data to only a part of full 0-100%B range. There is a potential for lack of accuracy in the resulting correction curve because of noisiness in the data as well as difficulty of ChartThrob script to approximate the initial part of the curve where the slope is extreme, not to mention the funky way Photoshop “smooths” the line in Curves layer. For that reason, I have started to use a generic “starter” curve suited to the process at hand, then calculating the second curve from the test print made with this starter curve. Finally, the two curves are used together in the proper order to make the real print.

    FWIW....

    :Niranjan.
     
    Last edited: Jun 5, 2018
  2. Herzeleid

    Herzeleid Member
    Ads Enabled

    Messages:
    310
    Joined:
    Oct 31, 2008
    Location:
    Ankara/Turkey
    Shooter:
    Multi Format
    Hello Niranjan,

    Although, it is not mentioned often I also find sometimes it is better to use two curves, or let's say two tonal manipulations. I used to do it with certain printers, now I usually don't bother, but if I switch to printing at home using QTR, I would definitely do that again.

    When I used imagesetter negatives with stochastic screening in the past I used two steps. Imagesetter negatives work with the tightness and distribution of dots to create the values, but the values below 50 gray have so fewer dots on negative, they are practically useless for alternative or darkroom prints. So I created a levels preset that makes the values start from 50 gray otherwise I have an extreme slope in the curve to compensate the loss. Then I printed a chartthrob then created a curve. Of course that limits the tonal range but that is downside of halftone negatives, but it gives a finer separation of tones.

    When using QTR, I always focus on creating an ink profile very close to a linear curve or let's say less S-Crurve, I would prefer not to apply such strong shift in gray values. I fiddle with different shadows, highlights, gamma and ink levels until the test strip has less S-Curve character, than apply that as QTR linearization curve. Then make a chartthrob from that profile. So I have a less aggressive chartthrob curve that is pre-linearized in QTR.

    I understand your approach. I also prefer less aggressive manipulation of tones, no extreme slopes with little curve smoothing in PS.

    Regards
     
  3. OP
    OP
    nmp

    nmp Member
    Ads Enabled

    Messages:
    467
    Joined:
    Jan 20, 2005
    Shooter:
    35mm
    Yep, Serder. Great ideas for mixing and matching different approaches.

    One of the ways, I see this being useful is accounting for change or drift in the print for a particular process. For example, if there is a change of the paper or a tweak in a step, there is no need start all over again. Use the last curve for the process and fine tune from there.

    :Niranjan.
     
  4. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    Hello Niranjan,
    Yes, using 2 or even more (but not too many...) curves improves the quality of the DN for the reasons you pointed out. I have tried it in more ways. One is the way you use the curves. Another approach is to use a curve (16 points) for shadows and midtones and another one for midtones and highlights (another 16 points). Another approach is to use a curve with 16 points positioned in an not equidistant manner (ChartThrob produces curves with echidistant points), with a higher density in the zones with extreme corrections.

    Another situation I encountered was, sometimes, the necessity to "melt" 2 curves in a single one that produces the same results as the 2 applied consecutively. This was the case with the 2 layers gum prints. One layer/exposure is supposed to create the tones from white to the mid-tone (everything darker than the mid-tone would be printed equal with the mid-tone) and the other, different layer/exposure on top of the first one, the tones from the mid-tone to max black. I have tried to make 2 DNs (each one with its own curve) for each layer and after that to create a single curve that produces the effects of both this curves so that the final 2 layers print could be printed using a single DN/curve. It is still a work in progress.
     
  5. OP
    OP
    nmp

    nmp Member
    Ads Enabled

    Messages:
    467
    Joined:
    Jan 20, 2005
    Shooter:
    35mm
    Dan: I have done this manually by using the ChartThrob step-wedge: 1) Use color sampler tool to sample different spots selected appropriately; 2) Apply the 2 curves; 3) Read the new values of the samples at the top layer; 4) make a new curve with input from 1) and output form 3). If you automate this, that would be great.

    :Niranjan
     
    Last edited: Jun 6, 2018
  6. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    That was my general idea, too, Niranjan. I made a script that does what you have described, but I'm using a 256 step-wage (for greater accuracy). Due to the PS roundings and the strange curvatures that the PS curves may sometimes have the result is not always as it should be.
    Now I try to make the script chose the best points (not 16 equidistant points) to make the new curve in a manner that the PS roundings will not affect the result too much and no strange curvatures are produced. This involves more iterations with different mobile points and comparing the result of the new curves with the result of applying the 2 initial curves till they properly mach ( = the 2 step-wedges have, after applying the 2 curves and the resulted curve, almost identical grey values).
     
    Last edited: Jun 6, 2018
  7. carioca

    carioca Member

    Messages:
    94
    Joined:
    Nov 16, 2005
    Location:
    Paris
    Shooter:
    Multi Format
    I use QTR exclusively and fine tune with a second curve every now and then when needed.

    Before, I used the PS/ChartThrob approach and managed to get ok results.
    Here is a condensation of a paper found on the net a long time ago, explaining how to merge two curves into one. It is tricky but I managed to get it to work back then.
    Credit goes to the names mentioned in the text.

    Sidney
    -------
    Beginning of quote:

    Curve Merging

    From time to time curved digital negatives need some more tweeking. Whith a curvemaking tool like Chartthrob it is easy to run a second pass on an already curved grayscale chart. But how to merge the two curves in one new curve?

    After long search I found a rather simple method in this article by Martin Evening.

    “It is based on a tip from Russell Williams at Adobe”, Evening explains, about saving curve data in a photoshop raw image file. A straight curve is represented by a 256×1 pixel regular gradient. Apply your curves on this file and resave it as a new curve. Stunning idea, and it works!

    This is how I use this method for curve merging.
    Let’s say you have two curves: curve_01.acv and curve_02.acv where curve_01.acv is your first charthrob curve and curve_02.acv is a second pass charthrob curve for finetuning.

    1. open any file in photoshop and open the curves palette. You see a straight line curve.
    2. click on the pencil button next to the curve button. You enter manual curve editing mode. Save this straight curve as a .amp file. Name it merge_curves.amp for example. (if you don’t click on the pencil you get a .acv instead of a .amp file and that doesn’t do the trick)
    3. rename this file to merge_curves.raw making it a photoshop raw file
    4. open this raw file in photoshop
    5. photoshop shows a dialog asking for the image dimensions and some more details
    6. in this dialog put width: 256 pixels, height: 1 pixel, channels count: 1, depth: 8 bits, header size: 0.
    7. you just created a regular 256×1 pixel grayscale gradient representing all the data in a straight curve. Save (a copy of) this file for later use

    8. in comes the magic!
    9. tada…..

    10. apply curve_01 to this file
    11. apply curve_02 to the allready curved file (doing exactly as you would do with your real file)
    12. flatten, if needed, and save as: my_merged_curves.amp
    13. open the image you want to curve
    14. apply my_merged_curves.amp et voila!
    15. if you want a regular .acv file click on the curve button next to the pencil button in the curves palette and save the curve again.

    Many thanks to Martin Evening and Russel Williams for pointing this out.

    It looks somewhat complicated but with an allready saved raw file it is a snap.

    End of quote
     
  8. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    Very interesting. I have never heard of this trick. Thanks, I'll try it.
     
  9. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    It works on PS6 very nice with the exception of extreme black and extreme white when saving the 256 grayscale gradient in .raw format. That's not a great issue as I can create the 256 grayscale gradient .raw file using other methods.
    Using the pencil tool while creating the curves offers another nice trick: you are not constrained anymore at using only 16 points and the resulting curve is precise, without strange curvatures induced by PS. It can be used in scripts, as well, offering the chance of the creation of very precise curves, with separate control on each of the 256 grays. That's really great.
     
  10. RalphLambrecht

    RalphLambrecht Subscriber
    Ads Enabled

    Messages:
    10,568
    Joined:
    Sep 19, 2003
    Location:
    K,Germany
    Shooter:
    Medium Format
    I do it successfully with ONEcorrection curve!
     
  11. OP
    OP
    nmp

    nmp Member
    Ads Enabled

    Messages:
    467
    Joined:
    Jan 20, 2005
    Shooter:
    35mm
    Not sure I understand this. How do you use points with the pencil?

    :Niranjan.
     
  12. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    Niranjan:
    With the pencil tool selected you can set a full 256 grays tonality mapping, with precise values for each of the 256 values, but only in script. A script can "draw" the curve by assigning the whole set of 256 values and that's equivalent with drawing it with 256 points.There are no "roundings" in the process and the curve has the maximum possible precision. There is no way to manually introduce the values while the pen tool is selected, but manually dealing with 256 values would be impractical anyway.

    I'll make a full 256 grays gradient map and scan it by script to make the 2 correction/soft-proofing pen-curves with the maximum possible precision.
     
  13. OP
    OP
    nmp

    nmp Member
    Ads Enabled

    Messages:
    467
    Joined:
    Jan 20, 2005
    Shooter:
    35mm
    Thanks, Dan. So it does not work unless in script. I was wondering if I was missing something. No good for me...I am not script-wise.

    :Niranjan.
     
  14. ced

    ced Member
    Ads Enabled

    Messages:
    506
    Joined:
    Oct 10, 2011
    Location:
    Belgica
    Shooter:
    Multi Format
    Groups:
    Hello folks! Just tried this idea of merging two curves (great & thanks, I have been hunting down this possibility for some time now. Peter Mrhar has it built into his method of curve generation) take note that when saving the file/files as .amp (from an image file like the 256x1pixel.raw) you need to load the curve stored in that file as it may not be available through the default selection. It seems also weird that after applying the 2 curves to the file and then saving the file to store the 2 curves and not a curve file (this was a bit confusing for a dud like myself).
     
  15. Dan Pavel

    Dan Pavel Member
    Ads Enabled

    Messages:
    90
    Joined:
    Sep 11, 2017
    Location:
    Constanta, Romania
    Shooter:
    Multi Format
    Hello ced!
    Yes, that's a nice trick possible because the Photoshop RAW format is a simple descriptor of the pixels in the image in binary code (without a header) and the AMP format is practically the same thing with the only difference that the RAW format can store an immense quantity of pixel data while the AMP format can only store 256 pixels.

    Anyway, much care has to be taken with the image mode in PS. The same image mode has to be selected while saving the RAW format and while loading the resulted AMP file, otherwise the curve may be drawn incorrect.
    This happens because while in the grayscale mode the RAW format is saved as consecutive gray values and in the RGB mode, for instance, it is saved as sets of 3 values, R, G and B. (and similar, in sets of 4 values in CMYK).
    The data order in grayscale is : G0, G1,G2,G3,G4,...G255 and in RGB it is : R0, G0, B0, R1, G1, B1,R2, G2, B2,....R255, G255, B255.

    That's why while saving the RAW file (that will be renamed as AMP) the grayscale mode has to be selected. This will result in a single curve (not separate R,G and B curves) that will load correctly in RGB mode, as well. Dealing with separate R,G and B channels curves (or C, M, Y and K) complicates things quite a lot.
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies. If you have a Photrio account, please log in (and select 'stay logged in') to prevent recurrence of this notice.