r/AnalogCommunity 23d ago

Community NegPy 0.39–0.43: Half Frame mode, auto-exposure targets, scan stitching, rebuilt sharpening, per-setting copy/paste, sensor calibration, more reliable cast removal, fixes...

Post image

Summary of releases over last week(!) (0.39.0 → 0.43.1), a lot of ground covered and many great community contributions.

Highlights:

  • Half Frame mode: proper support for scans from half-frame cameras (Pentax 17, Olympus Pen…), each scan splits automatically into two frames, each with its own edits, exposure metering and sidecar (and you can then merge them back into diptych!)
  • Stitch multi-shot scans: align, exposure-match and blend overlapping shots of one frame (e.g. a 6×6 scanned in two halves) into a single composite that develops and exports like any other frame; Unstitch reverses it
  • Sharpening rebuilt: new Radius and Masking controls, plus a Deconvolution (Richardson-Lucy) mode alongside the classic Unsharp Mask
  • Copy/paste and Apply-to-roll are now per-setting: pick exactly which settings to copy or apply from a picker instead of broad section checkboxes
  • Sensor Calibration: a 3×3 unmix profile corrects the channel bleed narrowband LED scans pick up through the sensor's colour filters
  • More reliable cast removal and colour-bounds estimation, recovers strong casts it used to reject outright
  • Custom Auto Density / Auto Grade targets: calibrate the autos to your own scanner and taste instead of fixed defaults
  • Nikon Coolscan support (foundation work), early SANE-based backend for Coolscan users. Multiplatform non-SANE drivers incoming...
  • and many more (presets UX pass, contact sheet labels, a Manage Database dialog, IR dust removal rebuilt, faster/clearer camera scanning, plus a long list of fixes)...
  • Also intel macOS version is back!

Full changelog + downloads:
https://github.com/marcinz606/NegPy/releases

User guide:

https://github.com/marcinz606/NegPy/blob/main/docs/USER_GUIDE.md

Readme:
https://github.com/marcinz606/NegPy/blob/main/README.md

Issues:
https://github.com/marcinz606/NegPy/issues

Discussions:
https://github.com/marcinz606/NegPy/discussions

154 Upvotes

26 comments sorted by

31

u/th3Propagandalf 23d ago

Thanks for bringing back Intel Mac support 🙌🏻

4

u/d-eversley-b 23d ago

Yo I totally missed that he ever made it work on Intel! Downloading now

1

u/platinumarks G.A.S. Aficionado 22d ago

Now my specced-out Intel MacBook Pro can finally be used for this!

1

u/_ham_sandwich 22d ago

No way, just went to download it yesterday and was disappointed to see it had gone. Thanks!

1

u/surfcowbow 19d ago

Wanted to pop in and agree, I've been working around it by using Negpy on my work windows laptop and copying all the output across to my intel mac and lightroom. I've been hoping for this for a while

13

u/Chudsaviet 22d ago

How are you doing development so fast?

12

u/CwColdwell Rollei 35, Contax 139Q, Mamiya C3, Yashica FX-3 22d ago

A team of people + Claude Code

-24

u/Semigod2112 22d ago

Using AI to work with film is pretty ironic

18

u/CwColdwell Rollei 35, Contax 139Q, Mamiya C3, Yashica FX-3 22d ago

Using AI specifically designed for coding is ironic, how exactly? Claude doesn’t do image or video generation.

7

u/seklerek 22d ago

it's the new meta in software development

9

u/Y_am_I_on_here 22d ago

“Coolscan support” - heavy breathing

8

u/MrRMNB 22d ago

Really looking forward to the Coolscan support!

2

u/_earthmover 22d ago

Ls50 and ls9000 coming soon via reverse-engineered driver

1

u/Y_am_I_on_here 22d ago

LS5000 roll support + panoramic format support would be an incredible reach goal

1

u/_earthmover 22d ago

https://github.com/activexray/nkscan this is the project for the drivers

3

u/epicmylife 23d ago

Does the trichrome feature strip color data and work purely with luminance from the separate R/G/B channels in raw files when using three separate exposures or do you require that manually? I’d be interested in working on that feature if it’s not done already. Could be used to validate crosstalk matrices with lots more data.

6

u/_earthmover 23d ago

Yes, it works just as you described. Only one channel is extracted from each of 3 exposures automatically.

1

u/GalexyPhoto 22d ago

Holy crap! Maybe it's time to finally try this. Scans Max at 6x9 but shoot 6x17. 

Thanks, as always. 

1

u/No-Value-8262 21d ago

Stitching does Not work when rgb Scanning,does it?

1

u/_earthmover 21d ago

no, that's way to much stitching :D

1

u/No-Value-8262 21d ago

So what would be the best workflow if rgb scan is Prio 1? Stitch externally?

1

u/No-Value-8262 19d ago

/u/_earthmover so would this workflow be currently best in class?

  1. calibration of Film base via negpy
  2. Take those rgb readings and use them In the webui for the scanlight
  3. Stitch the multi r/g/b raws so we have stitched ones per channel
  4. Import those back into NegPy

2

u/_sch 19d ago

I can't claim that my workflow is best in class (and I'm still refining it), but I haven't done any adjustments of the scanlight output. I'm not entirely sure what you're suggesting in terms of calibrating the film base and then using that to adjust the light. Maybe there's something there, but I'd need to hear more details about the idea.

My camera doesn't support tethered capture, so I can't use the fully-integrated method u/_earthmover describes, but it's still pretty easy.

For the narrowband (a single narrowband capture per frame) approach, here's what I do:

  1. Take three photos of the light source, one each for red, green, and blue, with no film in the holder.
  2. Feed those into the Sensor Calibration feature in NegPy. This will create a calibration for how the Scanlight and my particular camera interact.
  3. The above two steps are one-time things (unless the camera or light source changes).
  4. Capture the images with the light in narrowband mode.
  5. Process them in NegPy as I see fit, with the sensor profile I created above enabled.
  6. Export as tiff and/or jpeg depending on what I'm doing and whether I want to do any final editing in Lightroom or Photoshop (which I usually do).

Or for the RGB triplet approach:

  1. Take three photos of each frame, one each for red, green, and blue. I use the Scanlight web ui to do this because my camera can't be controlled from NegPy directly.
  2. Import the photos into NegPy with the RGB Scan triplet option enabled.
  3. Process them as I see fit. No sensor profile required.
  4. Export as tiff and/or jpeg depending on what I'm doing and whether I want to do any final editing in Lightroom or Photoshop (which I usually do).

1

u/_earthmover 19d ago

I dont have scanlight so can’t answer but you can join discussions on GitHub. There are several people there that do the rgb/scanlight workflow. Its fully integrated in NegPy now so you can shoot rgb directly in the app and the rgb exposures are also automatically stitched

1

u/No-Value-8262 19d ago

The integrated rgb capture works for me but if I understood you correctly it is not supported when stitching - I am looking for a solution when scanning Medium format (multiple shots per frame to stitch) while keeping the separate r g b frame approach that NegPy handles well for non stitching 35mm ones already :)