Jump to content

Automatically fix mesh tunnels/holes


Recommended Posts

Hi,

Sometimes in photogrammetry scanning, holes/tunnels appear on thin surfaces like on ears and cloth (please see image and model attached). Is it possible to detect them in Houdini automatically? Idea is to solve these issues on multiple scans running a few SOP's on a sequence of OBJ's.

Geomagic software can detect them as Small Tunnels and you can delete them there and cap the holes easily, so it is possible to define them mathematically although I can't find any tools in Houdini that can do the same.

Thank you!

mesh_tunnels_example.jpg

mesh_tunnels_example.OBJ

Link to comment
Share on other sites

There are greater chances of success by going one step back, eg. improving the meshing algorithm based on the underlying point cloud data.

Once you got hold of the point cloud, try (point replicate,) VDB from Particles, VDB reshape, VDB smooth and VDB convert to get a mesh thats closer to the real surface.

  • Like 1
Link to comment
Share on other sites

From my experience for this kind of shape, decrease the quality of one of the differents step, Alignement, meshing, or even reduce the photos size,
can result in better result, less noisy, and sometime less holes.
No warranty, just try. photogrametry is sometimes arbitrary, even esoteric.
The only guarantee of quality is the quality of the shots.
Improving this after, is not easy.

PS : Sorry, I didn't notice you weren't the guy who do the photgrametry process.

You can try meshMixer (free).
He's pretty good at plugging holes.

Edited by flcc
  • Like 1
Link to comment
Share on other sites

Hi Alexander,

image.png.dbb53fca060551a01ed0ea95fc82359d.png -> image.png.e0c1e6e4160ffbe5286b788aefae37a6.png

try this route:

  • convert to VDB with VDB from polygons
  • dilate with VDB reshape SDF
  • close with VDB reshape SDF
  • erode with VDB reshape SDF
  • convert to polygons with convert VDB

Make sure to play around with all parameters and radii to get as close as possible.

fill_scan.hipnc

  • Like 2
Link to comment
Share on other sites

On 10/13/2019 at 6:48 PM, konstantin magnus said:

You could try to fill the missing pieces with inverted space carving (left) or by re-projecting depth maps (bottom) or rather their tracing curves (right).

image.png.a12cedb1f08d30853d39c75bc7c8f8e1.png image.png.28370e7102c3af2e4433602e5de3a47d.png

image.thumb.png.3b4d715f0559f43995890d4996a4fb07.png

 

 

Looks very interesting but beyong my actual Houdini's confort zone, do you mind to share an example please?

 

Cheers

 

Vincent*

________________________________________________________________

Vincent Thomas   (VFX and Art since 1998)
Senior Env artist & Lighting & MattePainter & Creative Concepts

 http://fr.linkedin.com/in/vincentthomas

Link to comment
Share on other sites

On 13/10/2019 at 12:38 AM, AlexanderT said:

Thank you Konstantin. VDB destroys a lot of detail and I need to preserve all mesh details and UV's. Ideally I just need to detect them, delete and then fill those those holes. Do you know any other way?

Just an idea, based on what Konstantin provided : once you have a closed mesh, maybe try to subtract the closed one from the original one, and then you will be left with the holes (inverted). Use these meshes to « tag » the borders of holes in the original mesh.

From there, reproject the detailed mesh onto the smooth/closed version of Konstantin, but only for the points that are not tagged. See what I mean ? By difference you can get the area of the holes, and use that to mask the reprojection process. Therefore you will have details everywhere except on the closed areas, that will be smooth.

But I won’t have time to propose you a file for that, I can just give you the idea :-)

Link to comment
Share on other sites

On 16/10/2019 at 8:51 PM, StepbyStepVFX said:

Just an idea, based on what Konstantin provided : once you have a closed mesh, maybe try to subtract the closed one from the original one, and then you will be left with the holes (inverted). Use these meshes to « tag » the borders of holes in the original mesh.

From there, reproject the detailed mesh onto the smooth/closed version of Konstantin, but only for the points that are not tagged. See what I mean ? By difference you can get the area of the holes, and use that to mask the reprojection process. Therefore you will have details everywhere except on the closed areas, that will be smooth.

But I won’t have time to propose you a file for that, I can just give you the idea :-)

 

Edited by vinyvince
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...