Software developer Adam Franco created Curvature to analyze ten million roads around the world and find the twisty ones. Using OpenStreetMap (OSM) and a ton of math, Curvature ranks roads based on the number and quality of their curvy bits. The result is a map of almost everywhere on Earth you want to spend a sunny day driving or riding. Our conversation has been lightly edited for length and clarity.
How did Curvature start?
I took up motorcycle touring in 2012 and very quickly found that leaning into corners was a lot more fun than cruising along on a straight road. So I started building Curvature back in 2012 as a way to actually look at road data and analyze the geometry and be able to pick out the twisty roads.
How does OSM integrate?
OpenStreetMap is an open-data project, similar to Wikipedia but focused on building maps of the world instead of an encyclopedia. In the U.S., Google has pretty good road data in much of the country via proprietary services, but in the rest of the world. Open Street Map is really the most detailed, best map you can have. In some places it's the only map available.
How do you use the OSM data to determine the curviness of the road?
Curves that have a radius of more than 150 meters, that's straight – we’re not give that any kind of curve weighting. The broad curves, kind of a high speed long curve that you're just kind of feeling a little bit of lean towards, I'm going to give those a weight of one.
I multiply that weight of one by the length of that segment in meters, and that gives me this value for twistiness, which is effectively the meters in that curve. Corners that are even tighter, let's say 50-meter radius curves, I'm going to give that a weight of two. Below 25 meters, the tight hairpin corners, I'm going to give those a weighting of four.
Once I've placed all the segments into buckets and multiplied the weighting by the length of the segment, that gives me a total value for that roadway which is effectively a weighted value of meters spent leaning into corners.
How do you eliminate straight roads?
If we hit a series of segments for more than two miles that don’t have any interesting curves on them, I'll snap the road in two there and eliminate the straight segment. What I'm left with are just the parts of the road that have corners of interest, and the value of those corners in that segment of road.
I zero out the curvature for 'conflict zones' on 100 feet on each side, crosswalks, 90-degree turns, so they don't get weighted and measured. It zeroes out a lot of twistiness one would find in the urban environment.
Is it possible to search for a location?
I am working on search right now. Another feature I'm looking to add is saving bookmarks, making it so that someone could build up routes and share them with folks.
This seems like a ton of work for a hobby project.
I've probably spent more time working on it than I have riding motorcycles, that's maybe a little bit of an imbalance that I hope to remedy.
Have you driven any roads you found on Curvature in a car?
I have a Subaru Impreza. It is the Impreza Sport, but it's not a particularly sporty car. So while I do enjoy driving vigorously, my love of curvy roads in the car is a little less than if I had a different machine.
What has curvature taught you?
There are many places where the highway departments have paved lots of little twisty back roads that aren't major highways to places, and that aren't in the mountains.
Have any places surprised you with curvy roads?
Japan is kind of crazy. I've never been there, but it seems that all their roads are paved, and outside of the very densely populated flat areas, Japan is just nothing but twisty roads.
Anywhere you want to go?
Definitely the Alps, and there's a particular road in Norway that actually makes a loop into a cliff face as it zigzags up the side of a fjord.
Is there a community aspect? How can someone help?
The program that does all the calculations is open source software under the GNU general public license, it's available on Github.
I have a whole bunch of bugs, for instance, not going around roundabouts and getting stuck in a loop –certainly someone could try working on that if they have programming skills. The bigger way people can contribute is editing OpenStreetMap. The biggest thing harm-wise in much of the world is tagging road surface. Not all the roads have been tagged as paved or unpaved.
If people want to contribute financially to the project there is a donate button on the web site. But I want to find these things because I find them fascinating, and then feed that interest back into others mapping the world and improving the map.
This content is created and maintained by a third party, and imported onto this page to help users provide their email addresses. You may be able to find more information about this and similar content at piano.io