OTB.LargeScaleMeanShift: Large-scale segmentation using MeanShift

This application chains together the 4 steps of the MeanShit framework, that is the MeanShiftSmoothing [1], the LSMSSegmentation [2], the LSMSSmallRegionsMerging [3] and the LSMSVectorization [4].This application can be a preliminary step for an object-based analysis.It generates a vector data file containing the regions extracted with the MeanShift algorithm. The spatial and range radius parameters allow adapting the sensitivity of the algorithm depending on the image dynamic and resolution. There is a step to remove small regions whose size (in pixels) is less than the given 'minsize' parameter. These regions are merged to a similar neighbor region. In the output vectors, there are additional fields to describe each region. In particular the mean and standard deviation (for each band) is computed for each region using the input image as support. If an optional 'imfield' image is given, it will be used as support image instead.

Inputs

The input image can be any single or multiband image. Beware of pontential imbalance between bands ranges as it may alter euclidean distance.

format
href
Please set a value for in.

Radius of the spatial neighborhood for averaging. Higher values will result in more smoothing and higher processing time.

integer

Threshold on spectral signature euclidean distance (expressed in radiometry unit) to consider neighborhood pixel for averaging. Higher values will be less edge-preserving (more similar to simple average in neighborhood), whereas lower values will result in less noise smoothing. Note that this parameter has no effect on processing time.

number

Minimum Segment Size. If, after the segmentation, a segment is of size lower than this criterion, the segment is merged with the segment that has the closest sepctral signature.

integer

Size of tiles along the X-axis for tile-wise processing.

integer
Please set a value for tilesizex.

Size of tiles along the Y-axis for tile-wise processing.

integer
Please set a value for tilesizey.

Type of segmented output

string
Please set a value for mode.

This is an optional support image that can be used to compute field values in each region. Otherwise, the input image is used as support.

format
href
Please set a value for mode.vector.imfield.

It corresponds to the output of the small region merging step.

string
Please set a value for mode.raster.out.

If activated, the application will try to clean all temporary files it created

boolean
Please set a value for cleanup.

Available memory for processing (in MB)

integer

Outputs

The output GIS vector file, representing the vectorized version of the segmented image where the features of the polygons are the radiometric means and variances.

format
transmission

It corresponds to the output of the small region merging step.

format
transmission

Execution options

successUri
inProgressUri
failedUri

format

mode

Execute End Point

View the execution endpoint of a process.

View the alternative version in HTML.

