Tracking optimization and preset — napari_easytrack.analysis.tracking

Unified tracking module for both optimization and preset widgets.

Provides: - Proper config loading (base config + parameter modification) - Tracking execution matching optimization approach - Full napari output (tracks layer support) - Process-based execution for cancellability

napari_easytrack.analysis.tracking.run_tracking_core(segmentation, params, base_config_path=None)

Core tracking function using the optimization approach.

This loads base config and modifies it, matching what happens during optimization.

Parameters:
  • segmentation (ndarray) – 3D or 4D array (T,Y,X) or (T,Z,Y,X)

  • params (Dict[str, Any]) – Parameter dictionary

  • base_config_path (str | None) – Path to config file. If None, uses package default.

Returns:

Tuple of (tracked_seg, tracks, track_info, napari_data, napari_properties, napari_graph)

Return type:

Tuple[ndarray, list, Dict, ndarray, Dict, Any]

napari_easytrack.analysis.tracking.run_tracking_process(input_file, output_file, params, progress_queue, status_flag, base_config_path=None)

Run tracking in separate process with file-based I/O.

Parameters:
  • input_file (str) – Path to input segmentation .npy file

  • output_file (str) – Path to output tracked segmentation .npy file

  • params (Dict[str, Any]) – Parameter dictionary

  • progress_queue (Queue) – Queue for progress messages

  • status_flag (Value) – Shared Value for status (0=running, 1=success, - 1=failure)

  • base_config_path (str | None) – Path to config file. If None, uses package default.

Returns:

None

napari_easytrack.analysis.tracking.run_tracking_with_params(segmentation, params, voxel_scale=(1.0, 1.0, 1.0), base_config_path=None, return_napari=False)

Simple synchronous tracking for optimization widget.

Parameters:
  • segmentation (ndarray) – 3D or 4D array

  • params (Dict[str, Any]) – Parameter dictionary

  • voxel_scale (Tuple[float, float, float]) – Voxel scaling (currently unused but kept for compatibility)

  • base_config_path (str | None) – Path to config file. If None, uses package default.

  • return_napari (bool) – If True, returns napari tracks data as well

Returns:

(tracked_seg, tracks, track_info) If return_napari=True: (tracked_seg, tracks, track_info, napari_data, napari_properties, napari_graph)

Return type:

If return_napari=False

napari_easytrack.analysis.tracking.validate_params(params)

Validate parameters dictionary.

Parameters:

params (Dict)

Return type:

Tuple[bool, str]