Skip to content

Convention for Stack Image Sources

Andrew Champion edited this page Nov 19, 2015 · 4 revisions

NOTE

This is legacy documentation. For current documentation see tile source conventions on catmaid.org.

Tile Source Type 2

This document describes the ongoing, proof-of-concept to use arbitary TileServers other than the pre-specified tile server in CATMAID. A proof-of-concept implementation using Ilastik (with Volumina & LazyFlow) is in development here.

Authors: Bernhard Kausler, Stephan Gerhard

Retrieving Stack Metadata

Default URL: /metadata

JSON to retrieve from GET request

To be implemented as a Django-view that depending on the tile_source_type, fetches from the CATMAID database stack metadata, or from the TileServer

title the stack title

comment general comments about the stack, like provenance

dimension (x,y,z)

resolution (x,y,z)

tilesource_url default: /

labelupload_url default: /labelupload

file_extension default: png

tile_width default: 256

tile_height default: 256

min_zoom_level default: -1 (do we need this?)

Retrieving Tiles

Default URL: /

JSON convention of GET request

x x location in what volumina calls physical coordinates, i.e. the second axis axis of a (t,x,y,z,c) dataset

y y location in what volumina calls physical coordinates, i.e. the third axis axis of a (t,x,y,z,c) dataset

z z location in what volumina calls physical coordinates, i.e. the forth axis axis of a (t,x,y,z,c) dataset

width the tile width, should match the metadata tile_width

height the tile height, should match the metadata tile_height

scale a float scale factor, defined as 1/2**zoomlevel

row e.g. set to 'y' to mean that the row axis (from top-left to bottom-left) uses the third axis of the dataset

col e.g. set to 'x' to mean that the column axis (from top-left to top-right) uses the forth axis of the dataset

Uploading Labels

Default URL: /labelupload

The labeled pixels (RGBA) within a field-of-view need to be uploaded to the TileServer and integrated in the appropriate data store (e.g. HDF5 dataset for labels) or used for prediction. The definition of the field-of-view is similar to the definition of the tiles. It basically defines a shape and position that can be used to index into HDF5 datasets.

JSON convention for POST request

x x location in what volumina calls physical coordinates, i.e. the second axis axis of a (t,x,y,z,c) dataset

y y location in what volumina calls physical coordinates, i.e. the third axis axis of a (t,x,y,z,c) dataset

z z location in what volumina calls physical coordinates, i.e. the forth axis axis of a (t,x,y,z,c) dataset

row e.g. set to 'y' to mean that the row axis (from top-left to bottom-left) uses the third axis of the dataset

col e.g. set to 'x' to mean that the column axis (from top-left to top-right) uses the forth axis of the dataset

image the pixel data encoded as RGBA-based PNG

metadata metadata about particular labels as a list

    {
        "name": "eraser",
        "color": 'rgba(255,255,255,1.0)',
        "id": 0
    },
    {
        "name": "cell membrane",
        "color": 'rgb(255,0,0)',
        "id": 1
    },
    {
        "name": "cell interior",
        "color": 'rgb(0,255,0)',
        "id": 2
    },
    {
        "name": "mitochondria",
        "color": 'rgb(0,0,255)',
        "id": 3
    }