superpixels

说明

[L,NumLabels] = superpixels(A,N) 计算二维灰度或 RGB 图像 A 的超像素。N 指定您要创建的超像素的数量。该函数返回 Ldouble 类型的标签矩阵）和 NumLabels（计算出的实际超像素数）。

superpixels 函数使用简单线性迭代聚类 (SLIC) 算法 。此算法将像素划分为具有相似值的各个区域。在图像处理运算（如分割）中使用这些区域可以降低这些运算的复杂度。

[L,NumLabels] = superpixels(A,N,Name,Value) 使用用于控制分割的各个方面的名称-值对组参数计算图像 A 的超像素。

示例

[L,N] = superpixels(A,500);

figure
imshow(imoverlay(A,BW,'cyan'),'InitialMagnification',67) outputImage = zeros(size(A),'like',A);
idx = label2idx(L);
numRows = size(A,1);
numCols = size(A,2);
for labelVal = 1:N
redIdx = idx{labelVal};
greenIdx = idx{labelVal}+numRows*numCols;
blueIdx = idx{labelVal}+2*numRows*numCols;
outputImage(redIdx) = mean(A(redIdx));
outputImage(greenIdx) = mean(A(greenIdx));
outputImage(blueIdx) = mean(A(blueIdx));
end

figure
imshow(outputImage,'InitialMagnification',67) 输入参数

名称-值对组参数

'slic0'

superpixels 在第一次迭代后使用 SLIC0 算法以自适应方式优化 'Compactness'。这是默认设置。

'slic'

'Compactness' 在聚类过程中保持不变。

输出参数

 Radhakrishna Achanta, Appu Shaji, Kevin Smith, Aurelien Lucchi, Pascal Fua, and Sabine Susstrunk, SLIC Superpixels Compared to State-of-the-art Superpixel Methods. IEEE Transactions on Pattern Analysis and Machine Intelligence, Volume 34, Issue 11, pp. 2274-2282, May 2012