Scale invariant descriptor based registration for 2D and 3D images

Scale invariant descriptor based registration of 2D images

registration2d-example-before
registration2d-example-after

This script registers two 2D images by first calculating scale invariant descriptors. Although the macro is written to compensate only translations, the script can be modified to support more complex transformations thanks to IPSDK functions. The supported transformations are: rigid, similarity and homography.

The proposed script can be imported into IPSDK Explorer in the form of a macro. The new command will then be directly available in the Macro group.

Scale invariant descriptor based registration of plans in a 3D image

registration3D-example-before
registration3D-example-after

This script registers consecutive plans of the provided 3D image in the same way than the approach described in the previous section.

The aim of this macro is to compensate a bias caused by the perspective, related to the acquisition angle of the image planes, by using scale invariant descriptors to avoid loss of information. The exstimated transform is a simpkle translation but the macro can easily be customized to correct a more complex deformation thanks to IPSDK functionnalities.

The “before/after” figure illustrates the correction alog the 2 axis (vertical direction in the figure).

To illustrate the angle parameter impact, we applied corrections for angles of 0° (left) and 22° (right). The loss of information for a correction of 0° is clearly visible in the figure below.

registration3d-example-after-0 registration3d-example-after-22

The proposed script can be imported into IPSDK Explorer in the form of a macro. The new command will then be directly available in the Macro group.