Rawtherapee - How do I enable the film negative tool please?

@Jossie @rom9

Both : I have uploaded an example of one such raw TIFF captured using Epson V550 scanner of Kodak Portra 400 negative to WeTransfer. I’ve sent the link via PM message if you’re interested for testing?

The result that my lab achieved with the same negative can be seen in the link I posted above, by form of reference, along with the version I got, somewhat out of the box (but without great results), using other means (negative2positive script etc).

My issue is not so much that the process is complex\problematic. I realise there are a multitude of steps I CAN take to achieve the resulting aim of a decent looking image from the negative. The problem I have is that I shoot film (for my own reasons) and simply do not have the time to manually click this slider and that slider and switch to this panel and that panel to get a result of satisfactory means. I shoot lots of film. If I had to do that for every frame of every role, even with an element of batch processing, I’d never be out the study.

What I need is something like Negative Lab Pro but I’d like it in an open-source tools like RT, as I am typically a user of OS operating systems and tools, and even develop some myself (though not photography editors!). What NLP does is enable the users to say “This is a scan of film type A B or C” and it gets you to pretty much the final result, which you can then finely tweak a little if you want to. In other words, the base emulsion colour itself (and whatever else) is used by NLP to generate an image of near accuracy based on pre-set profiles of the film type. I appreciate that can’t be done (easily) for dozens of films, but maybe it could be for the mainstream ones, like Kodak Portra 160, 400 and 800, Fuji Pro 400H, Fuji Velvia 50 and 100, Kodak Ektar, etc? As I say, I’m not familiar with the complexities of digital conversions of negatives to understand that, but I offer it suggestion only.

For now, I’m “happy” enough to just keep paying my lab to do what they do, which is great results every time. Who knows - maybe they use NLP themsevles! (unlikely as I’ve used them for 10+ years long before NLP came to be). But it would be nice if I could use a batch processing mechanism in one of the open-source tools I use to get near finished products just by doing a Ctrl + A across all my TIFFs, telling it “this is film type A” and clicking an “invert” button that does the job.

Hello, i got your PM :wink:
Thanks, i’ll use that as a test image since i don’t have a film scanner at hand.

Regarding the film profile database, that’s not a bad idea. It could be somewhat “crowd-sourced” from the users here on the forum, doing their tests and submitting the film parameters, that would then be selected in RT, like when loading a HALDclut file or a curve file :thinking:

2 Likes

I’d assume that like most tools in RT, that you can create a preset that’d allow you to apply the same settings to multiple images.

Hi,

I come here after I read on pentaxforum-com about the feature in Rawtherapee 5.7, and like OP ted_smith was thinking great I will process my scans mostly there. And I found like ted_smith that this Negative film tool was missing in the options of the raw panel, then google brought me here.
Ok, so iẗ́’s a tool only for DSLR scans not scanners.

Like ted_smith I have been thinking of Negative Lab Pro. I am a unix/linux user since ever, but if something is really very good or existing only in win I just run that inside Virtualbox.
So I have been playing with Negativelab, which is a Lightroom plugin.

Until now, I have been processing my negatives (Epson V700 for 120 and Proscan 10T for 35mm) in Gimp, and the “Invert” filter, followed by a “Auto white balance” and/or “Normalize/Equalize/Auto levels”. Works well with sometimes just a bit more color/curves/levels tweaks.

I do scan the colour negative in Vuescan, in raw/tiiff as dng, and Gimp does “un-rawize” the file by calling Darktable or Rawtherapee, whichever is in the system, for further editing.

Ok, what I was thinking is: if Gimp does a good job at negative inversion, why couldn’t Rawtherapee do the same for tiff “raw” files from scanners? Of course I wonder because I have no clue about the specs and programmatic technicities.
But then, that’s what the Negativelabpro Lightroom plugin does.

I played with few 6x6 colour negatives.
for instance this is a two steps process in Gimp (invert+auto WB):


and this is two steps in LR+Negativelabpro (LR auto WB + default NLP plugin):

if I add the colour equalization in Gimp, after invert and auto WB (1st image) I get:

the negative used:

So in short it could be nice to have a Rawtherapee module similar to the Lightroom NLP plugin. Yet without it Gimp works.

@rom9 is working to enable the tool for non-raw files.

1 Like

Yes, confirmed, i’m working on it right now :wink:

@antoniob please, since i don’t have a scanner, could you provide one or two sample tiff files for testing? I don’t need huge hi-res files, just a low-res linear tiff at the maximum color depth (16bits per channel, i suppose) would be sufficient. You can upload it via filebin.net
If you prefer not to post them publicly you can PM me.
Thanks! :slight_smile:

