com.supermap.image.processing
类 ImageTools
- java.lang.Object
-
- com.supermap.image.processing.ImageTools
-
public class ImageTools extends Object
影像工具类
-
-
构造器概要
构造器 构造器和说明 ImageTools()
构造一个新的 ImageTools 对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 void
addSteppedListener(SteppedListener l)
添加一个进度条事件 SteppedEvent 的监听器。CameraType
cameraTypeFromImageName(DatasetImage sourceDatasetImage)
根据影像名称获取相机类型CameraType
cameraTypeFromImageName(String imageName)
根据影像名称获取相机类型DatasetImage[]
clipImage(DatasetImage[] datasetImages, DatasetVector clipDataset, ElevationData elevationData, String outputDirectory, ImageOutputOption outputOption, int parallelNumber)
遥感影像裁剪DatasetImage
clipImage(DatasetImage datasetImage, GeoRegion[] clipRegions, ElevationData elevationData, String outputFilePath, ImageOutputOption outputOption)
遥感影像裁剪DatasetImage
clipImage(DatasetImage datasetImage, Rectangle2D rectClip, ElevationData elevationData, String outputFilePath, ImageOutputOption outputOption)
遥感影像裁剪GeoRegion
computeCoverage(DatasetImage datasetImage)
计算影像范围DatasetVector
computeCoverages(DatasetImage[] datasetImages, Datasource targetDatasource, String targetDatasetName)
计算影像范围GeoRegion
computeFootprint(DatasetImage datasetImage, int downSampleFactor)
计算影像边界GeoRegion
computeFootprint(DatasetImage datasetImage, int downSampleFactor, double noDataValue)
计算影像边界DatasetVector
computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName)
计算影像边界DatasetVector
computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName, int parallelNumber)
计算影像边界DatasetVector
computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName, int parallelNumber, double noDataValue)
计算影像边界BigInteger
estimateImgDatasetSize(DatasetImage datasetImage)
估算数据集大小String[]
getSensorCategoryFileSuffix(SensorCategory sensorCategory)
获取影像传感器的文件后缀名称数组boolean
imageToLonLat(DatasetImage[] images, DatasetVector nameIndicesDataset, DatasetVector gcpDatasetVector, DatasetVector tpDatasetVector, ElevInterpolator elevInterpolator)
控制点和连接点像方转物方坐标DatasetVector
imageToLonLat(String rpcFilesPath, ElevInterpolator elevInterpolator, DatasetVector datasetVector, String imageNameField, String pointXField, String pointYField, String resultFieldPrefix)
像方转物方坐标Map<Integer,List<Integer>>
intersectImageCoverage(DatasetImage[] sourceDatasetImages, DatasetImage[] referenceImages)
查询相交影像DatasetVector
lonLatToImage(DatasetImage[] images, DatasetVector nameIndicesDataset, DatasetVector datasetVector, String pointXField, String pointYField, String pointZField, String resultFieldPrefix)
控制点和连接点物方转像方坐标DatasetVector
lonLatToImage(String rpcFilesPath, DatasetVector datasetVector, String imageNameField, String pointXField, String pointYField, String pointZField, String resultFieldPrefix)
物方转像方坐标String[]
modifyImageNoValueInfo(String[] filePathList, boolean isSetNoValue, double noValue)
修改无值信息,可以删除无值,或修改无值指定,不改变原来无值像素值Map<Integer,Integer>
pairImageName(DatasetImage[] muxDatasets, DatasetImage[] panDatasets)
影像名称配对PairImageNameResult[][]
pairImageName(String[] imageNames)
影像名称配对 当影像名称不符合卫星命名规范,影像名称配对结果为:影像名称索引 + SensorCategory.USERDEFINE + CameraType.UNSUPPORTED 当影像名称没有配对成功时,该名称单独组成一景影像。String[]
queryIntersectImagePath(DatasetMosaic refDatasetMosaic, Dataset queryDataset)
查询相交影像径,用于在大范围参考底图中查询同被查询影像相交文件路径void
removeSteppedListener(SteppedListener l)
移除一个进度条事件(SteppedEvent)的监听器。DatasetImage[]
resampleImage(DatasetImage[] datasetImages, double resolution, String outputDirectory, ImageOutputOption outputOption, int parallelNumber)
遥感影像重采样double[]
resolutionInDegree(RPCTransformer rpcTransformer)
通过rpc计算影像分辨率double[]
resolutionInMeter(RPCTransformer rpcTransformer)
通过rpc计算影像分辨率SensorCategory
sensorCategoryFromImageName(DatasetImage sourceDatasetImage)
根据影像名称获取影像传感器类型SensorCategory
sensorCategoryFromImageName(String imageName)
根据影像名称获取影像传感器类型
-
-
-
方法详细资料
-
computeCoverage
public GeoRegion computeCoverage(DatasetImage datasetImage)
计算影像范围- 参数:
datasetImage
- 待计算的影像数据集- 返回:
- 影像范围
-
computeCoverages
public DatasetVector computeCoverages(DatasetImage[] datasetImages, Datasource targetDatasource, String targetDatasetName)
计算影像范围- 参数:
datasetImages
- 待计算的影像数据集数组targetDatasource
- 结果保存数据源targetDatasetName
- 结果数据集名称- 返回:
- 结果数据集
-
computeFootprint
public GeoRegion computeFootprint(DatasetImage datasetImage, int downSampleFactor)
计算影像边界- 参数:
datasetImage
- 输入影像数据集downSampleFactor
- 降采样系数. 在原有像素上除以该系数后对影像重采样进行提取有效范围- 返回:
- 影像边界
-
computeFootprint
public GeoRegion computeFootprint(DatasetImage datasetImage, int downSampleFactor, double noDataValue)
计算影像边界- 参数:
datasetImage
- 输入影像数据集downSampleFactor
- 降采样系数. 在原有像素上除以该系数后对影像重采样进行提取有效范围noDataValue
- 影像无值- 返回:
- 影像边界
-
computeFootprints
public DatasetVector computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName, int parallelNumber)
计算影像边界- 参数:
datasetImages
- 输入影像数据集数组downSampleFactor
- 降采样系数. 在原有像素上除以该系数后对影像重采样进行提取有效范围targetDatasource
- 结果数据源targetDatasetName
- 结果数据集名称parallelNumber
- 并行数目- 返回:
- 影像边界
-
computeFootprints
public DatasetVector computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName, int parallelNumber, double noDataValue)
计算影像边界- 参数:
datasetImages
- 输入影像数据集数组downSampleFactor
- 降采样系数. 在原有像素上除以该系数后对影像重采样进行提取有效范围targetDatasource
- 结果数据源targetDatasetName
- 结果数据集名称parallelNumber
- 并行数目noDataValue
- 影像无值、背景值- 返回:
- 影像边界
-
computeFootprints
public DatasetVector computeFootprints(DatasetImage[] datasetImages, int downSampleFactor, Datasource targetDatasource, String targetDatasetName)
计算影像边界- 参数:
datasetImages
- 输入影像数据集数组downSampleFactor
- 降采样系数. 在原有像素上除以该系数后对影像重采样进行提取有效范围targetDatasource
- 结果数据源targetDatasetName
- 结果数据集名称- 返回:
- 影像边界
-
imageToLonLat
public DatasetVector imageToLonLat(String rpcFilesPath, ElevInterpolator elevInterpolator, DatasetVector datasetVector, String imageNameField, String pointXField, String pointYField, String resultFieldPrefix)
像方转物方坐标- 参数:
rpcFilesPath
- RPC文件路径elevInterpolator
- 高程插值器datasetVector
- 输入点数据集imageNameField
- 影像名称字段pointXField
- X坐标字段名称pointYField
- Y坐标字段名称resultFieldPrefix
- 结果字段名称前缀- 返回:
- 结果数据集
-
lonLatToImage
public DatasetVector lonLatToImage(String rpcFilesPath, DatasetVector datasetVector, String imageNameField, String pointXField, String pointYField, String pointZField, String resultFieldPrefix)
物方转像方坐标- 参数:
rpcFilesPath
- RPC文件路径datasetVector
- 输入点数据集imageNameField
- 影像名称字段pointXField
- X坐标字段名称pointYField
- Y坐标字段名称pointZField
- Z坐标字段名称resultFieldPrefix
- 结果字段名称前缀- 返回:
- 结果数据集
-
imageToLonLat
public boolean imageToLonLat(DatasetImage[] images, DatasetVector nameIndicesDataset, DatasetVector gcpDatasetVector, DatasetVector tpDatasetVector, ElevInterpolator elevInterpolator)
控制点和连接点像方转物方坐标- 参数:
images
- 影像数据集数组nameIndicesDataset
- 名称索引数据集. 由影像匹配功能生成gcpDatasetVector
- 地面控制点数据集. 由影像匹配功能生成tpDatasetVector
- 连接点数据集. 由影像匹配功能生成elevInterpolator
- 高程插值器- 返回:
- 是否转换成功。
-
lonLatToImage
public DatasetVector lonLatToImage(DatasetImage[] images, DatasetVector nameIndicesDataset, DatasetVector datasetVector, String pointXField, String pointYField, String pointZField, String resultFieldPrefix)
控制点和连接点物方转像方坐标- 参数:
images
- 影像数据集数组nameIndicesDataset
- 名称索引数据集. 由影像匹配功能生成datasetVector
- 输入点数据集pointXField
- X坐标字段名称pointYField
- Y坐标字段名称pointZField
- Z坐标字段名称resultFieldPrefix
- 结果字段名称前缀- 返回:
- 结果数据集
-
getSensorCategoryFileSuffix
public String[] getSensorCategoryFileSuffix(SensorCategory sensorCategory)
获取影像传感器的文件后缀名称数组- 参数:
sensorCategory
- 影像传感器- 返回:
- 文件后缀名称数组
-
pairImageName
public Map<Integer,Integer> pairImageName(DatasetImage[] muxDatasets, DatasetImage[] panDatasets)
影像名称配对- 参数:
muxDatasets
- 多光谱数据集数组panDatasets
- 全色数据集数组- 返回:
- 配对结果
-
pairImageName
public PairImageNameResult[][] pairImageName(String[] imageNames)
影像名称配对当影像名称不符合卫星命名规范,影像名称配对结果为:影像名称索引 + SensorCategory.USERDEFINE + CameraType.UNSUPPORTED 当影像名称没有配对成功时,该名称单独组成一景影像。 当影像名称存在多对配对时,所有属于同一景影像的配对结果组成一景影像。
- 参数:
imageNames
- 影像名称数组- 返回:
- 配对结果二维数组.
-
sensorCategoryFromImageName
public SensorCategory sensorCategoryFromImageName(DatasetImage sourceDatasetImage)
根据影像名称获取影像传感器类型- 参数:
sourceDatasetImage
- 源数据集- 返回:
- 影像传感器类型。
-
sensorCategoryFromImageName
public SensorCategory sensorCategoryFromImageName(String imageName)
根据影像名称获取影像传感器类型- 参数:
imageName
- 源数据集名称- 返回:
- 影像传感器类型。
-
cameraTypeFromImageName
public CameraType cameraTypeFromImageName(DatasetImage sourceDatasetImage)
根据影像名称获取相机类型- 参数:
sourceDatasetImage
- 源数据集- 返回:
- 相机类型。
-
cameraTypeFromImageName
public CameraType cameraTypeFromImageName(String imageName)
根据影像名称获取相机类型- 参数:
imageName
- 源数据集名称- 返回:
- 相机类型。
-
queryIntersectImagePath
public String[] queryIntersectImagePath(DatasetMosaic refDatasetMosaic, Dataset queryDataset)
查询相交影像径,用于在大范围参考底图中查询同被查询影像相交文件路径- 参数:
refDatasetMosaic
- 参考镶嵌数据集,一般为大范围底图,被查询对象queryDataset
- 查询数据集- 返回:
- 相交文件路径集合
-
intersectImageCoverage
public Map<Integer,List<Integer>> intersectImageCoverage(DatasetImage[] sourceDatasetImages, DatasetImage[] referenceImages)
查询相交影像- 参数:
sourceDatasetImages
- 查询影像数据集数组referenceImages
- 参考影像数组- 返回:
- 查询相交影像结果
-
resolutionInMeter
public double[] resolutionInMeter(RPCTransformer rpcTransformer)
通过rpc计算影像分辨率- 参数:
rpcTransformer
- 影像rpc- 返回:
- 影像x与y方向上的分辨率,单位米
-
resolutionInDegree
public double[] resolutionInDegree(RPCTransformer rpcTransformer)
通过rpc计算影像分辨率- 参数:
rpcTransformer
- 影像rpc- 返回:
- 影像x与y方向上的分辨率,单位度
-
resampleImage
public DatasetImage[] resampleImage(DatasetImage[] datasetImages, double resolution, String outputDirectory, ImageOutputOption outputOption, int parallelNumber)
遥感影像重采样- 参数:
datasetImages
- 输入的遥感影像数组resolution
- 分辨率outputDirectory
- 输出文件路径outputOption
- 输出结果参数设置parallelNumber
- 并行数目- 返回:
- 结果数据集
-
clipImage
public DatasetImage clipImage(DatasetImage datasetImage, Rectangle2D rectClip, ElevationData elevationData, String outputFilePath, ImageOutputOption outputOption)
遥感影像裁剪- 参数:
datasetImage
- 输入的遥感影像rectClip
- 裁剪范围elevationData
- 高程数据outputFilePath
- 输出文件路径outputOption
- 输出结果参数设置- 返回:
- 结果数据集
-
clipImage
public DatasetImage clipImage(DatasetImage datasetImage, GeoRegion[] clipRegions, ElevationData elevationData, String outputFilePath, ImageOutputOption outputOption)
遥感影像裁剪- 参数:
datasetImage
- 输入的遥感影像clipRegions
- 裁剪范围几何对象数组elevationData
- 高程数据outputFilePath
- 输出文件路径outputOption
- 输出结果参数设置- 返回:
- 结果数据集
-
clipImage
public DatasetImage[] clipImage(DatasetImage[] datasetImages, DatasetVector clipDataset, ElevationData elevationData, String outputDirectory, ImageOutputOption outputOption, int parallelNumber)
遥感影像裁剪- 参数:
datasetImages
- 输入的遥感影像数组clipDataset
- 裁剪数据集elevationData
- 高程数据outputDirectory
- 输出文件夹outputOption
- 输出结果参数设置parallelNumber
- 并行数目- 返回:
- 结果数据集
-
estimateImgDatasetSize
public BigInteger estimateImgDatasetSize(DatasetImage datasetImage)
估算数据集大小- 参数:
datasetImage
- 源数据集- 返回:
- 数据集大小,单位:字节。
-
modifyImageNoValueInfo
public String[] modifyImageNoValueInfo(String[] filePathList, boolean isSetNoValue, double noValue)
修改无值信息,可以删除无值,或修改无值指定,不改变原来无值像素值- 参数:
filePathList
- 输入文件列表isSetNoValue
- 是否输出无值noValue
- 无值指定,当isSetNoValue为true时生效- 返回:
- 成功返回文件数组
-
addSteppedListener
public void addSteppedListener(SteppedListener l)
添加一个进度条事件 SteppedEvent 的监听器。- 参数:
l
- 一个用于接收进度条事件的监听器。
-
removeSteppedListener
public void removeSteppedListener(SteppedListener l)
移除一个进度条事件(SteppedEvent)的监听器。- 参数:
l
- 一个用于接收进度条事件的监听器。
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.