I’m working on a side project with a number of cycling charities around mapping cycle lane quality/material.
The idea being to create a global standard for measuring cycle lane quality for comparison / research.
It’s all a bit experimental right now, and has predominantly focused on using phone sensors to capture measurements (g-forces) to date.
In short we have now come to the conclusion, due to the amount of variables to be accounted for, this is not a scaleable solution.
You can read more about why here:
UPDATE: I can’t post links, Google “Trek View blog”
Seeing as the bikes will have a 360 camera (and potentially ground facing GoPro’), I’m now trying to take advantage of using these images to identify path quality / material type using computer vision.
I know this technology exists in roadway maintenance and there are a lot of available models for tarmac/concrete roads (and an equal number of commercial products).
I’m reaching out to the community to see if anyone has any experience / tips / good links to research using computer vision to measure quality of less uniform pathways (gravel, mud, etc.)?
I’ll keep this thread updated with progress. As with all our work, I will open-source anything we build.
Since some time I am mulling in my head two related ideas that I never really tackled. They are not automatic, but could go some way:
(1) For warning pedestrians I have a miniature cow-bell on my bike, intended for MTB riders to gently warn pedestrians. I noted that this tiny bell rather faithfully records the unevenness of the path. Needs sound recording with time stamps for synchronization with GPX tracks.
(2) Riding by night with a rather powerfull LED headlight on my bike, I realised that it produces very visible shadows on uneven asphalt and similar surfaces. Now, mount this headlight lower on the bicycle, say at 30 or 50cm from the ground, and shoot fast-sequence Mapillary images.
Both methods require human interpretation at the moment, but they cold go some way towards what you have in mind.
There are some reasonable CV models for detecting potholes. I think this could work OK for most surfaces where cratering/surface defects are an issue.
It would not work as well for deep rutting which can be a problem on the bike. I think this one is quite difficult without multiple angles though (or favourable shadowing).
Are you researching cycle lane quality or PAVING quality?
Overall cycle lane quality depends on a number of factors that may be quite difficult to assess, including tracing (turning radii, directness to desired origin/destination), width/capacity, slope, water drainage, junction design, and how possible conflicts/interactions with other users are solved (mainly with pedestrians). And paving quality, indeed.
After reading your blog post I believe you are focusing on bike lane PAVING quality - while interesting indeed, this is just one factor in the mix.
Yet this is very interesting and promising, keep up with this great work and thank you!!
I’m starting out with paving quality as you rightly point out. Once I have a good enough model, then I can deliver clear metrics about paving quality which are easy to understand and take action on (most consumers of this data just want an aggregated categorisation – “show me where it’s bad so I can fix”).
The other factors, like signage, road-markings, etc. are indeed important. However I don’t have a clear way to score based on these variables. More-so in cities I’d argue. Many of the people we’re ideating this with manage rural cycling infrastructure where oftentimes there is a dedicated cycle path either completely separate, or fenced off from a road, which is why paving quality was a solo data point.
One thing I did want to try was tackling junctions as a first attempt at this. Here in London, we have defined cycle lanes, but layouts, especially at junctions are particularly messy in places. Here signs in view (and type), amount of line paint, street furniture, etc could all be counted
Good point. I think right now, whilst deep ruts are important to consider, my aim is more to get a general view across a large network so it is easy for someone to take 10k+ images, and look for trends in quality by location, and quickly hone in on the “worst areas” for visual assessment.
I too use my 360 imagery and upload it to Mapillary for others to check their trek/bike routes and modify OpenStreemap lines to report on the ground material quality, having been sent on some crazy bike routes recently that had overgrown and blocked with railroad sleepers etc.
The only downside is that a few of the route tools fail to use this ‘quality’ data accurately to guide you on your path. Komoot.com for example will say the ground quality is gravel, but it ended up sending me through a field which had it raining would have been a nightmare, for me - maybe not if I was younger.