@rom9
I could provide scans with SilverFast and VueScan, both with and without IR-channel (which makes different TIF-files!), if you are interested.

Hermann-Josef

Yes, please :wink:
I don’t know how to handle the IR channel, nor how to fit it into the existing RT data structures, anyway if you send me both versions i’ll take a look at it.
No need for hi-res scans, i guess the lowest dpi setting on any scanner would be more than enough for this test, and sould make a reasonably-sized file to upload.

Thanks,
alberto

@rom9

that’s great. I can provide a bunch of scans. I tried upload to filebin.net without luck (generic “network error”, something on their side). Anyway I created a folder on Yandex Disk:
https://yadi.sk/d/Vw_juxhc-q67Kg

right now there are only 3 negatives. A couple 6x9, two 6x6. I tried to pick different light/exposure/colors sets. One is night, one a grey day, etc.

These are scanned with an Epson V700 with Vuescan parameters as follow, which produces 16-bit tiff: mode= transparency, media= image, bits per pixel = 48, dpi = 3600, medium infrared clean, output colorspace Widegamut RGB, output format: tiff 48-bit RGB and separate IR-channel: 16-bit

so two separate scans/files by negative: the regular and the 16-bit infrared channel only.
I didn’t scan in 64-RGBi because for my tests with the Lightroom NLP plugin it’s unusable. But if you want I can just rescan.

some border is included in this negatives. The orange mask varies by film and/or development. It’s not used by NLP/LR but the little I have played with Darktable, unless I missed something, one needs to sample the orange mask for the inversion.

I will add some more to this folder.

Thanks for the work!

Downloaded, thank you very much!

I also prefer having IR in a separate file, dealing with a 4 channel tiff is more difficult, so these are perfect :wink:

Yes, confirmed, in the latest version of film negative tool (which should be included in RT 5.8, and only supports DSLR) i also added the ability to pick the film base color. It helps in getting more consistent results when converting multiple negatives at once.
If i find a way to implement scanner tiff support, i will definitely include that feature.

Here’s a first attempt, obtained by horribly mangling the RT source code and hardcoding values left and right :rofl:

colors aren’t correct because i’ve chosen the channel exponents at random, but at least it seems feasible. The road is still long… stay tuned :wink:

alberto

1 Like

that’s good :blush:

btw, this shot was a “wrong” one, I mean it was taken against very bright sun, I was blinded, but just wanted to see what I could do with it. I did use a longer shade, hence the vignetting.Lot of reflection and flare. The film is Lomography 100.

for comparison, this negative processed in Gimp, 2-clicks without any additional tweaking: auto WB then invert:

and processed in Negativelabpro, same 2-clicks: auto WB in LR and the defaults settings of NLP:


after this one I took shots from the other side, ahead from the left bank of the river, as seen from this one, where I am on the bridge. Tiff (2010-12-15-0006) uploaded to the yadisk folder.
Processed the same way in Gimp (auto WB + invert):

and in NLP:

both need further hand tweaking but I found the Gimp one a bit better. The look of the two is consistent with paper/lab prints of this Lomography 100 film, reminiscent of Kodak Gold or similar cheap consumer film, often tagged “vintage 70’s/80’s” nowadays.

Here’s what i’ve got, i was trying to get colors as “true” as possible:

No manual tweaking except trying to find the correct exponent manually (i haven’t yet ported the dual-spot feature to calculate exponents manually).

It’s funny, i’ve discovered that with the same hack, it’s also possible to convert 8-bit jpegs like the one from the previous post:

The massive posterization in the blue/purple areas is a conseqence of the source image being only 8 bits, i believe.
(sorry for the gradient band at the top, i use it for debugging :grin:)

1 Like

hello again. I was away travelling for a couple weeks. You get good result.
I try now to get some sense of the technicalities on your main thread here

but I guess i will just have to wait for some code to appear in the current official git. By now nothing when I build the recent source.
I kept testing with different kind of emulsions (Ektar, Protra 160, Portra 400, Lomography 100, Lomography 400) and diverse kind of daylight and lightning. The only practical one-click inversion that I have been using until now with Gimp does fail with quite some negatives, requiring a lot of manual adhoc post-processing, while NegativeLabPro works very well consistently (have tried 12-shots demos on a couple diffferent virtualboxes …) so considering to buy.
I can post more raw negs for you to play, if that’s of some use, but also I should see what is said on Gimp boards or some place where color negative inversion in general may be discussed.
In some cases the positive produced by Vuescan or EpsonScan from the Epson V700 is still the best image, yet NLP outperforms it and basically it seems because in the default setting it uses Fuji Frontier scanner colours matrix, as I understand.
I need also to shot some 35mm and play with the Proscan 10T that I use for these.

