| Customize Help

Steps to performing a correlation-stitching registration

The following steps provide a basic methodology for using the Registration module to perform a correlation-stitching registration operation.

  1. Allocate a registration context, using MregAlloc() with M_STITCHING.

  2. Allocate a registration result buffer to hold the results of the registration operation, using MregAllocResult() with M_STITCHING_RESULT.

  3. Verify that the number of registration elements is sufficient for your application (by default, it is 256); you can inquire the number using MregInquire() with M_NUMBER_OF_REGISTRATION_ELEMENTS. A registration element contains the information required to register an image; therefore, the context must contain at least the same number of registration elements as images that need to be registered. To change the number of registration elements, use MregControl() with M_NUMBER_OF_REGISTRATION_ELEMENTS.

  4. Optionally, specify the rough location of the images, using MregSetLocation() with each of the images' registration element.

  5. Specify the global registration settings, using MregControl().

  6. Specify the registration settings for the individual registration elements, using MregControl().

  7. Perform the registration, using MregCalculate().

  8. Retrieve the required results from the result buffer, using MregGetResult().

  9. If necessary, save your registration context or your result buffer, using MregSave() or MregStream().

  10. If necessary, use the registration results to perform mosaicing, using MregTransformImage().

  11. If necessary, use the correlation-stitching registration results to convert positions between two of the following coordinate systems: the global pixel coordinate system, any registered image's pixel coordinate system, or a mosaic's coordinate system. This is done using MregTransformCoordinate() or MregTransformCoordinateList().

  12. Free all your allocated objects, using MregFree().

Using the correlation-stitching registration results, you can create a mosaic. For more information, refer to the Mosaicing and super-resolution section later in this chapter.