java图像白色提取

时间:2014-03-21 12:04:09

标签: java image postgresql image-processing postgis

如何将每种白色图像提取到单独的部分中,如下所示?enter image description here

从上图中,提取后将有九个单独的部分

我尝试了几种算法,例如fillgrid,但不完全符合我的预期。

以便我可以将每个部分存储到PostGIS数据库中作为多边形几何

我可以使用什么算法? 或者也许在java或postgis库中有一个函数?

2 个答案:

答案 0 :(得分:0)

This thread可能对您有帮助,但我认为您可以通过查找图片中的颜色差异来实现此目的。

答案 1 :(得分:0)

您需要将栅格数据“多边形化”为矢量。

其中一个工具来自GDAL,最初使用C ++编写方法,但也绑定了Java。

使用Polygonize方法的一些进一步提示是,您需要将栅格的值分类为“NO DATA”值,然后将剩余数据部分多边形化。生成的多边形可以放置在大多数地理空间矢量格式中,包括PostGIS数据库。


另一种解决方案是将图像加载到PostGIS栅格中,然后使用ST_PolygonST_DumpAsPolygons执行与GDALPolygonize基本相同的任务,但选项更少。