TrackerState initial value is set wrong for n_init==1#319
Open
SajjadPSavoji wants to merge 1 commit into
Open
Conversation
need to change track state to confirmed if n_init == 1 in the constructor. I am conditioning based on hits and n_init.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bug
In the boundary case of n_init==1, the current implementation fails to replicate the idea behind DeepSort.
Write now the default value of
TrackStatefor a newTrackinstance is set to be equal toTentative. This value is then updated upon the first match in the tracking. However, if n_init==1 and we have an immediate occlusion, as the track was marked tentative will never get to a match state and consequently, the TrackState will never change toConfirmed.Fix
in the constructor of
Trackassign initial value toTrackStateaccording tohitsandn_init.Compatibility
Adding this line does not effect the regular behaviour of the source code except for the boundary case discussed (n_init==1).
In case that n_init > 1, the expression simplifies to the following. Keep in mind that hits==1 in constructor.
Or more simple as
With final value equaling to
which is the the current behaviour of the source code.