Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias.
More...
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::registration::StackRegistrationResult | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::attr::WarpMotionTransform2dCollPtr | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::registration::StackRegistrationResult | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::ipReal32 theta, const ipsdk::ipReal64 maxTranslation) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::attr::WarpMotionTransform2dCollPtr | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::ipReal32 theta, const ipsdk::ipReal64 maxTranslation, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::image::ImagePtr | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::imaproc::attr::WarpMotionTransform2dCollConstPtr &pTransformColl) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API void | ipsdk::imaproc::registration::stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::imaproc::attr::WarpMotionTransform2dCollConstPtr &pTransformColl, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::registration::PlanIndexedStackRegistrationResult | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::attr::PlanIndexedWarpMotionTransform2dCollPtr | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::registration::PlanIndexedStackRegistrationResult | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::ipReal32 theta, const ipsdk::ipReal64 maxTranslation) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::imaproc::attr::PlanIndexedWarpMotionTransform2dCollPtr | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::ipReal32 theta, const ipsdk::ipReal64 maxTranslation, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API ipsdk::image::ImagePtr | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::imaproc::attr::PlanIndexedWarpMotionTransform2dCollConstPtr &pPITransformColl) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
| IPSDKIPLREGISTRATION_API void | ipsdk::imaproc::registration::multiSlice_stackRegistrationImg (const image::ImageConstPtr &pInImg3d, const ipsdk::imaproc::attr::PlanIndexedWarpMotionTransform2dCollConstPtr &pPITransformColl, const ipsdk::image::ImagePtr &pOutImg) |
| | wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias More...
|
| |
Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias.
In some applications, the aquisition of a 3D stack is subject to the device vibrations, which yields to unaligned information along the 3D dataset. This algorithm registers all slices of a 3D stack to correct such a spatial variation considered as a simple translation. It performs the registration by using Extract grey signed features 2d and Registration of grey signed features 2d. The outputs are the registered 3D stack and the estimated transforms applied to each slices. Please, note that the resulting transforms have a decimal precision but the actually applied transform parameters are truncated.
If a transform collection has already been estimated, it is possible to provide it to directly perform the registration without estimating the transform parameters.
The principle is illustrated in the figure below:
A cumulative offset may appear along the stack, as showed in the figure below. The input parameter theta can be used to compensate this shift.
Attributes description
Attribute description for algorithm :
| Name | ToolTip | Default Initializer |
| ipsdk::imaproc::attr::InImg3d | [Input] 3d image for operation | X |
| ipsdk::imaproc::attr::InOptTheta | [Input Optional] 2d orientation for processing operation | X |
| ipsdk::imaproc::attr::InOptMaxTranslation | [Input Optional] Maximum translation allowed in a geometric transform (in absolute value) | X |
| ipsdk::imaproc::attr::InOptInterpolationPolicy | [Input Optional] interpolation policy used to extract local data from image | X |
| ipsdk::imaproc::attr::InOptCorrelationThreshold2d | [Input Optional] threshold on 2d correlation scores used during pairs matching | X |
| ipsdk::imaproc::attr::InOptRegistrationEstimationConfig | [Input Optional] configuration for robust estimation part of features registration | X |
| ipsdk::imaproc::attr::InOptPIWarpMotionTransform2dColl | [Input Optional] plan indexed collection of 2d geometric transform | X |
| ipsdk::imaproc::attr::OutPIWarpMotionTransform2dColl | [Output] plan indexed collection of 2d geometric transform | ipsdk::imaproc::fromImageButVolume (_pOutPIWarpMotionTransform2dColl, _pInImg3d) |
| ipsdk::imaproc::attr::OutWk1RealImg | [Output] Temporary working image for algorithm | duplicateInOut (_pOutWk1RealImg, _pInImg3d, ipsdk::image::eImageBufferType::eIBT_Real32) |
| ipsdk::imaproc::attr::OutWk2RealImg | [Output] Temporary working image for algorithm | duplicateInOut (_pOutWk2RealImg, _pInImg3d, ipsdk::image::eImageBufferType::eIBT_Real32) |
| ipsdk::imaproc::attr::OutWk3RealImg | [Output] Temporary working image for algorithm | duplicateInOut (_pOutWk3RealImg, _pInImg3d, ipsdk::image::eImageBufferType::eIBT_Real32) |
| ipsdk::imaproc::attr::OutWk4RealImg | [Output] Temporary working image for algorithm | duplicateInOut (_pOutWk4RealImg, _pInImg3d, ipsdk::image::eImageBufferType::eIBT_Real32) |
| ipsdk::imaproc::attr::OutImg | [Output] image for processing operation | ipsdk::imaproc::duplicateInOut (_pOutImg, _pInImg3d) |
Global Rule description
Global rule description for algorithm :
ipsdk::imaproc::matchSize (_pInImg3d,_pOutImg)
Example of Python code :
Example imports
import PyIPSDK
import PyIPSDK.IPSDKIPLRegistration as registration
Code Example
inImg = PyIPSDK.loadTiffImageFile(inputImgPath)
outImg, transforms = registration.stackRegistrationImg(inImg, theta, maxTranslation)
Example of C++ code :
Example informations
Associated library
IPSDKIPLRegistration
Header file
Code Example
- See also
- StackRegistrationImgLvl1
-
StackRegistrationImgLvl2
◆ stackRegistrationImg() [1/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [1/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-
◆ stackRegistrationImg() [2/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ stackRegistrationImg() [3/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ stackRegistrationImg() [4/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ stackRegistrationImg() [5/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ stackRegistrationImg() [6/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [2/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [3/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [4/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [5/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-
◆ multiSlice_stackRegistrationImg() [6/6]
wrapper function for Registration of the slices in a 3D stack using grey signed features and taking into account a cumulative angular bias
- Note
- This wrapper can be used with multi slice input images to retrieve by slice results
- Exceptions
-