K
Kennedy McEwen
I don't have a Minolta scanner to try this, but one suggestionFernando said:Yes, but I'd like to try some kind of post-processing fix: because for
other aspects, I really like Vuescan. Plus, I can only use Vuescan to
drive my Polaroid, since it's attached to a Linux box.
Kennedy, do you have any suggestion about a procedure (even an
abstract one!) that, working on Vuescan raw files and a "dark scan",
could re-equalize the output from the sensor?
(something similar has been made before by someone else on this thread,
but I can't remember who and don't have time to read all the thread
again) is to lock the exposure and create a dark scan with the same
settings as the main image. The dark scan subject should be completely
opaque, perhaps some aluminium foil in one of the apertures of the film
holder. Simply subtracting the dark scan from the main image should
eliminate the lines if both are scanned linearly (gamma=1).
The initial problem with the dark scan is that it will have random noise
as well as the systematic miscalibration noise producing the line
structures. One simple way of reducing the random noise is to average
all of the pixels produced from each CCD cell. There are probably lots
of ways of doing this, but one suggestion because you know exactly what
is going on (assuming you use Photoshop) is to create a custom filter
(Filter/Other/Custom). This permits you to define a 5x5 convolution
matrix - so just make it all zero, put 5 1's in along the centre line in
the direction of the scan axis, set scale to 5 and offset to 0. Now,
each time this filter is applied you will effectively be averaging 5
image pixels to create a new one, which reduces the noise by around a
factor of 2.2 on the first step and progressively less on subsequent
steps. Run the filter on the dark image as many times as you have
patience for (Ctrl-F just repeats the application) and you should get a
random noise free dark scan.
A quicker, but less well defined (in that you have to rely on PS doing
the arithmetic correctly, and who knows what arithmetic precision that
uses internally) is to use the motion blur filter. Set the direction to
the scan axis (either 0 or 90deg) and then the number of pixels to the
maximum of 999. A single application of this filter *should* reduce the
random noise on the dark image by over 30x, which ought to reduce it to
the point where it is insignificant. I would repeat the filter a couple
of times as above just to be sure you get rid of it, since we don't know
exactly how PS calculates that motion blur. I should add a little
caution here because I suspect this might introduce rounding error noise
of the same level as you are trying to remove, so it might not be as
successful as the custom filter approach, but you will have to try it
and see.
Having created an essentially noise free dark scan of the line
structure, using whatever method you settle on, just subtract that scan
from the main scan and you *should* get rid of the single line artefacts
completely - if both scans have been made without any gamma
compensation.
Now the rub - this all requires 16-bit arithmetic, which generally means
you need to be using Photoshop-CS. If you are using PS7 or lower, or
any 8-bit image processing package, then you will be restricted to 8-bit
depth for these operations, which is a problem since the operation is
only accurate if applied in the linear domain. Reducing the image to
8-bit depth before applying gamma will cause posterisation when the
gamma is subsequently applied, so you can't go sown that route without
introducing worse problems than you started with.
One way round this is to work in gamma compensated space so that you
effectively have the full 16-bit range of the scanner compressed into
the 8-bit range with equal perceptual weighting to the levels in the
image. However, applying the dark image subtraction in 8-bits after
gamma is applied will introduce inverse lines in the mid-tones and
highlights, because you will be subtracting too much - again, worse
problems than you started with.
Again, this problem can be overcome if you create a mask based on the
levels of the original image to restrict the dark current subtraction to
only the shadow levels, without applying any correction in the mid tones
and highlights - or even several masks to subtract smaller proportions
(based on the gamma scaling) to those regions. I suspect that only the
one shadow mask would be enough but, without the problem to overcome
myself, that is a guess. Anyway, using masks in this way you should be
able to post process the lines completely out of the Vuescan image even
with 8-bit processing, provided that you make the scans with a gamma
compensation close to perceptual space, ie. around 2.2-2.5.
The above is purely hypothetical, since I can't try the solution out,
but I would be interested to hear if it helps or what problems you
encounter trying it.
The above applies only a dark correction of course and, given the
descriptions of the problem, that ought to be adequate. However it may
require a gain correction as well, using a "response scan". That should
be created from a near white scan, filtered the same way as the dark
scan, and from which the dark scan is subtracted in linear space (or
ignored in gamma space). The response scan can then be divided into the
original scan after the dark scan has been removed, to create the fully
corrected image. Again, this is just applicable in linear scans, and
might require masks to apply in gamma compensated scans if you are
restricted to 8-bit processing.