将ImageMosaic插件与足迹管理结合使用¶
介绍¶
本逐步教程介绍如何使用ImageMosaic插件将封装外形与栅格数据关联。
脚印是一种形状,用作马赛克的遮罩。遮罩对于隐藏无意义的像素或增强图像相对于其他区域的少数区域很有用。
本教程假设您了解 ImageMosaic 部分。
本教程包含两个部分:
第一部分, 配置 ,描述了设置带有示意图的图像马赛克所需的可能配置。
第二部分, 实例 ,提供了具有示意图的图像马赛克的配置示例。
配置¶
封装外形可以用三种不同的方式配置:
对每个镶嵌颗粒使用 侧车文件 ,与包含其封装外形的颗粒同名的形状文件;
通过使用一个名为 footprints.shp 包含每个颗粒的所有脚印;每个脚印与 位置 属性;
通过使用名为 footprints.properties .
当前两个选项不可用并且需要在 footprints.properties 文件::
footprint_source=*location of the Shapefile*
footprint_filter=*filter on the Shapefile searching for the attribute associated to each granule*
例如,如果Shapefile调用 假肢 将各种足迹存储在这样的表中,其中 Name 属性引用一个颗粒文件:
相关颗粒为:
Ortho_1-1_1n_s_la087_2010_1.tif
Ortho_2-2_1n_s_la075_2010_1.tif
Ortho_1-1_1n_s_la103_2010_1.tif
等等……
相关的 footprints.properties 文件必须如下:
footprint_source=fakeShapeFile.shp
footprint_filter=Name=strSubstring(granule.location, 0, strLength(granule.location) - 4)
子字符串操作用于比较footprint属性名和没有 .tif 延伸。
足迹有三种可能的行为:
None :不使用封装外形,表现得像标准的图像拼接层;
透明 :在示意图外部的图像部分添加0的alpha带,使其透明,通常用于RGB数据;
Cut :设置足迹外部图像部分的背景值,通常用于灰度数据。
行为必须直接在层配置页面上设置。
另一个特点 足迹 是否有可能计算 插图 图像的。 插图 是通过用户定义的值来减少封装外形边界,该值通常用于删除压缩工件。此功能可以通过在内部添加以下代码来实现 footprints.properties (对于前两种配置,必须添加此文件)::
footprint_inset=*value in the shapefile u.o.m.*
footprint_inset_type=*full/border*
Full inset type计算每个封装外形侧的inset,同时 边框 执行相同的操作,但避免了那些与图像边界重叠的直线;最后一个参数对于已在常规网格中剪切的图像非常有用。
每一次修改 footprints.properties 文件需要执行以下操作 Reload Geoserver。此操作可以通过转到 Server Status 并点击 Reload 按钮位于页面的右下角。
本教程中使用的两个数据集可以在此处下载: Mosaic with a single image 代表博尔德(科罗拉多州), Mosaic with multiple images 代表意大利。第一个可以用于测试封装外形配置 侧车文件 第二种是其他两种配置。
实例¶
这里提供了一些步骤来配置一个具有足迹的新ImageMosaic层。
步骤1:创建新的ImageMosaic层¶
如前所述,可以通过
.
可以通过转到 publish 按钮。
,选择上面创建的数据存储的名称,然后单击步骤2:为马赛克配置新层¶
在新页面中,本教程唯一感兴趣的字段是 FootprintBehavior :

