I’ve been using various surface semilandmarking techniques (DeCAL, auto3dgm, Builder (part of ATLAS), PseudoLMGenerator) to landmark bird beak meshes from MarkMyBird. The only landmarking module I’m aware of that allows incorporation of symmetric landmarks across a 2D plane, for instance left/right sides, is PseudoLMGenerator. So I was wondering two things:
1.) Are there any other modules that allow for symmetric landmarks across planes?
2.) Is there a way to enforce symmetry of landmarks after the surface semilandmarking procedure has been applied to all specimens?
No, not that I know of. To enforce symmetry, you can first create a mirroring plane, and then reflect one side of the semiLMs to the other side. That’s what pseudoLMGenerator does. You can look at its code to understand it, but you have to implement this yourself.
For symmetric landmarking beyond PseudoLMGenerator, you might want to look at:
SlicerMorph’s GPA module has some symmetry enforcement options
ALPACA (if you’re working with template-based approaches)
For post-hoc symmetry enforcement after semilandmarking, you could apply a reflection transformation and average the landmarks with their mirrored counterparts, but that would need custom scripting.
The morphometrics community on the SlicerMorph forums might have more specific recommendations for your use case.
Actually, GPA module has no symmetry enforcement option. We do talked about it, but currently there is no immediate plan to implement it, as in doing that in geomorph and visualizing in Slicer offers a remedy.
While you can create a symmetrical template with PseudoLMGenerator, and definitely transfer that template to the samples with ALPACA, ALPACA itself does not have any constraints enforcing symmetry axis.
I do want to make those clear. As suggested those need to be done post-hoc with scripting.