Open ferrihydrite opened 7 years ago
Thanks! arXiv version is here.
This would not exactly be trivial to add to trackpy, but still may be worthwhile. It looks like the MATLAB implementation is not a true global minimizer, but instead uses the equivalent of search_range
to make a first cut. So matching this implementation in trackpy would involve writing a new subnet solver function (aka link_strategy
). The only architectural difference would be that this subnet solver would need access to all particle positions, in order to consider particles' nearest neighbors and compute the cost function. That's not so bad. The actual minimization (the hard part) could be done by the existing "core" subnet-solving algorithm, or by calling an existing Hungarian algorithm implementation as the authors do.
This algorithm looks like it might be a little slow compared to trackpy's prediction feature. However, it could supplant prediction for many users because it requires so little configuration.
Just came across this new paper: "Tracking particles with large displacements using energy minimization" by Boltyanskiy, et al. [2017] [DOI: 10.1039/c6sm02011a].
It seems like they calculate the strain in a very straightforward way (with Eqns. 5-8), and they even include their MATLAB code in the supplemental materials.
Could this sort of calculation be worked into trackpy? It seems as though it can be worked into the subnet calculations, or something of that nature.