Recently I've been messing with Illustrator/Inkscape and trying to convert something like this:
to a single-stroked path like this:
I've searched a lot and I haven't found a solution.
(Object → Path → Offset Path...)
If you know the original stroke weight, offset by half that stroke weight (In my example here, the stroke was 10pt. A 5pt offset was too much due to the slight stroke variations on the curves but 4.999pt was ok). If you don't know the original stoke weight it's easy enough to zoom in and increase the offset by eye.
The offset path will leave you with a closed shape so you will need to manually delete one 'side' of that shape—just zoom in and delete the points you don't need. The ends will be offset too, so extend the path as much as needed then delete the original path.
If the original stroke had a varied width, offset path won't help you much. Another solution is to use Blend.
First delete both end sections of the outlined stroke (or use the scissors tool to cut each end). This will give you 2 separate paths.
Set the blend options to specific steps and 1 step (Object → Blend → Blend Options). With both paths selected create your blend (Object → Blend → Make).
Expand the blend (Object → Blend → Expand) and delete the original paths.
The Blend technique is the same as this answer, which goes in to more detail.
I compiled a screenshot that visualizes my favourite method and hopefully leaves no questions open. More details on HowTo see below.
I have done quite some research on this topic. As a quick summary: There is no simple method. For single objects you may use the suggested and accepted answer, but for long/large sets of paths, this is tedious. Especially if it comes to font.
My favourite method (in Adobe Illustrator) is:
You then have a single stroke from complex double strokes/compound paths etc. It is not a "clean" method and results may vary (greatly!) with size of the rasterized object. Changing size has a much larger impact (rather than changing parameters of the Image Trace).