2.0.1 Instance Segmentation App
Application Name | IKOSA AI Instance Segmentation App |
Version | 2.0.1 |
Documentation Version | 06.09.2023 - 1 |
Input Image(s) | 2D (standard and/or WSI) / Time Series / z-Stack / Multichannel Images; RGB or Grayscale (8/16 bit) |
Input Parameter(s) |
|
Keywords | - |
Short Description | Instance Segmentation of objects that resemble ones annotated and labeled in the training data of this application. Extraction of morphometric parameters and intensity/distance/density measures of objects and corresponding outgrowth areas. |
References / Literature |
|
Table of contents
IKOSA AI Instance Segmentation App
Your IKOSA AI application was created using our training for instance segmentation. All information presented in this document is applicable to your trained application.
Application description
This application automatically segments instances of objects that resemble ones previously annotated and labeled in the training data of this application. The application supports multiple classes, for each class an outgrowth region can be defined separately. Object count, morphometric feature measurements, densities and distances between instances are calculated. Color channel intensities (Red/Green/Blue or Gray values) are measured for the object-, outgrowth-, and combined area. This analysis can also be performed on time-lapse recordings (Time Series), z-stacks or multichannel images.
In the following, the prerequisites for an accurate analysis are outlined and the output of the application is described.
Input data requirements
Input image(s)
Input for this application is the following image data:
Image type | Color channels | Color depth (per channel) | Size (px) | Resolution (μm/px) |
---|---|---|---|---|
2D (standard and/or WSI), Time Series, Multichannel, Z-stack*
Check image format | 3 (RGB) 1 (Grayscale) | 8 Bit or 16 Bit (Gray) | WSI formats: arbitrary Standard images: max. 20,000 x 20,000 | arbitrary |
Image content Arbitrary Additional requirements None |
*Please note: Z-stack images cannot be uploaded into IKOSA but still can be analyzed via IKOSA Prisma API.
Important:
For all images, the following requirements apply:
The illumination must be constant throughout the image(s).
The sample must be in focus, i.e. no blurry regions in image(s).
Input parameter(s)
Required input parameters:
Max. outgrowth: For each class (trained label) a maximum outgrowth in the range of 0 - 99 pixels can be defined.
As an optional parameter, a single or multiple regions of interest (ROIs) can be defined in which the analysis should be performed (‘inclusion ROIs’).
Please note: Parameters that were set during training may affect also prediction with the deployed application. More information can be found under How to set custom training parameter values?.
Description of output files and their content
Files
File format | Description | |
---|---|---|
1 | csv | results.csv A csv file containing the overall analysis results for the input image or all inclusion ROIs. |
2 | csv | results_<xx>_<class-name>.csv A csv file containing the analysis results for all detected objects of class number <xx> with class name <class-name> (in training data) in the input image or inclusion ROIs. |
3 | jpg | results_vis/<xx>_<class-name>_vis.jpg (2D image, no ROI), or results_vis/<xx>_<class-name>_t<time-step>_z<z-layer>_c<channel>.jpg (for time series, z-stack, or multichannel image, no ROI), or results_vis/<xx>_<class-name>_<roi-id>.jpg (2D image, ROI <roi-id>), or results_vis/<xx>_<class-name>_t<time-step>_z<z-layer>_c<channel>_<roi-id>.jpg for time series, z-stack, or multichannel image, ROI <roi-id>): A visualization of the analysis result for a specific time step (of a time series), z-layer (of a z-stack), or channel (of a multichannel image) for either the whole image (if no inclusion ROIs selected for analysis) or each individual inclusion ROI, for each class number <xx> with class name <class-name> (in training data). Each visualization includes two parts:
|
4 | json | annotation_results.json A json file that includes geometries of the objects detected in the input image or inclusion ROIs. |
5 | json | roiMeta.json A json file containing all information regarding the ROIs defined for the analysis job to ensure reproducibility. The file is empty if no ROIs were defined for analysis. |
6 | jpg | rois_visualization.jpg or t<time-step>_z<z-layer>_c<channel>_rois_visualization.jpg An overview visualization to show locations of all analyzed ROIs for the 2D image or time step <time-step> of a time series, z-layer <z-layer> of a z-stack, or channel <channel> of a multichannel image. |
7 | json | jobResultBundleMeta.json A json file containing all information regarding the analysis job (application name and version, project, etc.) to ensure reproducibility. |
Content
results.csv
Single csv-file
If one or more time steps (of a Time Series), z-layers (of a z-Stack), or channels (of a multichannel image) were specified, the results in a specific row refer to the time step/z-layer/channel specified in the corresponding column.
If one or more ROIs were specified, the results in a specific row refer to the ROI specified in the corresponding columns, otherwise (empty ROI columns) the results refer to the whole image.
Column NO. | Column name | Examples | Value range | Description |
---|---|---|---|---|
1 | t | 3 | 1 - | Time step, i.e. the position of the image in the time series. |
2 | z | 5 | 1 - | z-layer, i.e. the position of the layer in the z-stack. |
3 | c | 2 | 1 - | Channel, i.e. the position of the channel in the multichannel image. |
4 | roi_id | ROI-03 | ROI-01 - | <roi-id> starting from “ROI1”. Empty, if no inclusion ROI is specified and the whole image was analyzed. |
5 | roi_name | “central” | text | Custom text to identify the ROI. Empty, if no inclusion ROI is specified and the whole image was analyzed. |
6 | roi_size [Px^2] | 1212212 | 1 - | Size of the ROI that was analyzed in pixels^2. The size of the whole image is given if no inclusion ROI is specified and the whole image was analyzed. |
7 | bit depth [Bit] | 8 | 8, 16 | Bit/color depth of each channel of the image |
8 | class | “cell nuclei” | text | Name of the trained label (<class-name>). |
9 | object_max_outgrowth [Px] | 2 | 0 - 99 | Maximum outgrowth in pixels. |
10 | total_num_objects | 788 | 1 - | Total number of objects which are detected in the image/ROI. |
11 | on_border_num_objects | 12 | 0 - total_num_objects | Number of objects which are detected in the image/ROI and touch the border of the image/ROI. |
12 | holes_num_objects | 3 | 0 - total_num_objects | Number of objects which are detected in the image/ROI and have holes (>=1 pixel). |
13 | recombined_num_objects | 4 | 0 - total_num_objects | Number of objects which are detected at tile borders of image (tile size: 2048x2048 pixels) and are recombined. |
14 | density_num_objects [1/Px^2] | 0.0007514953 | 0 - 1 | Total number of objects divided by area of image/ROI. |
15 | total_area_objects [Px^2] | 101863 | 8 - #pixels | Total area of objects which are detected in the image/ROI. |
16 | density_area_objects | 0.0971441268 | 0 - 1 | Total area of objects divided by area of image/ROI. |
17 | total_area_outgrowth [Px^2] | 125326 | 0 - #pixels | Total area of object’s outgrowth which are detected in the image/ROI. |
18 | density_area_outgrowth | 0.11952018737 | 0 - 1 | Total area of outgrowth divided by area of image/ROI. |
19 | total_area_objects_incl_outgrowth [Px^2] | 227189 | 8 - #pixels | Total area of objects including outgrowth which are detected in the image/ROI. |
20 | density_area_objects_incl_outgrowth | 0.2166643142 | 0 - 1 | Total area of objects including outgrowth divided by area of image/ROI |
21 | mean_area_objects [Px^2] | 14.324523 | 8 - #pixels | Mean area of detected objects in Pixels^2. |
22 | stddev_area_objects [Px^2] | 1.213133 | 0 - #pixels | Standard deviation of area of detected objects in Pixels^2. |
23 | median_area_objects [Px^2] | 13.983252 | 8 - # pixels | Median area of detected objects in Pixels^2. |
24 | mean_area_outgrowth [Px^2] | 21.363824 | 0 - #pixels | Mean area of outgrowth in Pixels^2. |
25 | stddev_area_outgrowth [Px^2] | 2.573912 | 0 - #pixels | Standard deviation of areas of outgrowth in Pixels^2. |
26 | median_area_outgrowth [Px^2] | 20.874623 | 0 - #pixels | Median area of outgrowth in Pixels^2. |
27 | mean_area_objects_incl_outgrowth [Px^2] | 35.836274 | 8 - #pixels | Mean area of detected objects including outgrowth in Pixels^2. |
28 | stddev_area_objects_incl_outgrowth [Px^2] | 2.309003 | 0 - #pixels | Standard deviation of area of detected objects including outgrowth in Pixels^2. |
29 | median_area_objects_incl_outgrowth [Px^2] | 35.473222 | 8 - #pixels | Median area of detected objects including outgrowth in Pixels^2. |
30 | mean_distance [Px] | 13.5016475693 | 0 - | Mean distance (center-to-center) between detected objects in Pixels. The distance is calculated by the nearest-neighbor distance to other objects of the same type. |
31 | stddev_distance [Px] | 5.5485792042 | 0 - | Standard deviation of distances between detected objects in Pixels. The distance is calculated by the nearest-neighbor distance to other objects of the same type. |
32 | median_distance [Px] | 12.529964086 | 0 - | Median distance between detected objects in Pixels. The distance is calculated by the nearest-neighbor distance to other objects of the same type. |
33 | mean_bbox_area [Px^2] | 202.03426395 | 8 - | Mean area of bounding box of detected objects in Pixels^2. |
34 | mean_area_ratio [%] | 0.0124492385 | 0 - 100 | Mean area of detected object as percentage of overall image area or ROI area inside the image. |
35 | mean_perimeter [Px] | 40.434010152 | 8 - | Mean perimeter of detected objects in Pixels. |
36 | mean_circularity | 0.92114213197 | 0 - ~1 | Mean circularity factor of detected objects. Circularity = 4*pi*area/(perimeter^2). The circularity of a circle is 1. Note: Detected objects with a circularity of infinity are ignored when calculating mean_circularity. |
37 | mean_circularity_ISO | 0.85114213197 | 0 - ~1 | Mean circularity factor of detected objects calculated by ISO defintion. |
38 | mean_solidity | 0.9310659898 | 0 - 1 | Mean solidity value of all detected objects. Solidity is calculated out of the ratio of an object’s area to the area of its convex hull. |
39 | mean_eccentricity | 0.7109644670 | 0 - 1 | Mean eccentricity of all detected objects. Eccentricity of the ellipse that has the same second-moments as the object area. The eccentricity is the ratio of the focal distance (distance between focal points) over the major axis length. When it is 0, the ellipse becomes a circle. |
40 | mean_equivalent_diameter [Px] | 11.737309644 | 1 - | Mean equivalent diameter of all detected objects. The equivalent diameter is the diameter of a circle having the same area as the detected object. |
41 | mean_extent | 0.709022842 | 0 - 1 | Mean extent of all detected objects. The extent value is the ratio of the object area to the total bounding box area. |
42 | mean_minor_axis_length [Px] | 9.4835025380 | 1 - | Mean minor axis length of all detected objects. The minor axis length is the length of the minor axis of the ellipse that has the same normalized second central moments as the object. |
43 | mean_major_axis_length [Px] | 15.843908629 | 1 - | Mean major axis length of all detected objects. The major axis length is the length of the major axis of the ellipse that has the same normalized second central moments as the object. |
For the three different color channels [CC] of an RGB image ([CC] ∈ {01, 02, 03}). For gray value images, only values for [CC]=01 are provided: | ||||
44/ 56/ … | channel_#[CC]_index | 1 | 1, 2, 3 | Index of channel |
45/ 57/ … | channel_#[CC]_name | Green | Red, Green, Blue, Gray | Color of channel |
46/ 58/ … | channel_#[CC]_total_intensity | 170486667 | 0 - 65535 x #pixels | Total intensity (sum) of this channel CC in the image/ROI. |
47/ 59/ … | channel_#[CC]_objects_mean_intensity | 272.93074030 | 0 - 65535 | Mean intensity of this channel CC over the areas of all detected objects. |
48/ 60/ … | channel_#[CC]_objects_stddev_intensity | 130.84258715 | 0 - 65535 | Standard deviation of intensity of this channel CC over the areas of all detected objects. |
49/ 61/ … | channel_#[CC]_objects_intensity_dominant | 265 | 0 - total_num_objects | Number of objects for which mean intensity is highest (=dominant) in this channel CC, compared to all other channels (mean intensity larger than in other channels of type “intensity”). |
50/ 62/ … | channel_#[CC]_outgrowth_mean_intensity | 273.26551765 | 0 - 65535, or ”” (empty) | Mean intensity of this channel CC over the areas of the outgrowths of all detected objects. Is empty ““ if no outgrowth was set (max. outgrowth was set to 0 pixels). |
51/ 63/ … | channel_#[CC]_outgrowth_stddev_intensity | 203.15327249 | 0 - 65535, or ”” (empty) | Standard deviation of intensity of this channel CC over the areas of the outgrowths of all detected objects. Is empty ““ if no outgrowth was set (max. outgrowth was set to 0 pixels). |
52/ 64/ … | channel_#[CC]_outgrowth_intensity_dominant | 724 | 0 - total_num_objects | Number of objects for which mean intensity of outgrowth areas is highest (=dominant) in this channel CC, compared to all other channels (mean intensity larger than in other channels of type “intensity”). |
53/ 65/ … | channel_#[CC]_objects_incl_outgrowth_mean_intensity | 273.115521066 | 0 - 65535 | Mean intensity of this channel CC over the areas of the objects including outgrowths of all detected objects. |
54/ 66/ … | channel_#[CC]_objects_incl_outgrowth_stddev_intensity | 174.47822028 | 0 - 65535 | Standard deviation of intensity of this channel CC over the areas of the objects including outgrowths of all detected objects. |
55/ 67/ … | channel_#[CC]_objects_incl_outgrowth_intensity_dominant | 530 | 0 - total_num_objects | Number of objects for which mean intensity of areas of detected objects incl. outgrowth is highest (=dominant) in this channel CC, compared to all other channels (mean intensity larger than in other channels of type “intensity”). |
results_<xx>_<class-name>.csv
Single or multiple csv-file(s)
If one or more time steps (of a Time Series), z-layers (of a z-Stack), or channels (of a multichannel image) were specified, the results in a specific row refer to the time step/z-layer/channel specified in the corresponding column.
If one or more ROIs were specified, the results in a specific row refer to the ROI specified in the corresponding columns, otherwise (empty ROI columns) the results refer to the whole image.
Column NO. | Column name | Examples | Value range | Description |
---|---|---|---|---|
1 | t | 3 | 1 - | Time step, i.e. the position of the image in the time series. |
2 | z | 5 | 1 - | z-layer, i.e. the position of the layer in the z-stack. |
3 | c | 2 | 1 - | Channel, i.e. the position of the channel in the multichannel image. |
4 | roi_id | ROI-03 | ROI-01 - | <roi-id> starting from “ROI1”. Empty, if no inclusion ROI is specified and the whole image was analyzed. |
5 | roi_name | “central” | text | Custom text to identify the ROI. Empty if no inclusion ROI is specified and the whole image was analyzed. |
6 | roi_size [Px^2] | 1212212 | 1 - | Size of the ROI that was analyzed in pixels^2. The size of the whole image is given if no inclusion ROI is specified and the whole image was analyzed. |
7 | bit depth [Bit] | 8 | 8, 16 | Bit/color depth of each channel of the image |
8 | max_outgrowth [Px] | 2 | 0 - 99 | Maximum outgrowth in pixels. |
9 | object_id | 5 | 1 - | ID of detected object. More information regarding numbering can be found in Numbering (IDs) of objects in analysis results. |
10 | object_center_x | 741 | 1 - image/ROI width | x-coordinate of object center (centroid, starting from upper left corner, along image/ROI width). |
11 | object_center_y | 26 | 1 - image/ROI height | y-coordinate of object center (centroid, starting from upper left corner, along image/ROI height). |
12 | is_on_border | “True” | “True” or “False” | Boolean indicator to show if object is touching the border of the image/ROI. |
13 | has_holes | “False” | “True” or “False” | Boolean indicator to show if object has holes (>=1 pixel). |
14 | is_recombined | “False” | “True” or “False” | Boolean indicator to show if object was recombined because it was detected at tile borders of image (tile size: 2048x2048 pixels). |
15 | object_area [Px^2] | 174 | 8 - | Area of object in pixels^2. |
16 | outgrowth_area [Px^2] | 310 | 0 - or ““ (empty) | Area of outgrowth in pixels^2. Is empty ““ if no outgrowth was set (max. outgrowth was set to 0 pixels). |
17 | object_incl_outgrowth_area [Px^2] | 484 | 8 - | Sum of areas of object and outgrowth in pixels^2. |
18 | distance_nearest_neighbor [Px] | 22.090722034 | 0 - | Distance (center-to-center) to the nearest other object of the same class in pixels. |
19 | bbox_area [Px^2] | 304 | 8 - | Area of bounding box of detected object in pixels^2. |
20 | area_ratio [%] | 0.02 | 0 - 100 | Area of detected object as percentage of overall image area or ROI area inside the image. |
21 | perimeter [Px] | 53 | 8 - | Perimeter of detected object in Pixels. |
22 | circularity | 0.78 | 0 - ~1 | Circularity of detected object. Circularity = 4*pi*area/(perimeter^2). The circularity of a circle is 1. |
23 | circularity_ISO | 0.65 | 0 - ~1 | Circularity of detected object calculated by ISO definition. |
24 | solidity | 0.97 | 0 - 1 | Solidity of detected object. Solidity is calculated out of the ratio of an object’s area to the area of its convex hull. |
25 | eccentricity | 0.92 | 0 - 1 | Eccentricity of detected object. Eccentricity of the ellipse that has the same second-moments as the object area. The eccentricity is the ratio of the focal distance (distance between focal points) over the major axis length. When it is 0, the ellipse becomes a circle. |
26 | equivalent_diameter [Px] | 14 | 1 - | Equivalent diameter of detected object. The equivalent diameter is the diameter of a circle having the same area as the detected object. |
27 | extent | 0.57 | 0 - 1 | Extent of detected object. The extent value is the ratio of the object area to the total bounding box area. |
28 | minor_axis_length [Px] | 9 | 1 - | Minor axis length of detected object. The minor axis length is the length of the minor axis of the ellipse that has the same normalized second central moments as the object. |
29 | major_axis_length [Px] | 23 | 1 - | Major axis length of detected object. The major axis length is the length of the major axis of the ellipse that has the same normalized second central moments as the object. |
For the three different color channels [CC] of an RGB image ([CC] ∈ {01, 02, 03}). For gray value images, only values for [CC]=01 are provided: | ||||
30/ 41/ … | channel_#[CC]_index | 1 | 1, 2, 3 | Index of channel |
31/ 42/ … | channel_#[CC]_name | Green | Red, Green, Blue, Gray | Color of channel |
32/ 43/ … | channel_#[CC]_object_mean_intensity | 272.93074030 | 0 - 65535 | Mean intensity of this channel CC over the area of the detected object. |
33/ 44/ … | channel_#[CC]_object_stddev_intensity | 130.84258715 | 0 - 65535 | Standard deviation of intensity of this channel CC over the area of the detected object. |
34/ 45/ … | channel_#[CC]_object_intensity_dominant | “True” | “True”, or ”False”, or ”nan” | Boolean indicator to show if the mean intensity of this channel CC over the area of the object is the highest (=dominant), compared to all other channels (mean intensity larger than in other channels of type “intensity”). |
35/ 46/ … | channel_#[CC]_outgrowth_mean_intensity | 273.26551765 | 0 - 65535, or ”” (empty) | Mean intensity of this channel CC over the area of the outgrowth for the detected object. Is empty ““ if no outgrowth was set (max. outgrowth was set to 0 pixels). |
36/ 47/ … | channel_#[CC]_outgrowth_stddev_intensity | 203.15327249 | 0 - 65535, or ”” (empty) | Standard deviation of the intensity of this channel CC over the area of the outgrowth for the detected object. Is empty ““ if no outgrowth was set (max. outgrowth was set to 0 pixels). |
37/ 48/ … | channel_#[CC]_outgrowth_intensity_dominant | “True” | “True”, or ”False”, or ”nan” | Boolean indicator to show if the mean intensity of this channel CC over the area of the outgrowth for the detected object is the highest (=dominant), compared to all other channels (mean intensity larger than in other channels of type “intensity”). Is “False“ if no outgrowth is set (max. outgrowth is 0 pixels). |
38/ 49/ … | channel_#[CC]_object_incl_outgrowth_mean_intensity | 273.115521066 | 0 - 65535 | Mean intensity of this channel CC over the combined area of the detected object and outgrowth. |
39/ 50/ … | channel_#[CC]_object_incl_outgrowth_stddev_intensity | 174.47822028 | 0 - 65535 | Standard deviation of intensity of this channel CC over the combined area of the detected object and outgrowth |
40/ 51/ … | channel_#[CC]_object_incl_outgrowth_intensity_dominant | “True” | “True”, or ”False”, or ”nan” | Boolean indicator to show if the mean intensity of this channel CC over the combined area of the detected object and outgrowth is the highest (=dominant), compared to all other channels (mean intensity larger than in other channels of type “intensity”). |
Error information
More information about errors can be found in the Application Error Documentation.
Contact
If you have any questions about IKOSA AI and the applications you can create with it, please refer to Application Training with IKOSA AI section in the Knowledge Base.
You can also always contact our team at support@ikosa.ai for any further clarifications.
Feel free to book a 30-minute meeting to speak with us about IKOSA and the apps!
Copyright 2024 KOLAIDO GmbH. IKOSA® is a registered EU trademark.