Go Back  Bike Forums > Bike Forums > General Cycling Discussion
Reload this Page >

Massive Update To The New Cycling Route Creation App I've Been Developing!

Search
Notices
General Cycling Discussion Have a cycling related question or comment that doesn't fit in one of the other specialty forums? Drop on in and post in here! When possible, please select the forum above that most fits your post!

Massive Update To The New Cycling Route Creation App I've Been Developing!

Thread Tools
 
Search this Thread
 
Old 07-26-23, 04:11 PM
  #1  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Massive Update To The New Cycling Route Creation App I've Been Developing!

I'm back! With a huge update and overhaul to the site myself and my roommates have been building in our free time which is dedicated to making the best possible cycling routes!

The site is https://sherpa-map.com

Quick recap if you didn't see the first post, my two roommates and I leveraged each other's skills and developed a fully featured web app (hosted on a server in our basement) that creates cycling routes using the same backend software as RideWithGPS, Komoot, etc. it sends routes to Garmin, lets you download GPX files, has 28 routing profiles, lets you see Gravel roads in the area, project cafes/bathrooms/parking/public water/etc. onto the map, use AI classification to figure out unknown road surface types, supports weather information, etc.

I got some amazing feedback when I initially mentioned it last month here in this post, and was hoping for some more of that with all the new changes we've made!

The major update is a new UI that can function on mobile, still not quite as good as the Desktop UI, but it's getting there, and automatic route generation!

Here's a more comprehensive list of the features:
  1. Show Gravel Button: This is the feature that started it all. It projects all roads with surface types other than paved, which have been classified in the OSM database, onto the map. So, you can easily route onto or off of them! Here's a demonstration:

  2. Auto Route Generation: The latest and greatest feature! On both mobile and desktop, you can choose a direction and have a looped route generated in that direction. I haven't really set any size limits, so... have fun! Example on mobile (Also works on desktop!):

  3. AI Surface Type Classification: All sites that generate routes (e.g., Komoot, RideWithGPS, Strava, etc.) use the same dataset, Open Street Map, where individuals manually input surface types of roads. I use this too! However, particularly in America, there are many roads with unknown surfaces. To help with this, I trained an AI classifier to use real-time satellite imagery and, well, classify those roads! Check it out: https://i.imgur.com/ycs7pEe.mp4

  4. Weather & Tailwind Insight: Completely free! You can enter the start time and day of your ride, along with how long you think it will take you, and it will plot the weather for where you're expected to be along the course of your route, I even have a complex algorithm that derives your tailwind percentage, making it easy to optimize for speed:


  5. Amenities: Ever wanted to project all of your favorite gas stations, cafes, and even public restrooms, water, parking, etc., directly onto the map? I have an option for that! It pulls directly from OSM: https://i.imgur.com/ojKTgut.mp4

  6. Route Profiles: We support 28 (including a manual, off-road, option)! Don't want to pay for Strava, but they're the only ones supporting maximum hills or keeping your route as flat as possible? We have those options! As well as unpaved/paved, racy/leisure combos, etc.:

  7. Send to Garmin: You can immediately send routes to your Garmin device, download them as GPX files, or share a link to them.
  8. Accounts: You can save routes to your very own account, access them, share them, and do whatever you want with them. There's no limit on this; it doesn't really take up much server space.
  9. Maps: I support OSM, Google Maps (with traffic/bike/transit layers), Mapbox, and cycleOSM

