Skip to content

Commit

Permalink
updated overlap tracking field names
Browse files Browse the repository at this point in the history
  • Loading branch information
yfukai committed Jan 4, 2025
1 parent 8e325cb commit 7f4af92
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions src/laptrack/_overlap_tracking.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
# from functools import cache
import warnings
from functools import partial
from typing import Any
from typing import List
from typing import Tuple
from typing import Union

from pydantic import Field
from pydantic import model_validator

from ._tracking import LapTrack
from ._typing_utils import IntArray
Expand All @@ -14,6 +17,13 @@
float, float, float, float, float
] # offset, overlap, iou, ratio_1, ratio_2

_ALIAS_FIELDS = {
"track_dist_metric_coefs": "metric_coefs",
"gap_closing_dist_metric_coefs": "gap_closing_metric_coefs",
"splitting_dist_metric_coefs": "splitting_metric_coefs",
"merging_dist_metric_coefs": "merging_metric_coefs",
}


class OverLapTrack(LapTrack):
"""Tracking by label overlaps."""
Expand Down Expand Up @@ -41,6 +51,19 @@ class OverLapTrack(LapTrack):
+ "See `metric_coefs` for details.",
)

@model_validator(mode="before")
@classmethod
def _check_deprecated_names(cls, data: Any) -> Any:
if isinstance(data, dict):
for old_name, new_name in _ALIAS_FIELDS.items():
if old_name in data:
warnings.warn(
f"Use of `{old_name}` is deprecated, use `{new_name}` instead.",
DeprecationWarning,
)
data[new_name] = data.pop(old_name)
return data

def predict_overlap_dataframe(self, labels: Union[IntArray, List[IntArray]]):
"""Predicts tracks with label overlaps.
Expand Down

0 comments on commit 7f4af92

Please sign in to comment.