Radience field -> PLY file -> meshlabs -> sketchup?

I DM’ed you a WeTransfer link

I’ve been experimenting with this - Postshot’s pointcloud isn’t dense enough to make a decent mesh from. The PLY it exports contains all the splat data too, so I don’t think that it’s really intended for the thing you are wanting to do
The actual Gaussian splatting is amazing tho!

Meshroom gives much more control over this and will also do a conversion to mesh also.
The only downside is that you have to convert videos to images first for the software if you are using video.

My graphics card wasn’t up to scratch for PostShot so I have been using Luma AI. I’m very impressed with the Gaussian splat and it only took a couple of minuets from uploading one video to seeing a navigable model which was great.

From that I could export a PLY to Blender which looks pretty good though the mesh and textures are not as detailed as I hoped.

I’m just trying out some other parameters to increase the density further, but I think I’m using a rather large dataset :smiley:

If you’ve got any shots or videos of the ruin you have the drone footage, ping it over in a dm and I’lll have a try with that if you’d like.

The ply has the colors stored as vertex colors. The only way to get the object textured into SketchUp is to bake the vertex colors into a texture in Blender. Just did a test with Taz’s data and it worked.
Will post the steps involved tomorrow in case someone is interested.

1 Like

Here are the steps I did to get the Ply into SketchUp;

  1. import the ply into blender (I use 4.0)
  2. if you select the object and look in the right column in the Data-tab, you’ll see there’s no UV maps but there is information in the ColorAttributes. Notice its named Col
  3. click the + next to the UVmaps to add a UVmap.
  4. In the top menu bar, change to UVediting mode, click New to add an empty texture and make it 4096x4096. Disable the alpha. Give it a name like bakedUVs for instance
  5. in the right viewport, change to select face mode and select all (a)
    6 press U to get the UVmapping menu, choose Smart UVproject - you’ll see the uv map now gets a quite dense uv mapping coordinates
  6. go back to object mode and switch in the top menu to Shading - press New in the bottom viewport to make a new material
    8 drag from the Base color and add a ColorAttribute node. Choose the Col name in the empty box in this node
    9 Press shift-A to add a texture - ImageTexture node. In the drop-down, choose the name you entered in step 4
  7. In the right side menu, change to the Render tab, change the RenderEngine to Cycles
  8. more below in the Render menu, now there’s an option to Bake. Change the bake type to Diffuse, In the Contributions, disable Direct & Indirect. Press Bake - it will take some time. It will bake into the empty texture object with the UVs we created in steps 4 & 6.
    12 after the bake is complete, in the material, drag from the BakesUVs image color output to the BaseColor of the PrincipledBSDF to disable the vertex colors and use the newly baked texture instead. Your material will now look like in the picture below.
    13 select the object and export to DAE, I use selectionOnly
    14 import the dae into Sketchup - it might take while and you have to click somewhere in the viewport to set the import origin
    15 you now have an object of 1.2M faces in one object in sketchup. Using soften edges / Smooth co-planar you can visually clean up the object. To get some performance in SketchUp, its better to break this object into smaller chunks (in Blender).

The texture in SketchUp using 4k in Blender is about the same as in Blender. The texture quality is only good for aerial views. Maybe if you make an ever more dense mesh you can get better texture rez. And using Blender you could bake the highrez texture to a lowrez mesh.

2 Likes

Have you had any further luck with exporting meshes with good quality textures?

Yeah, I’ve got some silly high polygon ones now that are fully textured.
image

I can’t say it is a pleasure to work with an 8million polygon file :smiley:

There definitely some things that can be done to simplify that, but I got the textures in that was the main concern.

I’m crunching some number on another one now, as I’m interested in just how high density I can get a point cloud, which requires more points to be found initially.
I’m also curious to see what normal maps I can get out of meshroom too and how I can use those.
But I think I’ve upped parameters too high and I’m still part way through after maybe 12 hours of solid computation. Whoops.

1 Like

:open_mouth: Did you get this from a converted video file?

I got it from a dataset of photos taken from a drone, it was made from about 101 photos.
I think the principle is the same for a video - you just have to split the video into into the frames that make it up and probably reduce the number of images (as there are 30+ per second).

Just reading up on this - you can do it inside of meshroom apparently.
I’m learning as I go here, I’d never really put too time into figuring this out before.

1 Like

great work. Keep us updated on what you find.

Still playing around - I should probably do it with something smaller.

I’ve managed to get it so I get 2 levels of pointcloud - the denser of the 2 has color errors, so I need to figure that out. But I did get a colorised ply out that Scan Essentials would open.
Dense Version:

2 Likes

Are you using any extensions to reduce the polygon count? Skimp?

Not yet, although I probably wouldn’t do it inside of SketchUp itself, that tends to be painful.

I tried a few bits inside of blender and using transmutr also (which I prefer over importing inside of SU)
I guess the issue is that the accuracy gets reduced if you do that , so if you are going to try and model from it, then you are throwing away further information.

I’ve properly gone down a photogrammetry hole and I don’t know when I’m getting out.

1 Like

True. I suppose it depends on what your final outcome is.

My current version of this set has 7 million faces now - transmutr will drop it down to 1.5m easily, but it kinda falls apart


I think this may be related to the fact that the photogrammetry process created multiple unorganised textures and maybe this is used in some way - the cracks in the geometry may be between those texture

One thing I’m going to try next is to take that mesh that contains all of the textures and then use all of that information to generate a really dense point cloud that also uniformly samples the textures - so I’m got something that falls between the original pointcloud and the mesh (which is basically unworkable at such levels of detail)

I guess you’re right. These kind of textures always give a sort of mosaic feel.
What you could try is;

  1. import the mesh into Blender
  2. create a copy of the object, decimate that object to 25% or so
  3. unwrap uvs for the object
  4. bake the material of the high quality mesh to the low quality mesh

Like this the ‘gaps’ will be filled with a projected texture of the original high quality mesh

1 Like

The gaps in the shot are gaps in the geometry rather than the textures .
If I decimated in blender with textures it was all ok, so I think it’s something down to how transmutr was doing it.

Reality Capture is the best photogrammetry software out there, I use it specifically for processing drone data into models. It’s free until you decide your model is at the quality level you want, then costs money to export, so @TazSavage should be able to use it and just buy credits for exporting. Generally my models cost about $1-3/each in terms of the credits.

I export the Reality Capture models as both a mesh and a point cloud, and import the point cloud into SketchUp (I have the Studio license), and model off of that. Then I export it as a PLY and bring it and the Reality Capture mesh export into Meshlab or Blender, and rebake the texture(s) form the RC export onto the SketchUp export.

3 Likes

Thanks for the info. Reality captures pricing model is changing towards the end of the month and will soon be a subscription platform for businesses making over 1million a year then it will be £1,250 a year. A bit much for me when it might only be a couple of times a year I use it.