Note: If you're having trouble finding the metric/imperial, this is where it is:
(this should be automatic if you let the app see your location, but it's been hard to test)

Since we now pretty much support mobile (which was incredibly challenging to program), all I ask for is any feedback, thoughts, ideas, etc. If anyone decides to use it at all, or even gives it the slightest try, it becomes our biggest motivator! We designed this out of a passion for finding the best routes, both paved and unpaved, and I hope you'll discover some too!

If you'd like to follow along for any updates, I setup this Facebook page for the project:
https://www.facebook.com/people/Sher...0090209792541/
firebird854 is offline  
Old 07-26-23, 04:22 PM
  #2  
TiHabanero
Senior Member
 
Join Date: Nov 2012
Posts: 4,464
Mentioned: 15 Post(s)
Tagged: 0 Thread(s)
Quoted: 1746 Post(s)
Liked 1,376 Times in 721 Posts
Nicely done. As a paper map guy, I think your site might be agreeable with my archaic mind!
TiHabanero is offline  
Old 07-26-23, 04:28 PM
  #3  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by TiHabanero
Nicely done. As a paper map guy, I think your site might be agreeable with my archaic mind!
I wish I could manage on paper maps... I'd get so lost!
firebird854 is offline  
Old 07-26-23, 05:35 PM
  #4  
icemilkcoffee 
Senior Member
 
icemilkcoffee's Avatar
 
Join Date: Aug 2009
Posts: 2,395
Mentioned: 14 Post(s)
Tagged: 0 Thread(s)
Quoted: 1562 Post(s)
Liked 1,734 Times in 974 Posts
Great work! On the 'information' panel, it would be useful to know the maximum gradient on a certain route. Is that something you could add in?
icemilkcoffee is offline  
Old 07-26-23, 05:54 PM
  #5  
Troul 
Senior Member
 
Troul's Avatar
 
Join Date: Oct 2013
Location: Mich
Posts: 7,395

Bikes: RSO E-tire dropper fixie brifter

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 6 Post(s)
Liked 2,979 Times in 1,920 Posts
#3 & #5 looks promising. Will #5 have the ability to know if it's free to park or require a pass/permit & has hour restrictions for use or 24hr access without restrictions?
__________________
-Oh Hey!
Troul is offline  
Old 07-26-23, 06:13 PM
  #6  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
On the 'information' panel, it would be useful to know the maximum gradient on a certain route.
That's a solid idea... honestly, I've been meaning to add it to the graph too so you can hover over and see the gradient on that point of the graph. At the moment, I have a linetype that displays grade and a legend for it, however, this isn't nearly comprehensive enough. I'll work on implementing this, I personally am quite a fan of hills, so I'm surprised I haven't gotten around to adding this, thanks for the input!
firebird854 is offline  
Old 07-26-23, 06:17 PM
  #7  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by Troul
#3 & #5 looks promising. Will #5 have the ability to know if it's free to park or require a pass/permit & has hour restrictions for use or 24hr access without restrictions?
Currently, I run a query to the OSM database that will grab a parking spot within the view that meets any of the following criteria:
amenity='parking'
OR (leisure='parking_space' )
OR (highway='service' )
OR (leisure='park' )
--OR (tourism='camp_site' )
OR (shop='mall' )
OR (shop='supermarket' )
OR (shop='department_store' )
OR (shop='convenience' )
OR (amenity='fuel' )
OR (amenity='public_building' )
) AND (access='yes' OR access IS NULL);

These do have a field called "fee" which is currently being ignored, I can filter out the fee ones or place a $ next to the parking icon that requires a fee. Unfortunately, I don't have a way to find out what that fee is, or the hours, unless it's entered in the database. I like the idea of adding the $ to the parking symbol if it requires some type of fee, so I'll probably do that, unless you have some additional thoughts on this.
firebird854 is offline  
Likes For firebird854:
Old 07-26-23, 06:24 PM
  #8  
Troul 
Senior Member
 
Troul's Avatar
 
Join Date: Oct 2013
Location: Mich
Posts: 7,395

Bikes: RSO E-tire dropper fixie brifter

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 6 Post(s)
Liked 2,979 Times in 1,920 Posts
Just knowing there's a fee would be helpful. Whether or not that fee is a daily access fee, duration of time (hours) or for a set amount of calendar days (annual, monthy etc) would be icing on the cake.

Thanks for the app!
__________________
-Oh Hey!
Troul is offline  
Likes For Troul:
Old 07-26-23, 06:50 PM
  #9  
urbanknight
Over the hill
 
urbanknight's Avatar
 
Join Date: Mar 2006
Location: Los Angeles, CA
Posts: 24,376

Bikes: Giant Defy, Giant Revolt

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 998 Post(s)
Liked 1,206 Times in 692 Posts
I meant to try this out when I saw your first post but just simply forgot. Tried it just now and it is indeed helpful. I made a route I have done before and noticed a good portion of unknown, then clicked on the AI button and it accurately determined it to be what I know it is. This will be very useful as I am planning to try and "gravel bike" some areas that I am uncertain of the terrain. It looks like you do indeed have all the features of other sites. Well done!
__________________
It's like riding a bicycle
urbanknight is offline  
Old 07-26-23, 07:12 PM
  #10  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by urbanknight
