Label | Explanation | Data Type |
Input Radar Data
| The input radar data. | Raster Dataset; Raster Layer |
Output Feature Class
| The output feature class of detected bright ocean objects. | Feature Class |
Output Type
(Optional) | Specifies the type of boundary that will be used for the output feature class.
| String |
Minimum Object Width
(Optional) | The minimum width of an object to be detected. The width must be a positive value. The default value is 10 meters. | Linear Unit |
Maximum Object Width
(Optional) | The maximum width of an object to be detected. The width must be a positive value. The default value is 100 meters. | Linear Unit |
Minimum Object Length
(Optional) | The minimum length of an object to be detected. The length must be a positive value. The default value is 50 meters. | Linear Unit |
Maximum Object Length
(Optional) | The maximum length of an object to be detected. The length must be a positive value. The default value is 500 meters. | Linear Unit |
Mask Features
(Optional) | A land or water polygon feature. This polygon will be used to create a mask. | Feature Layer |
Feature Type
(Optional) | Specifies the type of polygon the Mask Features parameter value represents. This parameter is required if the Mask Features parameter is specified.
| String |
DEM Raster
(Optional) | The input DEM. If the input radar data is not orthorectified, this DEM will be used to orthorectify it. If the Mask Features parameter value is not provided, this DEM will also be used to create a land mask. | Mosaic Layer; Raster Layer |
Apply Geoid Correction
(Optional) | Specifies whether the vertical reference system of the input DEM will be transformed to ellipsoidal height. Most elevation datasets are referenced to sea level orthometric height, so a correction is required in these cases to convert to ellipsoidal height.
| Boolean |
Mask Tolerance
(Optional) | The buffer distance surrounding the mask created from either the Mask Features parameter or the DEM Raster parameter. The distance cannot be negative. The default value is 100 meters. | Linear Unit |
Available with Image Analyst license.
Summary
Detects potential bright human-made objects—such as ships, oil rigs, and windmills—while masking out the synthetic aperture radar (SAR) data outside the region of interest.
The tool clusters pixels and filters the clusters by the minimum and maximum width and length parameters, and outputs the results to a feature class. The output feature class can be specified as a bounding box or a perimeter around the polygon for the detected objects.
Usage
Calibrate the input radar data to gamma nought using the Apply Radiometric Calibration tool. This optimizes object detection, especially in large radar scenes.
The input radar data may not align with the output feature class. If the input radar data is not orthorectified, the tool transforms the Output Feature Class parameter value using the DEM Raster parameter. When no DEM is provided, the tool performs a transformation using an ellipsoidal surface. For optimal transformation of the Output Feature Class parameter value, provide an input DEM for the DEM Raster parameter. The input DEM must be in the WGS84 (EPSG:4326) geographic coordinate system.
To ensure that only objects in the ocean are detected, provide a value for the Mask Features parameter and use the Feature Type parameter to specify whether the mask is water or land. Alternatively, provide a DEM Raster parameter value, and the tool will use the elevation to determine land and water pixels. Either of these methods can be used to create a land mask.
If both the Mask Features and DEM Raster parameters values are provided, the Mask Features parameter will be used to create the mask.
Parameters
DetectBrightOceanObjects(in_radar_data, out_feature_class, {out_type}, {min_object_width}, {max_object_width}, {min_object_length}, {max_object_length}, {mask_features}, {feature_type}, {in_dem_raster}, {geoid}, {mask_tolerance})
Name | Explanation | Data Type |
in_radar_data | The input radar data. | Raster Dataset; Raster Layer |
out_feature_class | The output feature class of detected bright ocean objects. | Feature Class |
out_type (Optional) | Specifies the type of boundary that will be used for the output feature class.
| String |
min_object_width (Optional) | The minimum width of an object to be detected. The width must be a positive value. The default value is 10 meters. | Linear Unit |
max_object_width (Optional) | The maximum width of an object to be detected. The width must be a positive value. The default value is 100 meters. | Linear Unit |
min_object_length (Optional) | The minimum length of an object to be detected. The length must be a positive value. The default value is 50 meters. | Linear Unit |
max_object_length (Optional) | The maximum length of an object to be detected. The length must be a positive value. The default value is 500 meters. | Linear Unit |
mask_features (Optional) | A land or water polygon feature. This polygon will be used to create a mask. | Feature Layer |
feature_type (Optional) | Specifies the type of polygon the mask_features parameter value represents. This parameter is required if the mask_features parameter is specified.
| String |
in_dem_raster (Optional) | The input DEM. If the input radar data is not orthorectified, this DEM will be used to orthorectify it. If the mask_features parameter value is not provided, this DEM will also be used to create a land mask. | Mosaic Layer; Raster Layer |
geoid (Optional) | Specifies whether the vertical reference system of the input DEM will be transformed to ellipsoidal height. Most elevation datasets are referenced to sea level orthometric height, so a correction is required in these cases to convert to ellipsoidal height.
| Boolean |
mask_tolerance (Optional) | The buffer distance surrounding the mask created from either the mask_features parameter or the in_dem_raster parameter. The distance cannot be negative. The default value is 100 meters. | Linear Unit |
Code sample
This example finds bright ocean objects using a water mask.
import arcpy
arcpy.ia.DetectBrightOceanObjects(
r"C:\Data\SAR\Spotlight High_ICEYE_GRD_SLH_50153_20210405T124010_CalG0.crf",
r"C:\Output\Ocean.gdb\DetectBrightOceanObjects", "BOUNDS",
"50 Meters", "500 Meters", "50 Meters", "500 Meters", "MPA Water Polygon",
"Water", r"C:\Data\DEM\dem_COP30_ortho.tif", "GEOID", "100 Meters")
This example finds bright ocean objects using a water mask.
# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy
arcpy.CheckOutExtension("ImageAnalyst")
from arcpy.ia import *
# Set local variables
in_radar_data= r"C:\Data\SAR\IW_manifest_CalG0.crf"
out_feature_class = r"C:\Output\Ocean.gdb\DetectBrightOceanObjects"
out_type = "BOUNDS"
min_object_width = "50 Meters"
max_object_width = "500 Meters"
min_object_length = "50 Meters"
max_object_length = "500 Meters"
mask_features = "MPA Water Polygon"
feature_type = "Water"
in_dem_raster = r"C:\Data\DEM\dem_COP30_ortho.tif"
geoid = "GEOID"
mask_tolerance = "100 Meters"
# Execute
arcpy.ia.DetectBrightOceanObjects(in_radar_data, out_feature_class, out_type,
min_object_width, max_object_width, min_object_length,
max_object_length, mask_features, feature_type, in_dem_raster,
geoid, mask_tolerance)