Re: TrackMate: LAP Tracker not enough memory
Posted by
Jean-Yves Tinevez on
URL: http://imagej.273.s1.nabble.com/TrackMate-LAP-Tracker-not-enough-memory-tp5006980p5006990.html
Hi Karen,
I am sorry you met this problem. TrackMate is clearly not optimized for an efficient memory management, and chose to sacrifice memory over speed. It looks like this choice does not work for you.
In your specific case, it looks like the problem is caused by the LAP tracker. In the current TrackMate implementation, solving the LAP requires generating a gigantic 2D matrix that computes the cost to link each spot to all other spots of the model. This happens if you chose to enable merging and splitting events (you have to be open to the possibility that a spot links to anywhere in other tracks). As soon as you have a lot of spots in your model (about 1 million), this becomes prohibitive in memory, and this caused most likely the error you saw.
Here is what I suggest:
- If you don't need to detect merging and splitting event, just stick to the simple LAP tracker, that forbids these events, and therefore allow for a lower memory requirements.
- If your tracking problem is easy, stick to the Nearest Neighbor tracker, the dumbest tracker ever.
On a developer side-note, this poor memory management is caused by our LAP implementation *not* taking advantages of sparse matrices (matrices where only a few elements are significant, this is the case for us since most spot-to-spot links are irrelevant). We need a solver that can deal with these matrices. An issue is open in the TrackMate forge (
https://github.com/fiji/TrackMate/issues/14), but we have no concrete plans to do it on short term, and it won't be there in the forthcoming v2.2.0.
The original implementation of the LAP framework by Khulud Jaqaman offers this nice feature
http://www.utsouthwestern.edu/labs/jaqaman/software/ (the TrackMate LAP is a stripped-down, oversimplified version of this).
best
jy
--
ImageJ mailing list:
http://imagej.nih.gov/ij/list.html