Manual edge selection in MTF Mapper is finally here!

fvdbergh2501

Leading Member
Messages
618
Solutions
4
Reaction score
481
When I first released MTF Mapper, I assumed that people would prefer fully automated chart processing because of the convenience. I learnt over the years, however, that there are many use-cases in which it is not possible to control the test scene, making manual edge selection unavoidable.

And I have been dragging my feet in implementing it, mostly because I felt it was important to have a responsive interface, something that can zoom and pan smoothly so that you can quickly locate the edge you were looking for in a large image. I am now satisfied that MTF Mapper's manual edge selection is close enough to this goal to release this functionality.

You can download the latest version (0.7.34) from https://sourceforge.net/projects/mtfmapper/ or using the direct link https://sourceforge.net/projects/mtfmapper/files/windows/mtfmapper-0.7.34-win64.exe/download

There is a new "File/Open with manual edge selection" menu option; be sure to click on the "Help" button on the new dialog (after selecting a file, of course). The de-facto PC zoom/pan controls can be used:

- hold <ctrl> while scrolling the mouse wheel to zoom in/out (or hold down the right mouse button while swiping up/down for touchpad users)

- left-click + drag for panning (only makes sense if zoomed in)

- mousewheel up/down pans up/down, and <shift>-mousewheel up/down pans left/right.

- everything else is (hopefully) covered in the three help pages accessed by clicking on the "Help" button. (MTF Mapper only has this one help button at the moment. I am thinking of adding a similar Help button to the main UI, in addition to the current user manual that is too verbose for casual use).

Note that you can directly open supported raw camera formats for manual edge selection; opening a raw file with "Bayer channel" set to "green" (Preferences dialog, "ESF construction" section) will show you the raw Bayer image before any demosaicing, and without interpolating over the other channels, so you will see the screen-door effect. After you have selected your edge Regions Of Interest (ROIs) and clicked the 'Accept' button, all processing will only be performed on the Bayer subset you had selected (or "None", the default, will show you an RGB preview, with actual MTF measurements performed on the luminance channel, just like always with MTF Mapper). I am still in two minds about the appropriate dynamic range reduction used in the "preview" image shown in the manual edge selection dialog: currently it is a straight linear stretch from the input range to fill 0-255. This leaves the image a bit dark (usually it works better to stretch between the 2nd and 98th percentile), but it makes the histogram display a bit more meaningful; feedback on this would be greatly appreciated.

Also new in version 0.7.34 is support for using LibRaw as the raw processor. This is now the default on Windows because it offers a much appreciated speed-up over dcraw. You will need LibRaw 0.20.x on Linux, so Ubuntu 20.04 is out of luck at the moment (will probably release that with dcraw as default). I also added asynchronous queued processing, so raw files will be developed in parallel with the MTF Mapper processing. Combined with the LibRaw upgrade you should see a 50% reduction in overall processing time when processing a bunch of raw camera files at once.

(I might add support for multiple concurrent LibRaw and MTF Mapper CLI processes; I am just concerned about memory usage, so this will have to be opt-in if I do add it).

This also yields a few quality-of-life improvements:

1. You can now queue up batches of images for processing from different directories (Previously you could batch process multiple files, but because you can only select multiple files within a single directory in the usual file-picker dialog you were limited to one directory per batch, and I locked the File/Open menu while the batch was running). Now you can use File/Open ... repeatedly to queue up lots of files.

2. You can now change the Preferences between submitting batches via FIle/Open; the Preferences at the time of submitting the batch will stick, so you can, for example, submit a batch of files from one camera with a specific pixel pitch, change the pitch to that of your other camera, submit some new files, and go make some coffee while everything runs. The SFR dialog (i.e., viewing the MTF curve) remembers the pixel pitch on a per-file basis, so you can do simultaneous plots of different-pitch sensors in lp/mm on the same scale. You can even change the Bayer subset between submitting batches, which is the closest you can get to doing convenient raw R/G/B SFR processing with MTF Mapper at the moment.

3. Batch processing also applies to manual edge selection. If you have a bunch of files from a through-focus sequence you may be able to process them automatically after selecting the appropriate edge(s) in the first image in the sequence. This won't work if the edge moves more than about 3-4 pixels from the initial image (MTF Mapper won't go looking for edges outside of the ROI you indicated), so it probably won't work with a focusing rail, but it might work with in-camera focus bracketing (cannot test this myself, so let me know, please!).

Anyhow, I looking at the way that you can now interleave changes to pixel pitch between submitting batches of files, I am considering pulling more of these common settings directly into the "File/Open" dialog. That should make it easier to process files from different cameras (meaning pixel pitches) without having to go through the Preferences dialog every time. And maybe adding a short history list to recall previously used pixel pitch settings. Or go full Nikon and have "banks" of preferences ... just kidding!

I think that covers most of the new things. As always, I am open to suggestions, feature requests and feedback. Please be specific; I have a hard time working with comments like "MTF Mapper is hard to use" because that gives me no purchase.

-Frans
 

Keyboard shortcuts

Back
Top