Anatomical landmark augmentation
🚀 Feature Augmentation for anatomical landmarks (3D points in physical space).
Motivation Image registration models commonly use 3D landmarks during training to improve model performance. However, landmark augmentation is not currently supported by torchio.
Pitch This could be handled by an additional data type (e.g. Landmarks or Keypoints) that handles augmentation of points in physical space, instead of voxels in image space.
For invertible transformations this would be relatively straightforward to implement. The underlying SimpleITK transforms operate from output -> input space, we just need to apply the inverse transform (input -> output space) to landmarks.
Alternatives Landmarks can be converted to binary images, resampled, and converted back to physical coordinates. However, this introduces interpolation errors and is unnecessary if the applied transform is invertible and known.
Currently I'm rewriting a lot of the Affine transform code in my codebase to get access to the forward and backward transforms so I can apply augmentation to both images and landmarks.
Additional context
Landmark augmentation for image registration applied to both moving and fixed input images for a lung CT inhalation/exhalation model:
Hello I agree that would be a nice feature to add to torchio. As you mention, most of the work would be to properly define the additional data type
We would greatly appreciate if you are willing to propose a PR
Hi, It's not really up to date anymore. But I started doing a similar thing a while ago:
https://github.com/justusschock/medical-shape
@clarkbab if you want to open PRs, or maybe just port my repo over so that it can be maintained. That'd be great!