Batch color-correcting old scanned photos - jit workflow tips?

ZEnhancer Studio's icon

I am digitizing a large collection of scanned family photos (1920s-1990s) and would like to batch color-correct and restore them. Right now I process them one by one and it takes forever.

Has anyone built a jitter-based pipeline for this kind of work? I am thinking of something like: jit.qt.movie / jit.bfg to load scans, auto-levels with jit.expr or jit.bfg.color, then write back with jit.qt.record. Also wondering how people handle dust and scratch removal in Max - is there a known external or a clever jit.gl.pix shader approach?

TFL's icon

jit.qt objects are legacy, you can use [jit.movie] instead of jit.qt.movie and [jit.record] instead of jit.qt.record. But since you are talking about still images, you could do both the import ant the export with a simple [jit.matrix]. The automation process could be quite simple, but...

Also wondering how people handle dust and scratch removal in Max

I might be wrong, but I think nobody does that. Max is more geared toward creating new visuals rather than image restoration which is a very specific task. I doubt you will find any shader doing that since there is no real point doing this kind of processing in real time. Exception for denoisers, which are actually quite useful in post-processing effects, but they aren't really designed to treat analog noise, and definitively not dust and scratch. If I was you I would search for existing dust and scratch removal solutions, algorithms, filters, models, etc. and see what can be used ported/used in Max. I can imagine you could find some AI models that does that pretty well, and you could bridge them to Max through nodejs with [node.script], but at this point why using Max at all?

Roman Thilenius's icon

the only reason not to do it is the lacking support for AE or PS plug-ins.