I meant to try this out when I saw your first post but just simply forgot. Tried it just now and it is indeed helpful. I made a route I have done before and noticed a good portion of unknown, then clicked on the AI button and it accurately determined it to be what I know it is. This will be very useful as I am planning to try and "gravel bike" some areas that I am uncertain of the terrain. It looks like you do indeed have all the features of other sites. Well done!
YESSS! that took months to program and implement, I plan on making it much more accurate too! It uses 2 Pytorch Resnet 50 Neural Network classifiers, one to see if there is a road in the picture (sometimes it's obscured by treecover) and one to see what the surface is. It's trained on around 200k pre-classified images spread throughout North America, however, I want to go through and make a separate classifier for every, single, state/country/province/territory. This'll make it much more accurate.

I also want to take the new algorthim, with all those specific classifiers, and run it for every road more than a mile long that's not residential or primary in the entire world, then reintroduce that data into the routing algorithm, so I'll have the BEST unpaved and paved routing profiles.
firebird854 is offline  
Likes For firebird854:
Old 07-26-23, 07:44 PM
  #11  
Troul 
Senior Member
 
Troul's Avatar
 
Join Date: Oct 2013
Location: Mich
Posts: 7,395

Bikes: RSO E-tire dropper fixie brifter

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 6 Post(s)
Liked 2,979 Times in 1,920 Posts
wonder if AI tools with the image classifiers could decipher if a "not thru street" or "dead end" of a street will still allow paved access to the adjacent paved areas? Usually cul-de-sacs/sub divisions have those signs, & it's a roll of the dice if it'll have a pathway to intersect to the next over street it butts up against or a fenced off/ditch divider.
__________________
-Oh Hey!
Troul is offline  
Old 07-26-23, 08:41 PM
  #12  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by Troul
wonder if AI tools with the image classifiers could decipher if a "not thru street" or "dead end" of a street will still allow paved access to the adjacent paved areas? Usually cul-de-sacs/sub divisions have those signs, & it's a roll of the dice if it'll have a pathway to intersect to the next over street it butts up against or a fenced off/ditch divider.
Hmm, I've never thought of this, I'd have to find a bunch of images of those situations and classify them myself as "passible" but it's possible! It wouldn't be easy to implement, but who knows... I like to try stuff.

(speaking of which... If someone signs up for an account, or uses "forgot password" they get an automated email, because I was bored one day, I hooked ChatGPT up to the email service and told it it is a disgruntled worker who's sole purpose is to respond sarcastically to anyone who replies to a do-not-reply emailbox, I'm definitly going to be on a list if AI takes over...)
firebird854 is offline  
Likes For firebird854:
Old 07-28-23, 01:40 PM
  #13  
zaje
Newbie
 
Join Date: Feb 2022
Location: Latvia
Posts: 57

Bikes: Ridley XBow

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 20 Post(s)
Liked 22 Times in 17 Posts
This one is great! I will definitely use this to get daily routes in Alps when I will get there in couple of weeks, the weather information is real icing the cake - you can always adjust your route to get best out of the tailwind Any thougts about mobile app? BTW, I cant get it working on Safari, Chrome is fine.
zaje is offline  
Old 07-29-23, 06:40 PM
  #14  
Ttom
Junior Member
 
Join Date: Apr 2022
Location: Mississippi
Posts: 84

Bikes: Kona Sutra SE

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 33 Post(s)
Liked 61 Times in 34 Posts
I got the app planned a ride and it did a very good job with road selections, sent it to my garmon without a hitch so yeah I think this one is a keeper.
There are some roads around here that turn into gravel but the map does not show it as gravel, none of the apps I have used so far show the gravel portions.
How can I get that corrected on the map?
It could be very inconvenient for a skinny tire road bike rider to discover they have to turn around or walk it 4 miles.
Ttom is offline  
Old 07-29-23, 07:15 PM
  #15  
jon c. 
Senior Member
 
Join Date: Mar 2012
Location: Tallahassee, FL
Posts: 4,811
Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 1591 Post(s)
Likes: 0
Liked 1,020 Times in 572 Posts
Originally Posted by firebird854
  1. AI Surface Type Classification: All sites that generate routes (e.g., Komoot, RideWithGPS, Strava, etc.) use the same dataset, Open Street Map, where individuals manually input surface types of roads. I use this too! However, particularly in America, there are many roads with unknown surfaces. To help with this, I trained an AI classifier to use real-time satellite imagery and, well, classify those roads! Check it out: https://i.imgur.com/ycs7pEe.mp
This part isn't working too well in my area. It seems to randomly designate portions of paved roads as unpaved. And not the tertiary roads on which confusion might be expected. It occurs on stretches of a mile or two on fairly major roads.
jon c. is offline  
Old 07-29-23, 08:02 PM
  #16  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by jon c.
This part isn't working too well in my area. It seems to randomly designate portions of paved roads as unpaved. And not the tertiary roads on which confusion might be expected. It occurs on stretches of a mile or two on fairly major roads.
I admit, I only had the budget to pull images across North America of roads to train my AI on (to be fair, we have the most amount of unclassified roads), I'm working on improving it however, if I train a different AI for each and every state/province/territory, and country, it'll perform far better. At that time, I plan on using it on every road longer than one mile for the entire world (I can make it work quite a bit faster too with mulithreading...) and use this data to help the unpaved and paved routing profiles.

Out of curiosity, as I can add additional images at any time for training, where were you attempting to route?
firebird854 is offline  
Old 07-29-23, 08:04 PM
  #17  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by zaje
This one is great! I will definitely use this to get daily routes in Alps when I will get there in couple of weeks, the weather information is real icing the cake - you can always adjust your route to get best out of the tailwind Any thougts about mobile app? BTW, I cant get it working on Safari, Chrome is fine.
Great note about safari, I just fixed a couple of issues which allowed it to function on Firefox, happy to get to Safari next, Also, we'd love to make a mobile app! It'll work a ton better on mobile than the web interface we've been trying to get to work.. I also want to add the ability to actually follow the route on mobile at that time.So, it's WIP, but probably our next big thing.

You using it at all is a great motivator! I hope it helps make some great routes!
firebird854 is offline  
Likes For firebird854:
Old 07-29-23, 08:07 PM
  #18  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by Ttom
I got the app planned a ride and it did a very good job with road selections, sent it to my garmon without a hitch so yeah I think this one is a keeper.
There are some roads around here that turn into gravel but the map does not show it as gravel, none of the apps I have used so far show the gravel portions.
How can I get that corrected on the map?
It could be very inconvenient for a skinny tire road bike rider to discover they have to turn around or walk it 4 miles.
So, I've been meaning to add an option that adds a quick right-click and update for the surface type. However, it does already kind of exist, by navigating to the Open Street Map site, individuals can add the corrected surface info. As I've ran into the exact same issue, I've developed and added a classification AI that can pull satellite images throughout the unknown portions of your route and attempt to add this information, as demonstrated here: https://i.imgur.com/ycs7pEe.mp4

Also, great to hear about the connection to Garmin! Myself, and my two roomates, all have Garmin devices, so this was pretty critical. It did take over a month to integrate though and came with a bunch of challenges, so I'm super glad to hear it went off without a hitch!
firebird854 is offline  
Old 07-29-23, 08:48 PM
  #19  
jon c. 
Senior Member
 
Join Date: Mar 2012
Location: Tallahassee, FL
Posts: 4,811
Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 1591 Post(s)
Likes: 0
Liked 1,020 Times in 572 Posts
Originally Posted by firebird854

Out of curiosity, as I can add additional images at any time for training, where were you attempting to route?
I've been playing with roads I ride around Capitola, FL. Eastern Leon Country and Western Jefferson county.

I'm now finding the results seem to change. I did get a few sections of a paved road (Gamble Rd. or FL 59) showing as unpaved, but when I went back and routed over it again it was all paved. Just checked it again coming from the other direction and there is now tiny sliver that says unpaved while the rest is paved.

It was this road that prompted me to comment. Mostly it is just showing paved roads as unknown. I don't think those are static either.

I just checked an actual dirt road and it did show that as unpaved.

Given that I know all these roads and I really just use resources like this to determine distance (I don't ride with any devices), the designations don't matter to me. I just thought you would be interested in the errors.
jon c. is offline  
Old 07-30-23, 05:52 AM
  #20  
rm -rf
don't try this at home.
 
rm -rf's Avatar
 
Join Date: Jan 2006
Location: N. KY
Posts: 5,940
Mentioned: 10 Post(s)
Tagged: 0 Thread(s)
Quoted: 974 Post(s)
Liked 512 Times in 352 Posts
Max grade on a climb:
One annoyance with rwgps or strava hills is that the grades often have wide point-to-point swings in grade percentage. Hovering over a tiny section of a climb: 5%, 11%, 3%, 14%, 8%, 9%, 5%... A running local average over a small distance, perhaps 100 feet, would help. (This would average out steep switchback grades, but that's a reasonable tradeoff for me.) Right now, I see the average grade for a selected portion of a route, then have to do a rough guess of the steepest portions.
rm -rf is offline  
Old 07-30-23, 06:02 AM
  #21  
CrowSeph
Senior Member
 
CrowSeph's Avatar
 
Join Date: Mar 2016
Location: South Italy
Posts: 1,015

Bikes: BMC SLR01; Cannondale Trail; Lot's of project and vintage bikes..

Mentioned: 10 Post(s)
Tagged: 0 Thread(s)
Quoted: 333 Post(s)
Liked 168 Times in 101 Posts
this is amazing!
CrowSeph is offline  
Old 07-30-23, 12:25 PM
  #22  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by rm -rf
Max grade on a climb:
One annoyance with rwgps or strava hills is that the grades often have wide point-to-point swings in grade percentage. Hovering over a tiny section of a climb: 5%, 11%, 3%, 14%, 8%, 9%, 5%... A running local average over a small distance, perhaps 100 feet, would help. (This would average out steep switchback grades, but that's a reasonable tradeoff for me.) Right now, I see the average grade for a selected portion of a route, then have to do a rough guess of the steepest portions.
This is quite doable, in fact, the next upgrade I'm working on are additional grade options displayed by the graph. I have a nice, working, approach that lets you select a portion of the graph and it will auto zoom in on that section of the course, I'm then also going to add grade and other statistics for that portion. I also want to make a grade appear when you hover your mouse over a portion of the graph, accounting for 100feet-ish before, and to, the cursor.

I also want to add more grade statistics, max grade, and percentage of route above a certain grade, I have all sorts of ideas. Hopefully, I'll have these implemented soon
firebird854 is offline  
Old 07-30-23, 12:26 PM
  #23  
firebird854
Senior Member
Thread Starter
 
Join Date: Oct 2017
Location: Wisconsin
Posts: 581

Bikes: 2016 Specialized Tarmac Expert

Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 258 Post(s)
Liked 114 Times in 62 Posts
Originally Posted by crowseph
this is amazing!
thanks!
firebird854 is offline  
Old 01-07-24, 03:16 PM
  #24  
TiHabanero
Senior Member
 
Join Date: Nov 2012
Posts: 4,464
Mentioned: 15 Post(s)
Tagged: 0 Thread(s)
Quoted: 1746 Post(s)
Liked 1,376 Times in 721 Posts
firebird854, I was working a route on my computer and the map is not identifying the rail-trail even though it routes the rider down the trail. I am not logged into the site, does that make a difference? The trail is the Frederick Meijer trail in Michigan.

Hold up there, the trail name just populated. Just a big lag time that's all.
TiHabanero is offline  
Old 01-10-24, 12:34 PM
  #25  
texugo
Newbie
 
Join Date: Nov 2023
Posts: 1
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 1 Post(s)
Likes: 0
Liked 0 Times in 0 Posts
This is a really awesome tool! For longer distances it gives way better routes than other tools I've tried

One thing I noticed in my town is that the the map isn't populating routes using lines tagged with 'path' or 'foot path' from OSM. For example, it doesn't populate the route I bike to work, and instead gives you a very steep and longer route despite the shorter and flatter route I bike being mapped in OSM. You can't force it onto those sections either.

Maybe you could add options as for what type of path/roadway the program will route you over such as including paths, or excluding highways?
texugo is offline  


Contact Us - Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service -

Copyright © 2024 MH Sub I, LLC dba Internet Brands. All rights reserved. Use of this site indicates your consent to the Terms of Use.