用户可以为上述封装外形行为设置三个值之一。
之后,用户必须单击 Save 页面底部的按钮。
步骤3:示例结果¶
这里给出了每个数据集的结果。
封装外形配置 侧车文件¶
这是一个不应用足迹的马赛克示例:
这是设置的结果 FootprintBehavior 到 Cut :
背景是灰色的,因为在这个例子中 BackgroundValues 字段设置为-20000。
如果添加了插页,则最后的马赛克是:
这个 footprints.properties 文件是::
footprint_inset=0.01
footprint_inset_type=full
备注
记住每次修改 footprints.properties 需要 再装填 用于查看结果。
备注
配置此马赛克时,必须设置 申报的CRS 字段到“爱普生:4326".
封装外形配置 footprints.shp¶
这是另一个没有足迹的马赛克示例:
现在在设置之后 FootprintBehavior 到 透明 (不使用插入)在层上:
封装外形配置 footprints.properties¶
备注
为了测试此功能,用户必须重命名 footprints.xxx 文件到 mask.xxx .
设置的结果 FootprintBehavior 到 透明 ,插入类型为 边境 0.00001的插入值为:
这个 footprints.properties 文件是::
footprint_source=mask.shp
footprint_inset=0.00001
footprint_inset_type=border
栅格遮罩¶
从2.8.x版本开始,GeoServer还可以支持栅格遮罩。这些掩码可以是内部的,也可以是外部的(在这种情况下,掩码文件应该使用 .msk 扩展名),对于每个文件。掩码文件的像素大小、地理参考和CRS应与其所掩蔽的图像相同,这一点至关重要。
必须指出的是,外部/内部遮罩可能具有与相关原始图像类似的概述。
有关面罩带的更多信息,请访问 GDAL Mask Band Page
备注
栅格遮罩仅支持geotiff格式,不考虑插入定义。同样的支持也用于由geotiff文件制成的imagemosaic或imagepyramid。
A footprints.properties 利用栅格遮罩的文件如下:
footprint_source=raster
备注
栅格遮罩不支持控制插入。
下面您可以找到一个使用栅格遮罩配置马赛克的示例:
步骤1:创建新的ImageMosaic层¶
从下面下载数据 link
并配置一个名为 拉斯特马斯克 不更改默认配置参数。
zip文件包含两个图像及其相关 .msk 文件夹。在本例中,两个遮罩是两个简单的正方形。
第2步:使用图层预览查看图层¶
去
.结果应该与下面的结果类似。
步骤3:更改示意图行为¶
改变 FootprintBehavior 参数到 透明 . Cut 值不应使用,因为文件是RGB。

步骤4:检查结果¶
去
. 结果现在应该改变了。
多级几何遮罩¶
从2.14.x版本开始,geoserver还可以支持多级概述几何图形(每个概述的几何图形示意图存储在单独的侧车文件中)。
A footprints.properties 利用多个WKB sidecar文件的文件如下:
footprint_source=multisidecar
footprintLoaderSPI=org.geotools.coverage.grid.io.footprint.WKBLoaderSPI
overviewsFootprintLoaderSPI=org.geotools.coverage.grid.io.footprint.WKBLoaderSPI
overviewsRoiInRasterSpace=True
overviewsSuffixFormat=_%d
笔记:
足迹加载程序 :包含用于主示意图加载的SPI实现的完全限定名(可选属性)。如果未指定,将通过扫描可用的SPI自动找到正确的封装外形加载程序)。当前支持的值为:
wkb概述的org.geotools.coverage.grid.io.footprint.wkboaderspi
wkt概述的org.geotools.coverage.grid.io.footprint.wktloaderspi
用于形状文件概述的org.geotools.gce.imagemosaic.catalog.shapefileloaderspi
打印机加载程序概述 :包含用于加载概述封装外形的SPI实现的完全限定名(可选属性)。未指定时,将使用与footprintLoaderSpi相同的加载程序(如果提供);
概述空间 :指定概述ROI示意图几何图形是在栅格空间还是模型空间坐标中。(可选属性。默认值为False,这意味着概述示意图位于模型空间中);
概述表单 :指定用于定义概述示意图文件名后缀的字符串格式语法。(可选属性。默认为%d)。举个例子,如果granular文件是R1C1.tif,并且相关的第一个概览示意图存储在R1C1-Ov1.wkt中,overviewsuffixformat应该是%d。如果第一个概览示意图存储在R1C1-Ov1.wkt中,overviewsuffixformat应该是-Ov%d。
配置具有足迹管理的ImageMosaic层需要上一节的相同步骤。