cosbidev / PyTrack

a Map-Matching-based Python Toolbox for Vehicle Trajectory Reconstruction
https://pytrack-lib.readthedocs.io/en/latest/#
BSD 3-Clause Clear License
66 stars 10 forks source link

Predecessor patch #15

Open alexC-nonsense4k opened 9 months ago

alexC-nonsense4k commented 9 months ago

The coupling issue arises in the viterbi_search function due to its reliance on the get_predecessor function. One concern with this coupling is within the get_predecessor function, where a key is retrieved from a dictionary using the get operation. The key might not always exist in the dictionary, but I've implemented a check in get_predecessor to ensure the program won't crash if attempting to get a non-existent key. In such cases, get_predecessor will return an empty dictionary.

I've also added comments in the viterbi_search function to emphasize that get_predecessor should be used separately. Additionally, it's crucial to verify whether the returned predecessor is empty after calling get_predecessor.