Smoothing edges from jagged to a beautiful curve


I’ve had to scan a logo that was printed by a very low-DPI printer. This printer messed up all the curves in the picture and created some very jagged edges that are quite visible when the logo is big (notice the bottom side of the curves). I’d like to recover the original curved edges, without the awful aliasing.

So far I’ve tried playing with the Select -> Feather and Select -> Smooth tools in Photoshop but I’ve only gotten results where the edges are just curved teeth, rather than a nice prolonged curve. Also, blurring and feathering alone aren’t much of an option because the scan still needs to be sharp.

Can I get some help, please?


No silver bullet available. No software really knows the original, only guess. But you can help at the difficult places. At first make

  • a work copy of your original as separate layer, by Magic Wand select the black (tol=10, anti-alias=ON) and delete it.
  • a black reference layer to see the result against it when needed

enter image description here

Then one character at the time do the cleaning. Let’s do the G. Select the white. In high zoom you see the selection clearly:

enter image description here

Goto Select > Refine Edge. Take no feathering, but high smoothing and contrast. In this screenshot those are halfway, but you probably want to turn them to the maximum. The worst places need even more – repeat the refine.

enter image description here

The resulted selection:

enter image description here

It’s smooth, but sharp corners must be fixed. Take the Polygonal Lasso, add (Hold Shift) the missing outer corner and Subtract (Hold Ctrl) the exessive inner corner area.

enter image description here

Fill the selection with solid white by the paint bucket. Check the result against black. You must paint by a solid white brush around the selection to fill possible small holes that the paintbucket left.

Copy the selection, paste it to a new layer and see the fixed G

enter image description here

The edge is still jagged due the low resolution and no anti-alias. Fix it by selecting the white again with anti-alias on and pasting it to a new layer.

NOTE1: Repeating characters need to be cleaned only once EDIT: The first La and the second La are remarkably different, but the cleaned characters can be stretched (Edit > Transform > Distort).

NOTE2: In Illustrator or equivalent the cleaned characters get traced reliably

ADDENDUM: Done a test trace in Inkscape (=freeware). The red one is copied from Photoshop. The black one is the traced vector shape. The red color is selected only to be able to see the difference when the shapes are piled at the same place. No tuning was needed in Inkscape. Only selected “output in 2 colors”

enter image description here

In theory you can trace the original non-cleaned bitmap and fix the tracing result. I tried it. The work is possible to do, but it’s ten times more complex than clean the shapes at first in Photoshop. Only a master of Bezier curve editing can honestly say “I will do it faster in the vector domain”. He would draw it.

The cleaned bitmap produces easily 90% less path control nodes, when traced. It’s not difficult to edit them to get perfect curves. They must be adjusted for mathing The first L and a to their later instances which are remarkably different.

Finally a fast composing in Inkscape to see, how all fit:

enter image description here

A late addition: One year and 3 months later a new answer showed a font that can be used to recreate this from scratch. It also proves that some of the fixed glitches are actually designed details of the font.

Source : Link , Question Author : ppp , Answer Author : user287001

Leave a Comment