{"id": "OTB.LargeScaleMeanShift", "title": "Large-scale segmentation using MeanShift", "description": "This application chains together the 4 steps of the MeanShit framework, that is the MeanShiftSmoothing [1], the LSMSSegmentation [2], the LSMSSmallRegionsMerging [3] and the LSMSVectorization [4].This application can be a preliminary step for an object-based analysis.It generates a vector data file containing the regions extracted with the MeanShift algorithm. The spatial and range radius parameters allow adapting the sensitivity of the algorithm depending on the image dynamic and resolution. There is a step to remove small regions whose size (in pixels) is less than the given 'minsize' parameter. These regions are merged to a similar neighbor region. In the output vectors, there are additional fields to describe each region. In particular the mean and standard deviation (for each band) is computed for each region using the input image as support. If an optional 'imfield' image is given, it will be used as support image instead.", "version": "1.0.0", "jobControlOptions": ["sync-execute", "async-execute", "dismiss"], "outputTransmission": ["value", "reference"], "links": [{"rel": "http://www.opengis.net/def/rel/ogc/1.0/execute", "type": "application/json", "title": "Execute End Point", "href": "http://tb17.geolabs.fr:8119/ogc-api/processes/OTB.LargeScaleMeanShift/execution"}, {"rel": "alternate", "type": "text/html", "title": "Execute End Point", "href": "http://tb17.geolabs.fr:8119/ogc-api/processes/OTB.LargeScaleMeanShift/execution.html"}], "inputs": {"in": {"title": "The input image can be any single or multiband image. Beware of pontential imbalance between bands ranges as it may alter euclidean distance.", "description": "The input image can be any single or multiband image. Beware of pontential imbalance between bands ranges as it may alter euclidean distance.", "extended-schema": {"oneOf": [{"allOf": [{"$ref": "http://zoo-project.org/dl/link.json"}, {"type": "object", "properties": {"type": {"enum": ["image/tiff", "image/jpeg", "image/png"]}}}]}, {"type": "object", "required": ["value"], "properties": {"value": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}}}]}, "schema": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}, "id": "in"}, "spatialr": {"title": "Radius of the spatial neighborhood for averaging. Higher values will result in more smoothing and higher processing time.", "description": "Radius of the spatial neighborhood for averaging. Higher values will result in more smoothing and higher processing time.", "schema": {"type": "integer", "default": 5, "nullable": true}, "id": "spatialr"}, "ranger": {"title": "Threshold on spectral signature euclidean distance (expressed in radiometry unit) to consider neighborhood pixel for averaging. Higher values will be less edge-preserving (more similar to simple average in neighborhood), whereas lower values will result in less noise smoothing. Note that this parameter has no effect on processing time.", "description": "Threshold on spectral signature euclidean distance (expressed in radiometry unit) to consider neighborhood pixel for averaging. Higher values will be less edge-preserving (more similar to simple average in neighborhood), whereas lower values will result in less noise smoothing. Note that this parameter has no effect on processing time.", "schema": {"type": "number", "default": 15, "format": "double", "nullable": true}, "id": "ranger"}, "minsize": {"title": "Minimum Segment Size. If, after the segmentation, a segment is of size lower than this criterion, the segment is merged with the segment that has the closest sepctral signature.", "description": "Minimum Segment Size. If, after the segmentation, a segment is of size lower than this criterion, the segment is merged with the segment that has the closest sepctral signature.", "schema": {"type": "integer", "default": 50, "nullable": true}, "id": "minsize"}, "tilesizex": {"title": "Size of tiles along the X-axis for tile-wise processing.", "description": "Size of tiles along the X-axis for tile-wise processing.", "schema": {"type": "integer", "default": 500}, "id": "tilesizex"}, "tilesizey": {"title": "Size of tiles along the Y-axis for tile-wise processing.", "description": "Size of tiles along the Y-axis for tile-wise processing.", "schema": {"type": "integer", "default": 500}, "id": "tilesizey"}, "mode": {"title": "Type of segmented output", "description": "Type of segmented output", "schema": {"type": "string", "default": "vector", "enum": ["vector", "raster"]}, "id": "mode"}, "mode.vector.imfield": {"title": "This is an optional support image that can be used to compute field values in each region. Otherwise, the input image is used as support.", "description": "This is an optional support image that can be used to compute field values in each region. Otherwise, the input image is used as support.", "extended-schema": {"oneOf": [{"allOf": [{"$ref": "http://zoo-project.org/dl/link.json"}, {"type": "object", "properties": {"type": {"enum": ["image/tiff", "image/jpeg", "image/png"]}}}]}, {"type": "object", "required": ["value"], "properties": {"value": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}}}], "nullable": true}, "schema": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}, "id": "mode.vector.imfield"}, "mode.raster.out": {"title": "It corresponds to the output of the small region merging step.", "description": "It corresponds to the output of the small region merging step.", "schema": {"type": "string", "default": "uint8", "enum": ["uint8", "uint16", "int16", "int32", "int32", "float", "double"]}, "id": "mode.raster.out"}, "cleanup": {"title": "If activated, the application will try to clean all temporary files it created", "description": "If activated, the application will try to clean all temporary files it created", "schema": {"type": "boolean", "default": false}, "id": "cleanup"}, "ram": {"title": "Available memory for processing (in MB)", "description": "Available memory for processing (in MB)", "schema": {"type": "integer", "default": 128, "nullable": true}, "id": "ram"}}, "outputs": {"mode.vector.out": {"title": "The output GIS vector file, representing the vectorized version of the segmented image where the features of the polygons are the radiometric means and variances.", "description": "The output GIS vector file, representing the vectorized version of the segmented image where the features of the polygons are the radiometric means and variances.", "extended-schema": {"oneOf": [{"allOf": [{"$ref": "http://zoo-project.org/dl/link.json"}, {"type": "object", "properties": {"type": {"enum": ["text/xml", "application/vnd.google-earth.kml+xml", "application/json", "application/zip"]}}}]}, {"type": "object", "required": ["value"], "properties": {"value": {"oneOf": [{"type": "string", "contentEncoding": "utf-8", "contentMediaType": "text/xml"}, {"type": "string", "contentEncoding": "utf-8", "contentMediaType": "application/vnd.google-earth.kml+xml"}, {"type": "object"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "application/zip"}]}}}]}, "schema": {"oneOf": [{"type": "string", "contentEncoding": "utf-8", "contentMediaType": "text/xml"}, {"type": "string", "contentEncoding": "utf-8", "contentMediaType": "application/vnd.google-earth.kml+xml"}, {"type": "object"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "application/zip"}]}, "id": "mode.vector.out"}, "mode.raster.out": {"title": "It corresponds to the output of the small region merging step.", "description": "It corresponds to the output of the small region merging step.", "extended-schema": {"oneOf": [{"allOf": [{"$ref": "http://zoo-project.org/dl/link.json"}, {"type": "object", "properties": {"type": {"enum": ["image/tiff", "image/jpeg", "image/png"]}}}]}, {"type": "object", "required": ["value"], "properties": {"value": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}}}]}, "schema": {"oneOf": [{"type": "string", "contentEncoding": "base64", "contentMediaType": "image/tiff"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/jpeg"}, {"type": "string", "contentEncoding": "base64", "contentMediaType": "image/png"}]}, "id": "mode.raster.out"}}}

http://tb17.geolabs.fr:8119/ogc-api/processes/OTB.LargeScaleMeanShift.html
Last modified: Sat Feb 19 15:43:34 CET 2022