• Dear visitors,

    The email issue has been finally solved.
    Thank you for your patience and happy browsing.

    Team ACM.

W.I.P. Vancouver City Circuit 95 Layout Lidar version

Johnr777

Moderator


So it looks like classification is there.

and then below with the CSP plugin for off ground and ground points.

All very helpful discussion guys. The road surface looks more like a rough ocean with no work on it so Ill keep fiddling with different ways to do it until Im happy with it. There isnt really a timeline.





When you say car data @Johnr777, is there somewhere to get that type of data for tracks?

When we talk spline etc will i get elevation change at least?
Yeah, the Lilski video tutorials show how it’s done in blender.

Car data for any particular track is extremely rare, usually some of us are lucky to have an in with a race team or 2.

Someone posted something in the Trois Rivières track about extracting data from onboard camera video. But he wasn’t very forthcoming with information.
 
  • Like
Reactions: JrC

JoeK

New Member
Extracting data from video is a tricky thing. You have to break the video down to individual frames, and then use the specialized software that builds a surface from the multiple frames. You have to give the software location of each frame (coordinates) so it can compute the parallax and the depth of field to common objects within the frame.
This video gives a good illustration how the process works:

Unfortunately I don't think a video has enough quality resolution to get decent results. Might be worth testing.

Edit: The coordinates must come from the cars' onboard GPS system and the video camera must be high rez & fast shutter for it to work, I'd speculate.
 
Last edited:

Johnr777

Moderator
Extracting data from video is a tricky thing. You have to break the video down to individual frames, and then use the specialized software that builds a surface from the multiple frames. You have to give the software location of each frame (coordinates) so it can compute the parallax and the depth of field to common objects within the frame.
This video gives a good illustration how the process works:

Unfortunately I don't think a video has enough quality resolution to get decent results. Might be worth testing.

Edit: The coordinates must come from the cars' onboard GPS system and the video camera must be high rez & fast shutter for it to work, I'd speculate.
The data im talking about is vertical camera movement, to capture bumps
 

JoeK

New Member
Ahhh... onboard LiDAR unit that interfaces with the GPS to create a coordinated elevation data.
Probably a narrow angle specialized version of a mobile scanner like this:

I've worked with this data before. One can pick up pavement cracks with it and how deep they are, as well as all the bumps and rutting of the asphalt.
 
If you had actual real world telemetry you could build bumps off suspension movement.

Chances that you can find Vancouver 95 telemetry out there somewhere not high probably.

I agree with john other than studying onboard footage or checking photos there is very little chance you will get actual bump data.
 

JrC

Active Member
yeah... back then we weren't even as computerized so its unlikely. Im fine with studying the onboard video to build it to the best spec possible...

Appreciate the discussion guys. This one is more about doing the best with what I can get so I will work up rather then down.
 

Mitch9

Member
Yeah you have enough in your plate already and you really need to get the basics down, no need to overcomplicate things right now.
 

JrC

Active Member
Im pretty sure we can get there... im nothing if not annoyingly relentless...

And i have a portion of the AC stuff already. That was the hope behind the conversion because this was always going to follow that for me at least. How long it takes is another story but i would like to build a realistic version based on what can be gathered even if not 100% perfect due to the obvios limitations.

It just means i have to watch a lot of race footage and build up some type of system to understand and document what im seeing.
 
Last edited:

JoeK

New Member
Since you (JrC) live in Vancouver/LM, you can walk the local streets the race was held on. They've since been re-surfaced, but the city had to grind the old pavement off (12 to 20yr re-paving cycle) and lay new asphalt to match the existing concrete curbs and manhole rims - so the course streets are pretty much on the same elevations. I remember the initial discussions on the concerns about the safety of the race course and a lot of concern stemmed about the traffic rutting in the road lanes and the crossfall across the intersections.

There was some concern the race cars might get air under the chassis from the intersection crowns and tires might wander in the rutting. I believe the city re-paved the course streets prior to the races, but let the asphalt weather for a few months to get rid of any residual oil from the paving so the asphalt wouldn't be greasy. The re-paving would include a road crown (for drainage purposes - to get the rain water off the surface) where the centerline (and paintline) of the road would be.

Another concern was that at regular speeds, the the road irregularities are not noticeable but at race speeds the road crowns, rutting and typical paving undulations will make the course very bumpy as the race car transitions across the width of the road from one edge to the other.

If you do a walk-through, you can have a look down near the pavement level and see the ridges and undulations that occur. Photos at sunset/sunrise help ID those spots with shadows but it can be tricky. Taking pix right after a rain storm can help ID the low spots. Same with driving it late at night or very early in the AM at speed and feeling how the car suspension reacts at certain points in the road. These notes can help in designing the same undulations into your AC road course. I admit, this is a difficult task to accomplish as there are so many variables to re-create and mimic.
 
  • Like
