将图像分割为足迹和节点值的最快算法

时间:2018-02-26 10:33:26

标签: algorithm image-processing classification

我有一个随机卫星图像,可分为两类:

1)no data values(所有像素值相等且随机地随图像而变化)

2)footprint(所有像素值都是随机的)

no datafootprint的所有值之和得到bounding box

将随机卫星图像划分为这两个类的最快算法是什么?

_RoundRobinKeyFn

更新

  

no data value - 区域是否始终位于图像的边框?

No data value 可以在footprint内,并且可能不存在。

  

no data-values总是黑吗?

不,它的价值可能因图片而异。但是在一张图片中总是彼此相等。

  

no data value - 颜色是否出现在足迹内?

大多数图像都是灰度图像,可能是16位,8位数据格式。但我需要通用算法。特定于案例的算法不是我想要的。

更新2:

我目前的做法是:

1)获取bounding box边界

上的每个像素值

2)取最频繁的值并将其设为nodata

3)将图像重新分类为2个类,其值为:NoData value - nodata class, 1 - footprint class

4)将值为1的栅格像素转换为矢量格式

对于大图像,需要超过5分钟才能获得足迹的矢量寄宿。

1 个答案:

答案 0 :(得分:0)

一种简单的方法是乘以像素强度。从您上传的图像中,无数据值基本上为0强度。而不是采用复杂的方法,只需将图像强度乘以1000即可。

我使用OpenCV并可以在4行代码中分割出区域。 这是一个例子 -

enter image description here enter image description here