Hi,

yes, i haven’t yet created a PR because i still have to implement infrared cleaning, and fix lots of stuff. I’m afraid i won’t make it in time for the 5.8 release.
In the meantime, i’ve created a dedicated branch on my git repo. If you have already built rawtherapee from source with the usual build-rawtherapee script, you can easily build this modified version by doing:

cd ~/programs/code-rawtherapee/
git checkout dev
git pull
git checkout -b rom9-filmneg_nonraw dev
git pull https://github.com/rom9/RawTherapee.git filmneg_nonraw
<it will ask to merge, commit the merge>
./tools/build-rawtherapee -b

(as described in this previous post )

Keep in mind that this is a preliminary version, so for example thumbnails don’t work, as the film base color picker. Also, it may crash a lot so please be patient :slight_smile:
You’ll notice i’ve moved the film negative tool from the “Raw” to the “Color” panel, just under Film Simulation.
To convert a negative, you can use the “Pick neutral spots” button and pick 2 different levels of gray (darker and lighter) from the negative, to auto-calculate the exponents.
You can use the “Reference exponent” slider to boost the contrast when needed.
After that, use normal WB controls to adjust the colors.

It’s still not a finished work, but you should be able to do some tests and get an idea of the results.
Please report back if you do :wink:

1 Like

I use an old Omega enlarger base and column. You can find old enlargers on eBay or Craig’s list for under $100. They have excellent mechanisms for mounting your camera and adjusting the height.

Example: Photographic Copy Stand From Old Enlarger.

I use the same enlarger base and column. But did no construction. Just removed the head and used and Adapter Spigot to attached an Arca Swiss mounting clamp. Simple.

1 Like

Hi everybody!
After ask some information about how to enable negative module for non raw file (Yes compiling is not enough, think to check in “color” panel and not in “raw” panel :)), it work like a charm!
For somebody want, I share with you some scan from vuescan of three color negative. I use similar preset like @antoniob (except DPI). You can download this file here (three different negatives) :

Caution, it’s not the best negative ever :

  • Negatives are old
  • Was taken with cheap compact camera
  • scanned with a espon V200
  • I’m still not a very “vuescan pro”

The major problem is in highlights : they are bery “burn” and you need to lower the Reference Exponent cursor. I plan to retry scan with other parameter to keep highlights : when you use vuescan s’negative and color option, it’s more balanced beetwen dark and white part of the image.

1 Like

Hi @rom9

I have come back to see if any further developments had come and it seems, if I understand, that you have indeed made good progress but that it is not yet in with v5.8 released in Feb 2020.

Are the instructions you gave on Jan 6th still applicable to try the latest test development? I am really keen to have a good raw negative colour conversion because it costs me ever so much to have them done by the lab. It seems Negative Lap Pro (NLP) which costs upwards of $100 and requires Adobe Lightroom is the only reliable means to achieve this (appreciating scripts like NegFix etc which do an OK job but not perfect).

Many thanks for your efforts. I wish I could code in C++…I’d try to help but alas I am a Delphi developer so not any use to your project.

Yes, they are! So, go on and build :wink:

Don’t worry: by testing and sharing samples, you are helping, so thank you :wink:

alberto

OK thanks for continuing to support the request and for having me help allbeit only in a small way.

I have attempted to compile on my Linux Mint 19 system but had to do a couple of things. First :

sudo apt-get install cmake

then

sudo apt-get install gtk±3.0

I created a temp folder in my home folder (using Linux) called rawtherapee-testdev then cd’d into it. Then :

git clone https://github.com/rom9/RawTherapee.git
cd rawtherapee-testdev/
git clone https://github.com/rom9/RawTherapee.git
cd RawTherapee/
git checkout dev
git pull
git checkout -b rom9-filmneg_nonraw dev
git pull https://github.com/rom9/RawTherapee.git filmneg_nonraw
./tools/build-rawtherapee -b

Seemed to successfully compile and make. No errors reported. Navigated to /myusername/programs and two folders listed :

code-rawtherapee (source code - no binary executable)
rawtherapee (empty)

What might I have done wrong? Any ideas? Sorry to pollute the thread with just compile errors but I thought it might help anybody else who hits compile hurdles.

This might be caused by the temp folder. I think you have to first run the build-rawtherapee script from your home directory, and then follow the additional instructions in the above post.
Try deleting everything, and start from scratch by following the instructions on the wiki:
http://rawpedia.rawtherapee.com/Linux#The_Automatic_Way

(running the build-rawtherapee script from your home dir). This should build the current official dev branch, and place the executable under ~/programs/rawtherapee.

At this point, follow the instructions in the post above (without creating any new folders). This should work, and place the newly compiled executable in the right place.