Reactions: JrC

JrC

Active Member
@JoeK

Used to live...

I escaped to rural Alberta ;)
 

JoeK

New Member
Oooops!!... :eek:
:)
 

RJL

New Member
Took a 10 month break away from the world of sims - logged back in to this WIP thread today and was very happy to see JrC's Vancouver project still alive and kicking! Just wanted to acknowledge your efforts, and to say again - happy to see.
 

Mr Whippy

Active Member
If you live near, you can walk the course with a camera on a pole, and get semi-decent results with photogrammetry.

Ie, a 360 VR on a 5m pole, using that Ricoh one (about £800), and then take a shot every 5-10m, and walk at each side of the course, so you have loads of overlap and catch data in the shadows of other objects nicely.

I've done this (not 360 vr) with a camera on a pole and captured great data... ample for any kind of non-pro sim user... one notch down from a mobile laser scanner or static scanners I'd say.
It'll be perfect for this level of project... if you can be bothered to go capture the data.

Oooor, fly a drone around. If you can get permission etc. Then you'd get a great reconstruction in no time.


But to be fair, turning LAZ/point clouds to meshes in CC isn't really a great way to go because you've got no real control over the statistical method of how it's creating the surface. Ie, is it interpolating, using explicit points, detecting curvatures, averaging vertical heights, or detecting outliers to ignore in the average calculation (ie, trees/foilage near road surface)


In any case though, the data you have now is still a trillion times better than anything 10 or 20 years ago... I'd argue that sometimes just making it a smooth mesh over what you've got now, then add random noise is probably good enough, excepting any specific details you can see in historical footage to add in manually as best you can.
 

Johnr777

Moderator
In any case though, the data you have now is still a trillion times better than anything 10 or 20 years ago... I'd argue that sometimes just making it a smooth mesh over what you've got now, then add random noise is probably good enough, excepting any specific details you can see in historical footage to add in manually as best you can.
Or laying splines with enough distance between the knots (10 meters or so) over the surface
 

JrC

Active Member
Thanks guys. Been trying different exports but because the data is so dense the mesh takes forever to load in Blender. Im going to segment off the road and try to get the base map jpg down to start.
 

Mitch9

