Module iaf.reg
Registration functions.
Functions
def apply_rigid_transform(A: numpy.ndarray, R: numpy.ndarray, t: numpy.ndarray)
-
Applies rotation and translation to coordinates A.
Parameters
A
:np.ndarray
- Array of 2D or 3D source coordinates with shape [2xN] or [3xN]
R
:np.ndarray
- Rotation matrix (2x2 or 3x3).
t
:np.ndarray
- Translation vector (2x1 or 3x1)
Returns
A_t
:np.ndarray
- Array of 2D or 3D coordinates (shape [2xN] or [3xN]) transformed by rotation matrix R and translation vector t.
def find_rigid_transform(A: numpy.ndarray, B: numpy.ndarray, force_reflection: bool = False)
-
Calculate rigid transformation to map coordinates A onto coordinates B.
Parameters
A
:np.ndarray
- Array of 2D or 3D source coordinates with shape [2xN] or [3xN]
B
:np.ndarray
- Array of 2D or 3D target coordinates A with shape [2xN] or [3xN]
force_reflection
:bool
- Whether to force reflection if one is suspected: it can give false positives (optional, default False).
Returns
R
:np.ndarray
- Rotation matrix (either 2x2 or 3x3) to transform the A coordinates into B.
t
:np.ndarray
- Translation vector (either 2x1 or 3x1) to transform the A coordinates into B.
def multi_image_alignment(images: list[numpy.ndarray], return_composites: bool = False) ‑> Union[tuple[list[numpy.ndarray], numpy.ndarray, numpy.ndarray], list[numpy.ndarray]]
-
Registers (aligns) a series of images (translation only).
Parameters
images
:list[np.ndarray]
- List of 2D images to register. The first one will be used as template against which all others will be registered.
return_composites
:bool = False
- If True, returns two composites of the channels before and after alignment for quality control.
Returns
images
:list[np.ndarray]
- List of registered images.
rgb_before
:np.ndarray
- Composite of the channels before alignment.
rgb_after
:np.ndarray
- Composite of the channels after alignment.