MorphoNet Dataset and Information formats

Format Specification

 Morphological datasets must be uploaded to MorphoNet under the form of surface meshes. More specifically, we employ the most common format to represent meshes, i.e., the obj format.

 Each .obj file contains a list of elementary objects present at a given time point, of its vertices and of its faces.

 In order to fully exploit the interdisciplinary networking structure of our morphological browser, we created a generic format for morphological information specification.

  To this end, we profit from the object-based structure of morphological datasets by introducing morphodynamic information categories which can be projected on elementary blocks. Each of these objects can be uniquely identified by an object tuple (OTP) given by his context. For example, when both temporal information and several visualisation channels are present in a dataset, at any given time point and for any given visualisation channel one is left with a collection of objects. Therefore, OTPs in such datasets correspond to three integer numbers separated by commas: t, id, ch, specifying the time point (t), the visualisation channel (ch) and the id of the specific object given in the obj file (id).

  On the other hand, if only one time point and one channel is provided in the dataset, OTPs can be simplified to just the simple id specified in obj files.

Mesh format:

  Meshes must be given in .obj format. Each .obj can contain several elementary objects, specified by their vertices and of their faces. For optimal interaction with MorphoNet, please limit the total size of meshes for each dataset to 500 MB. Also, please limit the total number of elementary objects to 1 million and the total number of .obj files in each dataset to 1 thousand.

 Each elementary object is identified by the time index at which it exists and its specific id at each given time (for instance g 4 cell_7, meaning object 7 at time 4), followed by the list of coordinates of its vertices and the list of faces composed of three vertices (each vertex being numbered starting from 1, with a global numbering running over all vertices of all objects at any given time point).

  This leaves dataset owners the freedom to choose the level of detail of their morphological unit, which will then be interpreted by MorphoNet as the elementary object with which users can interact.

  Each elementary brick should be reference in the obj file by a “g” (standard in the obj format) followed by its OTP.

  In the example provided in figure, the object with id 6 at time 4 is composed of 4 vertices and 2 faces, while object with id 7 at time 4 is composed of 5 vertices and 3 faces.

Information types and format

 Thanks to flexible OTPs, users can upload information to be visualised on the dataset. The general structure of information is a property associated to a specific object. The unique MorphoNet information format consists of a list of entries of the form OTP : property.

  OTP examples:

 - dataset without temporal information and having one visualisation channel only: id, id being the object identity in the corresponding .obj file.
  For instance, 3 is the OTP of object 3 in the dataset.

 - dataset with temporal information and having one visualisation channel only: t, id, t being the corresponding timepoint.
  For instance, 1, 3 is the OTP of object 3 at timepoint 1 in the dataset.

 - dataset with temporal information and having more than one visualisation channel: t, id, ch, ch being index of corresponding visualisation channel.
  For instance, 1, 3, 4 is the OTP of object 3 at timepoint 1 and in channel 4.

Property can in turn represent several different kinds of morphological information, each identified by a specific information type.

  The type of information must be mentioned at the beginning of the list as “type : information type”.

  Additional, human-readable information which will not be taken into account by MorhpoNet can be given in lines beginning with #

  Each property must be given a name in order to uniquely identify it in the database.

  Available information types are:

Temporal information

  - Information type: time

  - Information format: OTP1 : OTP2

  Provides information on temporal relations between two objects OTP1 and OTP2 at different time points: OTP2 originates from OTP1 at a previous time point. This format can be used to identify the same object at two different time points and to characterise object divisions (for instance, if OTP1 divides and creates OTP2 and OTP3, the list will have both entries OTP1 : OTP2 and OTP1 : OTP3) or objects fusion (if OTP1 and OTP2 fuse to produce OTP3, the list will have both entries OTP1 : OTP3 and OTP2 : OTP3).

Spatial Information

  - Information type: space

  - Information format: OTP1 : OTP2

  Provides information on spatial relations between two objects OTP1 and OTP2. It can be used to provide objects adjacency information or any other kind of connection existing between objects at the same time point. For instance, if one wants to provide the list of physical neighbours of object OTP1, the list will contain several entries OTP1 : OTP2, OTP1 : OTP3, etc...

Group Information

  - Information type: group

  - Information format: OTP : group1 (: subgroup2 : ...)

  Provides group information on object OTP, used to identify several objects belonging to the same class (for instance, cells belonging to the same tissue). This information is given as text corresponding to the name of each group. Users can additionally provide subgroups information: their names must be given in a hierarchical order, from the largest to the smallest (i.e., subgroup2 is a part of group1 and so forth). For instance, if OTP belongs to the group “Epidermis” and to subgroup “Head Epidermis”, the corresponding list entry will be OTP : Epidermis : Head Epidermis.

Quantitative Information

  - Information type: float

  - Information format: OTP : number (float)

  Provides quantitative information associated to object OTP. This information is a number, representing a certain property of OTP, such as for instance its volume. Such information will be displayed on MorphoNet as a heat map.

Selection Information

  - Information type: selection

  - Information format: OTP : number (integer)

  Associates object OTP to standard MorphoNet selection, identified by an integer between 1 and 255 and corresponding to the selection number in the Objects menu of MorphoNet. Object OTP will then be color-labeled correspondingly.

Color Information

  - Information type: color

  - Information format: OTP : r,g,b

  Colors OTP according to given RGB values (floats in the range 0,255).

Qualitative Information

  - Information type: string

  - Information format: OTP : text

  Provides qualitative information associated to object OTP. This information is under the form of text, representing a certain characteristics of OTP, such as for instance its name. Such information will be displayed on MorphoNet as text overimposed to OTP as the mouse pointer passes over it.

Genetic Information

  - Information type: genetic

  - Information format: OTP : number (float)

  Provides gene expression information associated to object OTP. The number characterises the expression level (either given as boolean 0/1 or as more precise quantitative expression level). The gene name whose expression is given in the information must be specified as the name of the information file uploaded to the database.

Dictionary Information

  - Information type: dict

  - Information format: OTP1 : OTP2 : number (float)

  Links object OTP1 to object OTP2 with a quantitative information on this link. Such a quantitative information is represented as heat map on the dataset. For instance, object OTP1 is associated to its direct physical neighbours, with additional quantitative information on their contact areas.

Sphere Information

  - Information type: sphere

  - Information format: OTP : x,y,z,r

  Visualises a sphere on the dataset, having the same color selection as object OTP, centered at coordinates x,y,z and with radius r.

Vector Information

  - Information type: vector

  - Information format: OTP : x1,y1,z1,s1 : x2,y2,z2,s2

  Visualises a line segment on the dataset, having the same color selection as OTP, starting at coordinates x1,y1,z1 with size s1 and ending at coordinates x2,y2,z2 with size s2.