Member
[QUOTE="Mr Whippy, post: 19830, member: 2005"But to be fair, turning LAZ/point clouds to meshes in CC isn't really a great way to go...[/QUOTE]

This is a tried and true method but I think you might be confusing how it´s done; you dont make a mesh out of the data and bring it in game; you build a mesh on top of the data from which you make your game meshes

[QUOTE="Mr Whippy, post: 19830, member: 2005"...because you've got no real control over the statistical method of how it's creating the surface. Ie, is it interpolating, using explicit points, detecting curvatures, averaging vertical heights, ...[/QUOTE]

It does delunay triangulation with the points; there´s also poisson and maybe a couple other options? but delunay is the more usefull one imo

[QUOTE="Mr Whippy, post: 19830, member: 2005"..., or detecting outliers to ignore in the average calculation (ie, trees/foilage near road surface)[/QUOTE]

The cleanup functions in CC are pretty usefull and thankfully most pointclouds these days have some classification, saves some time even if it´s automatic.


oh come on no manual multi quote? :ROFLMAO:
 

Mr Whippy

Active Member
Or laying splines with enough distance between the knots (10 meters or so) over the surface
Well yes and no.

Having built about 10 street tracks for pro-sim users (Formula E), I used splines as you say to create a smooth surface for the Z data, and then created a second top-down (XY) mesh for the streets to flow well, have the details needed, smooth flowing quads etc.

Then I had a 3rd mesh which had XY data that was efficiently shaped for adding the crown/camber data only, I'd then conform that to the Z data (made from splines) and would then sub-divide to give smooth Z data.
Using that mesh I could also add in known bumps/details that I wanted to get into the final mesh.

I also used that camber/crown mesh sub-divided again a few times, for the fine-grain surface for the tyre physics model.

That smooth Z data surface with big Z data, and then camber/crown Z data and bump details, was then used to drape the XY street final visual mesh down onto haha.

It sounds more complex than it is.



In my cases I used either drone footage to create a rough point cloud (Punta Del Este), or GPS logs from walking around several times (Putrajaya, Buenos Aires, Beijing), or Google Earth data (spline Z data essentially)

In all the end results were pretty good. Stuff generally all lined up.

It was all the buildings to model/texture that was the hardest part!
 

Mr Whippy

Active Member
[QUOTE="Mr Whippy, post: 19830, member: 2005"But to be fair, turning LAZ/point clouds to meshes in CC isn't really a great way to go...
This is a tried and true method but I think you might be confusing how it´s done; you dont make a mesh out of the data and bring it in game; you build a mesh on top of the data from which you make your game meshes

[QUOTE="Mr Whippy, post: 19830, member: 2005"...because you've got no real control over the statistical method of how it's creating the surface. Ie, is it interpolating, using explicit points, detecting curvatures, averaging vertical heights, ...[/QUOTE]

It does delunay triangulation with the points; there´s also poisson and maybe a couple other options? but delunay is the more usefull one imo

[QUOTE="Mr Whippy, post: 19830, member: 2005"..., or detecting outliers to ignore in the average calculation (ie, trees/foilage near road surface)[/QUOTE]

The cleanup functions in CC are pretty usefull and thankfully most pointclouds these days have some classification, saves some time even if it´s automatic.


oh come on no manual multi quote? :ROFLMAO:[/QUOTE]

Yes you make a mesh over the meshed points. But still the meshing of the points is what causes the issue.

As soon as you mesh, you've commited to that interpretation of the point clouds, unless you re-mesh later using some different settings.

Ideally you'd set your game mesh directly to the points, using either your eyes (WYSIWYG!), or some statistical approach.


Yes there are some good reconstruction systems, but as noted they are risky because random data points can influence the surface position.
I agree, IF your data has been classified, which in itself can be an automated process and so not great to rely upon, then you can strip out the unwanted stuff, so the meshing can be more reliable.

I was just playing with this for my Leeds Loops the other night. Stripped out all the buildings etc, just the road surfaces left... apparently.
Even doing my meshing inside my 3D app onto the point cloud using a piece of software (Clouds 2 Max), and draping my quad mesh of the streets onto the points, I wasn't getting the right result.

Because... of kerbs... because the classifier sees kerbs and roads as the same thing, and the edges aren't clear at the scan density I have... so for this data it's actually easier to go along at 2m intervals, culling out 2m at a time, and infer the road profile manually, and drag verts... slow, but ultimately you can figure out exactly what is going on.
Now, if you do a mesh from CC on that LAZ dataset, you get big smooth mesh over the kerbs because there just isn't enough data for CC to know there is a step there.


I'm just saying, watch out running straight to meshing, and then using that mesh as your absolute reference for the rest of your build. As soon as you mesh, you bias. And that bias is carried through everything.

Sticking to the raw data for as long as possible (if that's possible with your tools/workflow) is better.



Yeah the cleanup stuff is useful in CC... just many data-sets from aerial lidar are just so loose in detail that cleanup might actually strip out good data too.

It's all about scales really.

Aerial lidar is good, I believe the point accuracy is very good. Just the density is so low you risk picking the wrong points to set Z data by.
Which is why using the raw data might actually be better.

It's a shame Blender doesn't have any point cloud support yet. I can see CC and Blender being, err, blended, and being awesome for track making!

But iirc, Blender can import points and make a big field of tetra meshes... so if you have LAZ data, and classified data, and get just the road surface, you could import in manageable chunks that way and have exact points.



Again, not knocking the workflow. It can/does work. But sticking to the raw pointclouds is better if you can.

And also at this resolution (aerial), I'd say doing it all by eye is a better approach.

I had to do 18km of UK roads by eye, 1m at a time, to set the verge mesh. Not a fun task, but the Z data was often just a mush of grass, hedges, trees, walls, fences, etc, and even with a mobile laser scanner detail level, it had to be done by eye because no automated process was reliable at 'seeing' the actual surface... any automated attempts just resulted in my verge mesh looking crazy haha!
 

Mitch9

Member
"As soon as you mesh, you've commited to that interpretation of the point clouds, unless you re-mesh later using some different settings."

You definately dont have to commit to that version of the point cloud; this is where the smoothing options in blender (and meshlab, and sometimes CC) come in handy.

But I think we should note here, since you come from a background of doing professional work whereas were doing a hobby here; we have different standards for precission.

And for us I think getting the general shape-camber-crown out of a smoothed dataset should be enough. Like you say, aerial lidar (which is what we´ll most likely be using) is very loose and the shape we get out of a smoothed data will be well within the margin of error of the data itself.
Judging from other people´s work, I think this approach works just fine.

Of course there will be challenges - I´ve run into many situations with the track I´m building, similar to the road verge you mentioned , where manually placing the verts of my capture mesh is the only solution to get the basic shape of the track right.
But I think this very manual approach should be avoided as much as possible (for hobbyists), at least until you start to work on the bumps and other details.
 

Mr Whippy

Active Member
Yeah as you note, every project is unique. I approach each track with the data I have, and often try a bunch of stuff initially, see what works etc.

But I still really rate the manual approach.

I've used it for pro work and also loads of hobby projects. It might seem like a waste of time, but when you do something once and know it's 100% right in your mind, then you will never go back to it, or question it, or want to change it later.
There is a lot to be said for having a mesh or spline outline or something that you've created and know you're happy with for working off later.
 
Top