颜色平衡并在Geoserver中发布大量高分辨率图像


11

我有大量的RapidEye图像(+300 Gb),我想用作在线应用程序的底图。到目前为止,我已经按照名为“类固醇中的Geoserver”的演示文稿中显示的步骤设法在geoserver中将它们用作ImagePyramid。问题是我无法进行适当的色彩平衡,因此在查看整个数据集时,马赛克看起来很差,但是当我放大时,马赛克会变得更好(下面的图片)。

我的过程是:

  1. 使用Gdal将所有图像转换为8位,epsg 4326,三次插值
  2. 使用所有图像生成Gdal虚拟栅格(gdalbuildvrt)
  3. 生成图像金字塔(带有压缩和geotiff耕作的gdal_retile)并发布在geoserver上(使用图层样式中的直方图拉伸)

关于如何改善流程并获得更好的色彩平衡的任何技巧?

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

Answers:


6

我相信我明白了。

在转换为8bit的过程中,我在每个RapidEye图像中强制执行平均+ -2标准偏差直方图拉伸。

我使用python脚本来识别图像的最小值,最大值,平均值和SD。然后,我将平均值-2SD(或图像最小值,以较高者为准)的值设置为2,将平均值+ 2SD(或最大值)设置为254。为了安全起见,将图像中的原始零值设置为1,然后2 ^ 16设置为255。NoData设置为0。

这些是传递函数向量:

original image values = [0, mean-2SD, mean+2SD, 65536]
rescaled values = [1 2, 254, 255]

以下是一些屏幕截图。我现在要解决的问题是

  1. 删除图像金字塔周围的黑色边框
  2. 完全缩放时可获得更好看的图像。现在看来,旧电视已调到错误的频道

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

编辑
我现在将代码放置在GitHub上。自从我使用它已经有一段时间了。代码有点混乱,存储库也是如此。但是应该仍然有效。
https://github.com/dvictori/rapideye_hist2sd


先生,先生 为此,您每10就有10。至于您的第二个关注点(在完全缩放时更好看),您是否可以简单使用诸如LandSat或ASTER之类的较低颗粒图像?我认为放大后的粗略图像看起来会更好。..关于您的第一个问题,我自己仍在努力解决这个问题。我很乐意看到有关如何执行此操作的详尽文章,包括愿意共享的py脚本。您打算在任何地方展示您的方法吗?
elrobis 2014年

我没有打算提出这个建议或写一篇文章。但是现在您提到了,谁知道。关于适当的媒体来表达这一点有什么建议吗?至于py脚本,可以从dropbox.com/s/1hfobfp9ymtku2n/rapideye_hist2sd.py下载 。但是,请注意。我认为自己是个cr脚的程序员,并且我确信我的程序可以使用很多改进。
丹尼尔(Daniel)

2
我更改了上述评论的下载链接。如果你想看看我用Python代码,欢迎您下载它从 goo.gl/ePEc7G
丹尼尔·

谢谢@丹尼尔。我开设了一个博客,在其中发布有关此类内容的操作方法。如果我偶然发现一些不容易的事情,并且在网络上找不到太多帮助,那么我会写一篇博客,有几个原因。首先,我假设我需要在某个时间重复执行该任务,因此,如果将这些步骤合并为一个帖子,那么以后可以轻松地对其进行回顾。其次,我认为外面总是会有人想要做类似的事情,他们可能会从这个职位中受益。即使这是您一段时间以来的唯一博文,您在这里所做的工作还是非常值得写博客的。:)
elrobis

这是一个了不起的主意,我正在尝试将其适应于较小的帧(从8位到8位的3波段相机),但是在实现时遇到了一些麻烦。如何将输入图像的目录定向到此脚本?他们从哪里来?我猜这一定都是通过geoserver运行的,但是我可以将其分解并独立运行吗?
2015年

4

丹尼尔(Daniel),这些图像来自不同的季节吗?还是一天中的时间?如果季节不同,则很难获得良好的色彩平衡。但是,如果一天中的时间不同,那么对太阳角度进行校正可能会很有帮助。一个良好的太阳角一阶近似值是将像素乘以1.0 / cos(angle_of_sun_off_direct_above)。因此,如果太阳正好在上方,则无需进行调整,随着接近黎明/黄昏,光线会增加到无限远。

过去我在重叠区域上的场景之间使用直方图匹配来组装大型镶嵌图时,效果很差,因为在整个镶嵌图上会得到奇怪的漂移效果。我认为一种更有用的方法可能是将直方图与基础颜色目标图像进行匹配(也许是该区域的有吸引力的Landsat马赛克)。我也对如何解决此问题感兴趣。MapBox的Charlie Loyd可能也有想法。


弗兰克(Frank),图片大多来自干旱季节,当时云量很低。但是有来自不同月份的图像,例如8月,11月等。我现在尝试将图像分成小块,并对每个块进行马赛克。会让您知道结果。我还编写了一个python脚本来进行CDF匹配,当我有少量图像(20)时,它可以很好地工作(不好),但是当我有大量图像时,其中一幅图像必然具有超出我的值参考图像范围,然后一切停止工作。可能必须考虑选择参考图像的更好方法。
丹尼尔(Daniel)

0

有时,我使用带有直方图匹配的OSSIM图像链接器来制作色彩平衡的马赛克。图像链接器教程提供了一些示例http://download.osgeo.org/ossim/docs/pdfs/ImageLinker_Tutorial.pdf。 但是,图像链接器没有得到积极维护,我不知道它是否可以继续工作。Ossim geocell是当前程序,但是有关该程序的用户文档很少。我记得为了获得良好的效果,我使用OpenEV首先对Landsat场景进行了预处理,方法是应用一些LUT拉伸使图像在视觉上具有相同的外观。这样,OSSIM可以更轻松地进行最终匹配。最终产品的外观和我用ER Mapper马赛克实用程序制造的产品一样好。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.