-
ClaskNN: Clasificador por número de vecinos más próximos
Acceso directo de la ayuda en Internet: ClaskNN
Acceso a la aplicación desde el menú: "Herramientas | Clasificación de imágenes | Clasificador por número de vecinos más próximos (kNN)"
Presentación y opciones
Esta aplicación efectúa una clasificación supervisada de una imagen (monobanda o multibanda) utilizando el método kNN. kNN es el acrónimo de k (que hace referencia a un número preestablecido de píxeles entre los píxeles usados para definir las clases deseadas en el mapa categórico que se desea obtener) y NN (nearest neighbors, vecinos más próximos). El método asume que es plausible que los píxeles próximos entre sí en el espacio estadístico pertenezcan a la misma clase informacional.
Para cada píxel de la imagen a clasificar, se calcula la distancia euclidiana (en el espacio estadístico de representación de las variables independientes) a cada píxel de las áreas de entrenamiento. Se eligen los k píxeles más próximos de entre los de las áreas de entrenamiento y la clase predominante de este grupo de k píxeles será la clase que se le asigna al píxel a clasificar. Para calcular la clase predominante, se permiten dos opciones: la primera mediante la moda y la segunda aplicando un peso en función del inverso de la distancia (es decir, que en el cálculo de la moda las muestras más cercanas en el espacio estadístico pesan más). El fichero o ficheros de entrada tienen que ser rásters en formato IMG y el tipo de datos puede ser cualquiera de los soportados por MiraMon. Para más información se puede consultar el documento Descripción de los formatos ráster de MiraMon.
A diferencia de otros clasificadores, en que el número de muestras utilizadas para definir las clases no es relevante en la fase de asignación, el kNN es sensiblemente más lento cuantas más muestras existen.
Por defecto esta aplicación carga todas las imágenes en memoria, lo que le permite realizar los procesos de manera más ágil. Sin embargo, en ordenadores con pocos recursos respecto del tamaño de las imágenes esta estrategia puede no ser viable. Es por ello que la opción "No cargar las imágenes a clasificar en memoria" permite indicar al programa que durante los procesos se mantengan en memoria sólo aquellos datos que necesita en cada momento, ni que esto implique una ralentización de la ejecución. La aplicación conmuta automáticamente a este modo si no tiene suficiente memoria disponible, por lo que habitualmente no es necesario activarlo expresamente.
Esta aplicación está paralelizada, tanto en las versiones de 32 como de 64 bits, con lo cual es posible que distribuya el trabajo entre los núcleos de procesador disponibles en el ordenador donde se ejecuta. Si, por ejemplo, se dispone de un ordenador con dos procesadores de 20 núcleos cada uno, se puede conseguir reducir casi 40 veces el tiempo necesario para obtener los resultados, utilizando todos los núcleos disponibles, lo que se puede hacer con el parámetro correspondiente en un valor indicado por "MAX"; cuando se indica que el número de núcleos a emplear es MAX, la aplicación utiliza todos los núcleos. Sin embargo, a veces se puede preferir no comprometer toda la capacidad de cálculo del ordenador e indicar SUB_MAX (dejará un procesador libre para otros procesos que se estén haciendo) o indicar un valor numérico concreto inferior, en todos los casos a través de la opción "Número de núcleos de procesador a utilizar". Pedir más núcleos de los realmente disponibles es posible, creando otros virtuales, pero esto no acelera el procesado, sino al contrario. El Administrador de tareas de Windows permite conocer de qué número total de núcleos dispone el ordenador; también puede saberse ejecutando la aplicación en modo MAX, ya que indicará por pantalla cuántos núcleos está utilizando.

Caja de diálogo de la aplicación
|
Caja de diálogo del Análisis de Componentes Principales |

