Skip to content

Scanning: How to Fix Colour Registration Errors

OK, So you scanned a colour image, and you’ve got lots of little dots:

colour image as scanned (detail)

colour image as scanned (detail)

There are three things I’ll need to do to make this image useful: smooth out all those dots, scale down the image, and get rid of that yellow fringe.

We must actually do them in the opposite order: first the fringe, then smooth the dots, and then finally scale down.   That’s because you must always work at the highest resolution so you don’t lose detail, and because the smoothing will make it harder to fix the fringe.

The yellow fringe is only on one side of this brave warrior’s head.  He stands there oblivious to the fact he has been badly printed!

To understand what’s going on, we need to remember how colour printing like this works.  Four separate images were printed on top of each other: a black one (called K), a red one (called M, for Magenta), a Yellow one (Y) and a blue one (called C, for Cyan).  Four images, each printed with a single colour.  The names of these four images, shuffled around, give us CMYK, the name for four-colour images.  The inks have interacted with each other a little, but we will pretend they don’t, and use GIMP’s Colours/Components/Decompose menu item, choose CMYK, and end up with a new image with four black layers, one for each of the four colours.

That was a lot of words to describe something simple, but it’s easier to remember how to do this if you understand what’s going on.

Now we have our four black layers, we can move the yellow layer down a little.  You can do this using the sample image in this blog posting if you want to try it.  Go to GIMP’s layers dialogue (you can go to Windows/Dockable Dialogues/Layers if it is not showing).  Hold down shift and click on the eye to the left of the yellow-k layer, and then click on the name of the layer next to it, the yellow-k, so it’s selected.  Choose the Move Tool from the toolbox (or press the lower-case m key) and then, to move the yellow layer down 10 pixels, press the down-arrow key ten times.

You could try Colours/Components/Recompose now, but it wouldn’t work, so wait just a moment. First, we must right-click on that yellow-k layer in the layers dialogue, and when the menu pops up, choose Layer to Image Size.  This will add some transprent pixels to the top of the yellow layer and chop off the bottom, so that when we recompose, it will be lower.  Otherwise, GIMP shifts the layers back when it does the recompose.  OK, now you can do Colours/Components/Recompose.

The resultimg image is much better.  If you also move the magenta layer a little, you can get to something like this:

After adjusting the separated CMYK layers and recomposing

After adjusting the separated CMYK layers and recomposing

It’s still not perfect, but because the images are overprinted, moving the yellow layer won’t really make bits of yellow suddenly appear from underneath red: there will just be a bit of a smudge where the inks blended.

You might also wonder if the individual mis-aligned images might be rotated slightly.  if you wondered this you would be right, but we cant fix that here. If you try, you will generate lots of unwanted patterns because the little dots will make interference patterns and moiré effects. So move them only horizontally and vertically for now.  Later you get a chance to fix rotation, but it is much less effective.

The next steps are easy, and are just like normal scanning: use Filters/Gaussian Blur to get rid of the individual dots.  There’s some mathematics behind this, but for our purposes all that matters is that the dots vanish in the preview.

After blurring.

After blurring.

I used a radius of 9 pixels on this image, which was scanned at 800dpi (or 800ppi for confused pedants). Now I’ve got a really blurry soldier, perhaps after a few beers, but after I scale him down he will be sharp again.

Note that if you still have colour fringing from rotated mis-printing, you can now try separating into CMYK, rotating the offending layer or layers, using Layer to Image Size on the layer or layers you rotated, and then recomposing.  The blur that we just did will make it safe to rotate, but the separation won’t be as clean, so depending on the image, it might not work.

You might also want to improve the colours now – e.g. reducing saturation.

Back to getting smaller. To get a sharp image after a blur radius of 9, you’ll really need to scale to 33% of the original size or smaller.  I wanted to make a screen background at 1600×1200 pixels in this case, so that was about 30%, although smaller sizes will be sharper.

After making it smaller, you can see more of it!

After making it smaller, you can see more of it!

Here is the result – since the image is smaller, rather than a small thumbnail I’ve included more of it, but if you’re using these images for practice, sadly you won’t get more of the picture come in from the edges when you scale down :-) so yours will look a little different.At this size you can’t really see any remaining colour fringing from misaligned colour separations.

We can still improve ths colour in this image by reducing saturation (it’s actually best to do that before scaling down usually, of course), but all I’m going to do right now is Filters/Sharpen, to get a final result like this:

After sharpening

After sharpening

There’s still a bit of a magenta fringe above people’s heads in this example, so moving magenta down may have been worth it.

I used a Sharpness of 65, because a higher value brings back the rosettes a little.  It’s a tradeoff, but if you see dots again at this stage, you have to use undo right back to the blur, and redo the blur with a larger radius.  Note that Sharpen is likely to give better results than the unsharp mask that many people love. Unsharp mask tends to introduce halo effects around the lines in illustrations like this, but works well for some kinds of photograph. Try them both and see which works best for you.

The final image is (or will soon be) on www.fromoldbooks.org.

Post a Comment

You must be logged in to post a comment.