主要内容

块土地分类颜色特征和Superpixels

这个例子展示了如何执行土地类型分类使用k - means聚类和superpixels基于颜色特征。Superpixels可以是一种非常有用的技术执行分割和分类时,特别是当处理大型图像。Superpixels允许您将一个图像分解成一组结构有意义的区域,在每个区域的边界考虑原始图像中的边缘信息。一旦你把图像分解成superpixel区域、分类算法可以对每个区域进行分类使用,而不必全部原始图像网格解决分类问题。使用superpixels可以提供巨大的性能优势解决图像分类问题,同时提供一个高质量的分割结果。

读一个图像到工作区中。为更好的性能,本例中减小图片的大小的一半。视觉上,有四种类型的土地中区分出来的蓝色大理石图像仅基于颜色特征:森林地区,干/沙漠地区,冰雪覆盖的地区,和水。

url =“https://eoimages.gsfc.nasa.gov/images/imagerecords/74000/74192/”+“world.200411.3x5400x2700.jpg”;一个= imread (url);= imresize (0.5);imshow (A)

将图像转换为L * a * b *颜色空间。

Alab = rgb2lab(一个);

计算superpixel oversegmentation原始图像和显示。

[L, N] = superpixels(20000年Alab isInputLab = true);BW = boundarymask (L);imshow (imoverlay (BW,“青色”))

创建一个单元阵列每个区域的像素的集合。

pixelIdxList = label2idx (L);

确定每个superpixel地区的平均颜色L * a * b *颜色空间。

[m, n] =大小(左);meanColor = 0 (m, n 3“单身”);i = 1: N meanColor (pixelIdxList{我})=意味着(Alab (pixelIdxList{我}));meanColor (pixelIdxList{我}+ m * n) =意味着(Alab (pixelIdxList{我}+ m * n));meanColor (pixelIdxList{我}+ 2 * m * n) =意味着(Alab (pixelIdxList{我}+ 2 * m * n));结束

集群每个superpixel通过使用的颜色特征imsegkmeans函数。

numColors = 4;(鞠躬,提出)= imsegkmeans (meanColor、numColors numAttempts = 2);提出= lab2rgb城市规划机构(cmap);imshow (label2rgb(鞠躬)

使用集群中心作为colormap专题地图。的意思是颜色可以直接使用k - means聚类中发现colormap给一个更自然的目视判读的土地分类作业的森林,冰,陆地和水。

imshow(双(鞠躬),提出)