# Inverting Elastix transform

**URL:** <https://discourse.slicer.org/t/inverting-elastix-transform/8123>\
**Category:** Support\
**Tags:** registration, elastix\
**Created:** [August 20, 2019, 3:38am UTC](https://discourse.slicer.org/t/inverting-elastix-transform/8123 "2019-08-20T03:38:45Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [August 22, 2019, 7:05pm UTC](https://discourse.slicer.org/t/inverting-elastix-transform/8123/4 "2019-08-22T19:05:38Z")

</div>

> [@labixin](#):
>
> For example, I have contours in fixed volume and would like to get transformed one in moving volume. Then only when the “Transform Information” was “Transform to parent” did the transform be correct (If not I need to manually click “Invert” button in “Edit” section).

The registration module assumes that the _fixed image = parent_ and _moving image = child_ in the transform tree.

Therefore, if you have contours defined in the parent’s coordinate system and you need that in the child’s coordinate system then you need to invert the transform and apply it to the contour in the parent’s coordinate system.

Note that internally a transform can store “to parent” (and compute “from parent”) or store “from parent” (and compute “to parent”). Since computation of inverse can take magnitudes more time, usually image registration methods compute the “from parent”, because images require the “from parent” transform for resampling (points and meshes require “to parent” transform, as you don’t resample them but directly transform their point coordinates).

---

_[View the full topic](https://discourse.slicer.org/t/inverting-elastix-transform/8123)._