Sintaxis
Sintaxis:
- ClaskNN TipoCalculo ListaFicherosIMG FicheroClass FicheroAE NumVecinos [/MaxDist] [/NVeinsMin] [/MaxBandesNODATA] [/AEAmbNODATA] [/PertMax] [/VariablesAE] [/DISC] [/N_Proces] [/2_CLASSES_RESULT] /MapaDistMin /MapaDistMax /MapaMedianDist /MapaNPixAE /MapaIncert /MapaFKM
Parámetros:
- TipoCalculo
(Tipo de cálculo -
Parámetro de entrada): Método de cálculo de la clase predominante:
- 2 Mediante la moda después de aplicar un peso respecto al inverso de la distancia.
- ListaFicherosIMG
(Lista de ficheros ráster de entrada -
Parámetro de entrada): Lista de los ficheros ráster de entrada.
- FicheroClass
(Fichero resultado -
Parámetro de salida): Fichero resultado de la clasificación.
- FicheroAE
(Fichero áreas de entrenamiento -
Parámetro de entrada): Fichero de las áreas de entrenamiento.
- NumVecinos
(Número de vecinos -
Parámetro de entrada): Parámetro del número de vecinos más próximos (k del algoritmo).
Modificadores:
/MaxDist=
(Distancia máxima para ser candidato a uno de los k vecinos)
Distancia máxima por sobre la cual un píxel de un área de entrenamiento no puede ser candidato a convertirse en uno de los k vecinos. (Parámetro de entrada) /NVeinsMin=
(Número de vecinos mínimo para clasificar un píxel)
Número de vecinos mínimo para clasificar un píxel. (Parámetro de entrada) /MaxBandesNODATA=
(Tolerancia de variables con sindatos)
Número máximo de variables con valor sindatos para clasificar un píxel y no considerarlo sindatos. Si se desea usar el máximo permitido indíquese MAX. Si se indica el parámetro especial MAX, automáticamente clasifica con este parámetro inicializado al número de bandas menos 1. Por el contrario, si no se indica el parámetro, equivale a indicar un 0 (es decir, que sólo que falte un solo dato en el conjunto multivariante, el píxel no será clasificado). (Parámetro de entrada) /AEAmbNODATA
(Aceptar áreas de entrenamiento con sindatos)
Aceptar áreas de entrenamiento con sindatos en alguna de las variables. (Parámetro de entrada) /PertMax=
(Pertenencia máxima)
Pertenencia máxima para calcular el mapa de incertidumbre. Sólo aplica si se solicita crear MapaFKM o MapaIncert. Puede ser la suma de pertenencias del píxel (valor por defecto) o bien un valor definido por el usuario. (Parámetro de entrada) /VariablesAE=
(Listado variables de las áreas de entrenamiento)
Listado de variables donde se leerán los valores de las áreas de entrenamiento para hacer la clasificación. Si no se indica ninguno, se utilizarán las variables de entrada (las del parámetro 'FicheroAE'). (Parámetro de entrada) /DISC
(Forzar a no cargar las imágenes a clasificar en memoria)
Útil para ordenadores con muy poca memoria en relación al tamaño de los ficheros a ser utilizados en la clasificación. En general no hace falta aplicarlo debido a que si el programa se queda sin memoria conmuta automáticamente a este modo. (Parámetro de entrada) /N_Proces=
(Número de núcleos de procesador a utilizar)
Se puede indicar un número concreto de procesador o "MAX" (para utilizar todos los procesadores) o "SUB_MAX" (para utilizar todos los procesadores menos uno). (Parámetro de entrada) /2_CLASSES_RESULT
(Generar ráster clasificación en segunda instancia)
Permite generar un segundo ráster con el resultado de la clasificación en segunda instancia. (Parámetro de entrada) /MapaDistMin=
(Mapa de distancia mínima)
Mapa de distancia mínima a las áreas de entrenamiento con las cuales se ha tomado la decisión de clasificar el píxel en una clase concreta. (Parámetro de salida) /MapaDistMax=
(Mapa de distancia máxima)
Mapa de distancia máxima a las áreas de entrenamiento con las cuales se ha tomado la decisión de clasificar el píxel en una clase concreta. (Parámetro de salida) /MapaMedianDist=
(Mapa de la mediana a las distancias)
Mapa de la mediana a las distancias a las áreas de entrenamiento con las cuales se ha tomado la decisión de clasificar el píxel en una clase concreta. (Parámetro de salida) /MapaNPixAE=
(Mapa del número de vecinos de las áreas de entrenamiento)
Mapa del número de vecinos de las áreas de entrenamiento utilizados. (Parámetro de salida) /MapaIncert=
(Mapa de incertidumbre)
Mapa de incertidumbre. (Parámetro de salida) /MapaFKM=
(Mapa fuzzy k-means)
Mapa fuzzy k-means (parecido al mapa de incertidumbre). (Parámetro de salida)
