twocan.MatrixConvergenceCallback
- class twocan.MatrixConvergenceCallback(window_size: int = 10, tolerance: float = 0.01, min_trials: int = 20)[source]
Bases:
objectCallback to monitor transformation matrix convergence during optimization.
This callback tracks the transformation matrices from recent trials and stops optimization when they converge (have low variance), indicating that the registration has stabilized. Useful for detecting when further optimization is unlikely to improve results.
- Parameters:
window_size (int, default=10) – Number of recent trials to consider for convergence assessment.
tolerance (float, default=0.01) – Maximum allowed variance in matrix elements for convergence. Lower values require tighter convergence.
min_trials (int, default=20) – Minimum number of trials before convergence checking begins.
- matrices
List storing recent transformation matrices.
- Type:
List[np.ndarray]