ee.Algorithms.Image.Segmentation.GMeans

Executa o clustering G-Means na imagem de entrada. Aplica de forma iterativa o k-means seguido de um teste de normalidade para determinar automaticamente o número de clusters a serem usados. A saída contém uma banda "clusters" com o ID inteiro do cluster a que cada pixel pertence. O algoritmo pode funcionar em uma grade fixa de células não sobrepostas (gridSize, que pode ser menor que um bloco) ou em blocos com sobreposição (neighborhoodSize). O padrão é usar blocos sem sobreposição. Os clusters em uma célula ou bloco não estão relacionados aos clusters em outra. Qualquer cluster que abranja um limite de célula ou bloco pode receber dois rótulos diferentes nas duas metades. Todos os pixels de entrada com máscaras parciais são totalmente mascarados na saída. A expectativa é que esse algoritmo funcione bem apenas para imagens com um intervalo dinâmico estreito (ou seja, bytes ou shorts).

Consulte G. Hamerly e C. Elkan. "Aprendendo o k em k-means". NIPS, 2003.

UsoRetorna
ee.Algorithms.Image.Segmentation.GMeans(image, numIterations, pValue, neighborhoodSize, gridSize, uniqueLabels)Imagem
ArgumentoTipoDetalhes
imageImagemA imagem de entrada para clustering.
numIterationsNúmero inteiro, padrão: 10Número de iterações. O padrão é 10.
pValuePonto flutuante, padrão: 50Nível de significância para o teste de normalidade.
neighborhoodSizeNúmero inteiro, padrão: 0Tamanho da vizinhança. A quantidade para estender cada bloco (sobreposição) ao calcular os clusters. Essa opção é mutuamente exclusiva com "gridSize".
gridSizeNúmero inteiro, padrão: nuloTamanho da célula da grade. Se for maior que 0, o kMeans será executado de forma independente em células desse tamanho. Isso limita o tamanho de qualquer cluster a gridSize ou menor. Essa opção é mutuamente exclusiva com "neighborhoodSize".
uniqueLabelsBooleano, padrão: verdadeiroSe for "true", os clusters vão receber IDs exclusivos. Caso contrário, eles se repetem por bloco ou célula de grade.