Conversation
with a utility to generate OME-Zarr units.
Structure similar to that of the XML writer. Also: Write log, GUI state and display settings in the extra / trackmate metadata parameter.
We reorder fields so that the Json is ordered in a logical way. We also need to add a 'nchannels' field. When we will deserialize, we will need to know inadvance how many channels has the input image.
To facilitate Json serialization.
Use the 'lineage' prop, and point it to a node prop.
The reason is that we want to instantiate a Settings object with a final ImagePlus, that we read elsewhere.
Since we are dealing with a Map< String, Object > Json that is re returned by the N5Reader, we have some issues with the Json tree. All numbers are deserialized as doubles, and we need to convert some of them back to integers, particularly for the detector and tracker settings. We do this by using the default settings maps as a template, using the default value types to properly case numbers.
while we work on serializing their actual names.
Getting close to working new file format. What is missing: - saving / reading spot names - saving / reading track names - saving / reading track features - saving / reading track visibility and I think that's it.
Otherwise everything is serialized as a float64 and the Json is not valid.
Another geff, called tracks.geff, lives in the first geff. It is made of nodes only, one node per track. And each node stores the track features.
Keep them as they are in TrackMate. I will have to see if there is a price to pay for this downstream.
It is stored in the TrackModel.
We did not serialize Z features for the 2D case, but we need to put them back when reading, because the feature model expects them to be there. These default values will be overwritten properly if the edge has a Z feature value.
The GEFF specs do not single them out, except in an example. We will fuel the edge weight via the corresponding deserialized feature.
The Blosc thingie was done with the help of Claude Sonnet.
We added it because we needed to know how many channels we had to properly deserialize a Settings object. But now we update an existing Settings object, possibly with an imp, so we don't need this field anymore.
It was actually never used!
with better messages when the comparison fails. With the help of Claude Sonnet
This tests for a model that has both SpotRoi and SpotBase. So a few spots don't have polygons in the model.
Draft
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.
GEFF is the file format for TrackMate v9
See GEFF.
Serialize a full TrackMate data to GEFF
Check that a TrackMate GEFF can be read from another software, meaningfully
Deserialize a GEFF from TrackMate
Ensure that we can read a GEFF generated from another software, putting the maximal amount of information back into TrackMate