cheind / py-motmetrics

:bar_chart: Benchmark multiple object trackers (MOT) in Python
MIT License
1.38k stars 258 forks source link

Why track id should be integer? #133

Closed saurabheights-ecr closed 3 years ago

saurabheights-ecr commented 3 years ago

Dear, I understand that pymotmetrics code doesnt accept some hash key or string for object track id. The code fails due to some numpy conversion. To resolve this issue, I created a unique mapping from track id to integer values and pass these integer id.

But is there a logical reason behind it, or was it just a design decision?

Thank you.

cheind commented 3 years ago

Hey,

I believe it was a natural decision looking at how various challenges annotate their data. I.e. if you were presented a random image and asked to annotate all persons, you would find it quite naturally to choose an arithmetic sequence. Of course, you could say this one if 'Bill', that's 'Jane', etc. but usually for a random image you would not have this knowledge. A mapping from int back to names is always possible as you mentioned, so nothing is lost by assuming integer track ids.

saurabheights-ecr commented 3 years ago

I just wanted to make sure that I wasn't making any logical mistake in my understanding of metrics or the pymot lib, since this was my first time working with MOT. Thanks for clarifying my doubt. :+1:

Closing it.