You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
User has segmentations that are represented using polygon shapes within a SpatialData object. User wants to visualize these segmentations using Vitessce without converting them to a different data format/representation.
Preferred solution
Implement a new FileType and data loader class that returns the polygon shapes as the obsSegmentations data type with obsSegmentationsType === 'polygon'
A note on this. For the disk representation of shapes we plan to transition from using the GeoPandas ragged-array representation (Zarr) to the GeoParquet representation, also supported natively by GeoPandas. This change would be beneficial for interoperability because the GeoParquet is widely supported.
Practically, from the Python side it will amount to use to_parquet() and read_parquet() from geopandas, but we haven't done it yet because we need to do in a backward compatible way and also providing a data migration CLI (the data migration will be lightweight because the heavy data are images, labels and tables; all of which have a stable data format that will not change).
I think therefore that for this hackathon we could already try the GeoParquet representation if it makes the implementation easier, and then add the support for the current version.
User story
User has segmentations that are represented using polygon shapes within a SpatialData object. User wants to visualize these segmentations using Vitessce without converting them to a different data format/representation.
Preferred solution
Implement a new FileType and data loader class that returns the polygon shapes as the
obsSegmentations
data type withobsSegmentationsType === 'polygon'
vitessce/packages/types/src/data-types.ts
Line 59 in 40fe260
This will require knowledge of how the SpatialData stores Shape elements on-disk. Some relevant resources that may help are:
Relevant places in the code:
Possible alternatives
The text was updated successfully, but these errors were encountered: