Reference Shape

69 views
Skip to first unread message

jodr...@gmail.com

unread,
Feb 15, 2022, 8:19:29 AM2/15/22
to scalismo
Good Day

Is there a specific method to determine the reference shape in a group of meshes that is not yet in correspondence?

Kind Regards 
Jodri

Dennis Madsen

unread,
Feb 16, 2022, 7:39:47 AM2/16/22
to scalismo
Hi Jodri, 

Ideally, it would be a shape close to the average shape. But this can of course be difficult to exactly determine since the shapes are still not in correspondence. 
I usually choose one by visualizing a larger set of shapes. 
Then for better and faster registrations, I also tend to do some manual cleanup of the shape:
- Remesh the mesh to have the desired distribution of points. This can be done in e.g. meshlab. Scalismo also has a very simple way to decimate meshes with:
val mesh: TriangleMesh[_3D] = ???
mesh.operations.decimate(NUM_OF_VETICES)

If your original mesh has millions of vertices, but you might only need a few thousand, this will dramatically speed up the computation of GPMMs and later on registration with the model.

- Depending on the shape, I often also do some smoothing - either automatic in meshlab or manually in meshmixer. This is mainly to remove small biases from the reference shape. Spending just a little extra time on designing the reference shape will usually also help you in the registration process. 

I would also love to hear if anyone else has a better workflow for choosing the reference shape. 

Best
Dennis

Behzad Vafaeian

unread,
Feb 16, 2022, 10:44:43 AM2/16/22
to Dennis Madsen, scalismo
Hi,
What if we chose a random one, establish a correspondence, and then calculate the mean shape and set this mean shape as the reference one. Then, iterate over this procedure until seeing no significant change in the reference (or the mean) shape?
The general question is to establish a group-wise correspondence. Any thoughts based on the tools that Scalismo provides?

Best,


--
You received this message because you are subscribed to the Google Groups "scalismo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scalismo+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/scalismo/b2c4e5e2-ff8d-409c-8066-afb4a2fe977en%40googlegroups.com.

Dennis Madsen

unread,
Feb 17, 2022, 2:59:48 AM2/17/22
to scalismo
Hi, 

Indeed it is a good idea to iterate the registrations with a new reference. Thanks for suggesting Behzad. But I would still do the remeshing/decimation prior to the first registration - the smoothing might not be needed to the same extent though. 
Scalismo and the learning content around it are focused on pair-wise registration. I think that the overhead computation involved with group-wise registration might not be worth it - and might even not be practically possible if the dataset is large - and given the non-linear high dimensional optimization problem that one ends up with. 
But I haven't done any such experiment myself I must admit. 

Best,
Dennis

Behzad Vafaeian

unread,
Feb 17, 2022, 5:18:44 AM2/17/22
to Dennis Madsen, scalismo
Dennis,  I totally agree with you. We can have a multi-scale view on the meshes in a data set and start with coarser copies of the meshes retaining geometric details we want.

Best,


Reply all
Reply to author
Forward
0 new messages