-
MicroPol: Eliminación de polígonos y de micropolígonos de un fichero de polígonos o de un ráster categórico
Acceso a este texto de ayuda como página web: MicroPol
Presentación y opciones
Esta aplicación permite tres opciones para eliminar micropolígonos:
Opción 1 (Vectorial local):
Realiza un estudio local de cada micropolígono sin tener en cuenta que pueda estar en contacto con otros micropolígonos. Para eliminar los micropolígonos sólo se elimina uno de los arcos que hace de frontera. La aplicación elimina el arco más largo o el arco que linda con el polígono más grande, según un parámetro. De todos modos, el polígono 0 (o polígono cero: frontera exterior) es una excepción de estos criterios porqué se presupone que en general la frontera del polígono 0 está mejor definida. Esto es especialmente cierto en los ficheros de polígonos que provienen de una serie cartográfica porque la frontera de polígono 0 suele ser un rectángulo o trapezoide y no es conveniente que sus lados dejen de ser rectilíneos. Es por ello que la aplicación sólo elimina un arco que linda con el polígono 0 si es la única forma de eliminar el micropolígono. Sin embargo, durante la eliminación de micropolígonos se generan, en casos complejos, arcos con nodos finales y halters (mancuernas). Estas estructuras no son ciclables y también son eliminadas automáticamente. Esto obliga a la aplicación a eliminar algunos arcos frontera extra.
Opción 2 (Vectorial global):
Realiza un estudio global de la capa eliminando los micropolígonos empezando por el más pequeño de todos y progresando hasta que no queda ningún polígono de área más pequeña que la indicada. Además este modo realiza un análisis previo de polígonos con zonas estrechas. Estas zonas estrechas son truncadas en nuevos polígonos para ser eliminados posteriormente si se convierten en polígonos pequeños. También incorpora una tabla de afinidades temáticas que permite priorizar la fusión de determinas categorías cuando el micropolígonos esté en contacto con más de un polígono adyacente, lo que permite fundir el micropolígono en una clase que tenga más sentido temáticamente. En caso de empate se utilizan también los criterios de frontera más larga o área más grande para determinar el polígono adyacente donde será absorbido este polígono. La fusión elimina todos los arcos de contacto entre los dos polígonos a fundir. Los atributos de los arcos siempre son recuperados como registro múltiple del polígono más grande. También se guarda el área que ocupaba de cada atributo antes de fundir los polígonos. Finalmente se hace una revisión que por defecto funde los polígonos que presentan el primer atributo igual. Este comportamiento se puede cambiar con el parámetro /RESPECTAR_1_REG que evita fundir un polígono monoregistro con otro multiregistro, o con /RESPECTAR_N_REG que evita fundir los polígonos que no tengan exactamente los mismos atributos temáticos en el multiregistro.
Opción 3 (Ráster):
Elimina grupos de celdas presentes en un ráster categórico (por ejemplo un mapa de cubiertas del suelo) y asimilarlos a la categoría más abundante en un entorno inmediato de 3x3 celdas, de 5x5 celdas, etc
CASO POLÍGONOS
Una de las características de las bases gráficas de polígonos topológicamente estructuradas es la descripción exhaustiva de todo su espacio interior, con lo cual se posee un conocimiento completo de cada uno de los objetos gráficos (polígonos) que las forman, tanto desde el punto de vista geométrico como temático. A veces una base de polígonos puede contener "agujeros" temáticos en su interior, es decir, polígonos que no tienen ningún atributo temático asignado y que deseamos visualizar como "transparentes" e ignorarlos temáticamente ("no consultables"); podría ser el caso, por ejemplo, del interior de un atolón en medio del océano. Esta situación es topológicamente correcta y soportada por MiraMon. Sin embargo, esta no es la situación más frecuente, y muchas veces la presencia de polígonos sin etiquetas temáticas responde simplemente a un descuido o quizás a la existencia de pequeñas zonas resultado de imprecisiones y errores en la base gráfica.
En el primer caso, cuando la falta de atributos corresponde a un descuido, la simple consulta por atributos desde MiraMon, solicitando aquellos elementos con atributos "en blanco", y de una superficie razonablemente grande, permitirá identificarlos sin problema. La identificación visual resulta especialmente fácil si se pide, en el botón Avanzadas... de visualización, que se dejen transparentes (no se pinten) los polígonos sin atributo. Una vez identificados los polígonos, se etiquetan y el problema queda resuelto.
El segundo caso, en cambio, suele estar formado por polígonos de dimensiones muy reducidas que reciben el nombre de micropolígonos. Esta aplicación pretende ayudar a la detección y eliminación de micropolígonos, tarea frecuentemente pesada por el hecho de que en determinadas circunstancias pueden aparecer en gran cantidad. En efecto, si cuando se genera cartografía se respetan unas reglas básicas, como el uso de herramientas de conexión (Edición|Conectar sobre vector previo en MiraMon), prácticamente nunca aparecerán micropolígonos, pero en caso contrario, o cuando se importan ficheros que provienen de otras fuentes (especialmente desde un programa de CAD, o desde formatos sin topología, como SHP), quizás sea necesario aplicar este filtro.
Esta aplicación permite eliminar los micropolígonos que cumplen una serie de condiciones. En general, un micropolígono es un objeto pequeño, a veces alargado y, a menudo, sin etiqueta temática. Por ello, presenta un área pequeña, una relación área/perímetro pequeña (perímetro grande y área pequeña) y no ha sido etiquetado. Esta aplicación incorpora estos tres criterios y un criterio adicional para poder marcar un polígono como eliminable mediante un campo lógico de la base de datos principal de polígonos.
MicroPol genera una nueva capa de polígonos seleccionando los arcos necesarios de la base original de arcos, que permanece intacta. Una vez ejecutado esta aplicación es posible que se desee obtener una base de arcos filtrada, formada únicamente por los arcos necesarios para construir los polígonos. Esta puede generarse con la aplicación Emancipa.
Formato del archivo de afinidades
La tabla de afinidades, sólo necesaria en usos altamente profesionales de eliminación de micropolígonos, es una tabla DBF con la siguiente estructura:
- [NOM_CAMP1]: coincide con un nombre de campo de la tabla principal del archivo de polígonos. Su contenido son los valores de los campos de los micropolígonos a eliminar.
- [NOM_CAMP#]: coincide con el enésimo nombre de campo.
- ...
- ABSOR1: este campo, de nombre fijado, contiene los valores del campo de la tabla principal de nombre NOM_CAMP1 de los polígonos que absorbe.
- ABSOR#: lo mismo para el enésimo campo. El número de campos de este nombre incremental es el mismo que el número de nombres de campo libres del principio de la tabla.
- ...
- PRIORITAT: es el índice de prioridad de esta combinación de atributos. Valores altos representan alta afinidad. El parámetro /AFIN_ORDRE de sintaxis permite invertir esta interpretación. Es posible asignar el mismo valor a varias combinaciones.
Es importante notar que este esquema permite definir prioridades asimétricas, es decir, que si el valor de micropolígonos A se absorbe con B con prioridad 1, un micropolígonos de valor B puede quedar absorbido en un polígono de valor A con prioridad 15 o ni siquiera tener prioridad asignada (combinación no presente en la tabla).
CASO RÁSTER
Este modo permite eliminar grupos de pocas celdas presentes en un ráster categórico (por ejemplo un mapa de cubiertas del suelo) y asimilarlos a la categoría más abundante en un entorno inmediato (de 3x3 celdas, de 5x5 celdas, etc).
Internamente, la aplicación realiza una vectorización del ráster categórico de entrada teniendo en cuenta la presencia o no del parámetro Ignorar_veins_diagonal y a continuación lo vuelve a rasterizar pero convirtiendo en un valor diferente cualquiera de los valores existentes en el ráster (incluido el sindatos) en todos los polígonos que tienen un área en celdas menor o igual a Area_max. Una vez creado este nuevo ráster que contiene un nuevo valor "bandera" para todos los polígonos ráster con área considerada micropolígonos, se realiza una ejecución equivalente a la que haría la aplicación FagoVal con una ventana de convolución de valor Fin_convol, con un criterio de moda iterando hasta el máximo posible, evitando la asignación a sindatos tanto en eliminar un valor aislado como cuando el sindatos es mayoritario en la ventana de convolución y sin un valor modal mínimo para sustituir el valor central de la ventana de convolución.
Debe notarse que el modo 3 es diferente a los modos que parten de bases vectoriales ya que en el modo 3 la vecindad analizada es inmediata, a distancia de 1 celda (si Fin_convol vale 3), de dos celdas (si Fin_convol vale 5), etc. En cambio, en los modos que parten de bases vectoriales el criterio es diferente (área más grande de todo el polígono en contacto con el micropolígono). Si se desea eliminar los micropolígonos de un ráster con el mismo criterio que en una capa vectorial de polígonos, se debe vectorizar el ráster con RasTop y continuar a partir de la base de polígonos obtenida.
Para más información se puede consultar la siguiente referencia:
Burriel JA, Ibáñez JJ, Masó J (2008) SIOSE en Cataluña: obtención a partir del Mapa de Cubiertas del Suelo de Cataluña. Hernández L, Parreño JM (eds.) Tecnologías de la Información Geográfica para el desarrollo territorial. Servicio de Publicaciones y Difusión Científica de la ULPGC. Las Palmas de Gran Canaria. Pp. 876-889. ISBN: 978-84-96971-53-0. XIII Congreso Nacional de Tecnologías de la Información Geográfica. Las Palmas de Gran Canaria.

Caja de diálogo de la aplicación
|
Caja de diálogo de MicroPol |

Sintaxis
Sintaxis:
- MicroPol 1 FicheroPolOrigen FicheroPolDestino [/FONDRE] [/AREA_MIN] [/AREA_PERI_MIN] [/SENSE_ATRIBUT] [/CAMP_LOGIC] [/NEXE_CRITERIS] [/TAULA_LOGIC_ARC] [/CAMP_LOGIC_ARC] [/ATRIB_ELIM] [/EMANCIPA]
- MicroPol 2 FicheroPolOrigen FicheroPolDestino AreaMin AnchoMin AreaParcial [/FONDRE] [/FITXER_AFIN] [/AFIN_ORDRE] [/DESCARTA_POL_0] [/DESCARTA_POL_LLINDA_AMB_0] [/FONDRE_PER_ARC_ESTRET] [/sufix _ARC_POL_0] [/CAMP_TEMATIC] [/CAMP_TEMATIC_QUALITAT] [/CAMP_AREA_TPERCENT] [/TPERCENT_AREA_MIN] [/RESPECTAR_1_REG] [/RESPECTAR_N_REG] [/COEF_ESTRET] [/FITXER_EXCEP_MIDES] [/_ARC_PROTEGIT] [/FITXER_ARCS_A_AFEGIR] [/EMANCIPA]
- MicroPol 3 FicheroIMGOrigen FicheroIMGDestino Area_max Fin_convol [/IGNORAR_VEINS_DIAG]
Opciones:
- 1:
Realiza un estudio local de cada micropolígono sin tener en cuenta que pueda estar en contacto con otros micropolígonos.
- 2:
Hace un estudio global de la capa eliminando los micropolígonos empezando por el más pequeño de todos y progresando hasta que no queda ningún polígono de área más pequeña que la indicada.
- 3:
Elimina grupos de celdas presentes en un ráster categórico de un área menor al número de celdas indicado por el usuario.
Parámetros:
- FicheroPolOrigen
(Fichero de polígonos origen -
Parámetro de entrada): Es el nombre de fichero de polígonos a procesar.
- FicheroPolDestino
(Fichero de polígonos destino -
Parámetro de salida): Es el nombre del fichero de polígonos resultado del proceso de eliminación de micropolígonos (los archivos FicheroPolOrigen y FicheroPolDestino no pueden ser iguales).
- AreaMin
(Área Mínima -
Parámetro de entrada): Es el área mínima por debajo de la cual los polígonos deben desaparecer.
- AnchoMin
(Ancho mínimo -
Parámetro de entrada): Es el ancho mínimo de una zona del polígono por debajo del cual el polígono se parte en un fragmento totalmente más estrecho que el ancho indicado. Este fragmento será eliminado si presente un área menor de AreaMin.
- AreaParcial
(Área parcial -
Parámetro de entrada): Es el nombre del campo que contiene o se desea que contenga el área parcial de cada registro de los polígonos resultantes en caso de que presente registro múltiple. Este campo permitirá conocer el área ocupada por cada registro antes de la fusión de los micropolígonos. En caso de no existir el campo, la apliación lo crea.
- FicheroIMGOrigen
(Fichero ráster origen -
Parámetro de entrada): Es el nombre de fichero ráster categórico a procesar.
- FicheroIMGDestino
(Fichero ráster destino -
Parámetro de salida): Es el nombre del fichero ráster categórico resultado del proceso de eliminación de micropolígonos. Debe ser un fichero diferente al fichero origen.
- Area_max
(Área máxima a eliminar en celdas -
Parámetro de entrada): Indica qué área máxima en celdas [o píxeles] será eliminada. Por ejemplo, si se introduce un 1 (el valor más pequeño admitido) se eliminarán celdas aisladas, si se introduce un 2 se eliminarán tanto celdas aisladas como grupos de 2 celdas adyacentes, etc.
- Fin_convol
(Ventana de convolución -
Parámetro de entrada): Lado de ventana de convolución. Debe ser un número impar, típicamente 3 o 5. Equivalente al parámetro homónimo de la aplicación FagoVal.
Modificadores:
/AREA_MIN=
(Área mínima)
Valor del área mínima que puede tener un polígono. (Parámetro de entrada) /AREA_PERI_MIN=
(Área/Perímetro)
Valor de cociente área/perímetro mínimo. (Parámetro de entrada) /SENSE_ATRIBUT
(Sin atributo)
Indica que se deben eliminar los polígonos sin atributos temáticos. (Parámetro de entrada) /CAMP_LOGIC=
(Campo lógico)
Corresponde al campo lógico que indica si se tiene que eliminar el polígono. Debe ser de tipo lógico (L). En cada registro de la tabla principal de polígonos, debe indicarse 'verdadero' si hay que eliminar el polígono y 'falso' si hay que mantenerlo. Para saber más sobre los valores de estos parámetros siga las consideraciones del documento de sintaxis general. (Parámetro de entrada) /NEXE_CRITERIS=
(Nexo criterios)
Debe indicarse 'OR' si sólo hace falta que se cumpla un criterio para eliminar el polígono. El valor por defecto es 'AND', que significa que deben cumplirse todos los criterios a la vez. (Parámetro de entrada) /TAULA_LOGIC_ARC=
(Tabla lógica de arcos)
Tabla que contine el campo lógico de la base de arcos que contiene 'verdadero' para los arcos que pueden eliminarse en caso de ser frontera de micropolígono. De no indicarse, todos los arcos se consideran eliminables. Para saber más sobre los valores de este parámetro pueden seguirse las consideraciones del documento de sintaxis general. (Parámetro de entrada) /CAMP_LOGIC_ARC=
(Campo lógico de arcos)
Campo lógico de la base de arcos que contiene 'verdadero' para los arcos que pueden eliminarse en caso de ser frontera de micropolígono. De no indicarse, todos los arcos se consideran eliminables. Para saber más sobre los valores de este parámetro pueden seguirse las consideraciones del documento de sintaxis general. (Parámetro de entrada) /ATRIB_ELIM
(Hereda atributos)
Indica que el polígono que absorbe el micropolígono eliminado hereda sus atributos. Su ausencia significa que los atributos del micropolígono se pierden. Debe notarse que no hay que indicar cuál es el campo o campos que definen si el polígono tiene atributos: se considera que el polígono no tiene atributos si todos los campos no geométrico-topológicos están vacíos, excepto, por supuesto, el CAMP_LOGIC_ARC si este criterio también está activado. (Parámetro de entrada) /FONDRE= (Fundir) Indica a qué polígono se asigna el espacio ocupado por el micropolígono que desaparece. Debe indicarse uno de estos valores: - POL_GRAN para asignar el espacio al polígono contiguo de área más grande.
- FRONTERA_MES_LLARGA para que se elimine el arco más largo del micropolígono que desaparece. Es el valor por defecto.
- POL_PETIT para asignar el espacio al polígono contiguo de área más pequeña. Agrupa los polígonos pequeños entre sí. (solo opción 2).
- FRONTERA_MES_CURTA para eliminar el arco más corto del micropolígono que desaparece. (solo opción 2).
(Parámetro de entrada) /FITXER_AFIN=
(Fichero afín)
Es el fichero DBF que define las afinidades entre atributos temáticos. Este fichero debe tener, como mínimo, 3 campos, de nombres:- El campo que coincide con el nombre del campo temático de la tabla principal de polígonos a considerar su afinidad con los vecinos. Se puede incluir más de un campo si se requiere.
- El campo ABSOR1 que contiene los valores campo temático vecinos al polígono considerado. Se puede incluir más de un campo (ABSOR2, ABSOR3, etc) si se requiere.
- El campo PRIORIDAD que contiene un indicador numérico de la prioridad (o el orden) en el que la correspondencia de valores de los campos anteriores es aplicada.
. (Parámetro de entrada) /AFIN_ORDRE
(Orden afín)
Si se indica este parámetro se asume que un número más pequeño en el campo PRIORIDAD de la tabla de afinidades tiene más afinidad que un número mayor. En su ausencia se asume que un número mayor representa más afinidad. (Parámetro de entrada) /DESCARTA_POL_0
(Descarta polígono exterior)
Indica que no se quiere modificar el borde del polígono 0 (exterior). (Parámetro de entrada) /DESCARTA_POL_LLINDA_AMB_0
(Descarta polígonos umbral exterior)
Indica que no se quiere modificar ningún polígono que limite directamente con el polígono 0 (exterior). (Parámetro de entrada) /FONDRE_PER_ARC_ESTRET
(Fusión por arco estrecho)
Por defecto, la aplicación intenta evitar fusionar polígonos por un arco considerado estrecho dejando esta situación como la última alternativa. Si se indica este parámetro los arcos estrechos son considerados iguales a los demás para fusionar polígonos salvo que los arcos hayan sido creados durante el proceso de fragmentación de polígonos. (Parámetro de entrada) /sufix _ARC_POL_0
(Parámetros de selección de objectos gráficos)
Parámetros de selección de objetos gráficos por atributos de la base de datos de arcos con el sufijo _ARC_POL_0. Limita el comportamiento de /DESCARTA_POL_LLINDA_AMB_0 a los polígonos que lindan con el polígono 0 a partir de arcos que cumplen la condición especificada para la base de datos de arcos. Esta opción es típicamente útil para eliminar los micropolígonos fronterizos con líneas de costa pero mantener, esperando un mosaico con una hoja adyacente, los polígonos en contacto con el borde de una hoja cartográfica. Para más información sobre la sintaxis específica se puede consultar aquí. (Parámetro de entrada) /CAMP_TEMATIC=
(Campo temático)
Indica que campo de la base de polígonos se utiliza para determinar la igualdad temática entre polígonos. Por defecto, TODOS los campos temáticos son considerados para determinar la igualdad temática de los polígonos y atributos a fundir. Para saber más sobre los valores de estos parámetros se pueden seguir las consideraciones del documento de sintaxis general. (Parámetro de entrada) /CAMP_TEMATIC_QUALITAT=
(Campo temático de calidad)
Indica el campo temático de la base de datos de polígonos sobre el que hacer un estudio de la calidad de la generalización sobre un campo. Este estudio se guarda en un fichero HTML del mismo nombre que el fichero de destino pero con extensión .htm. Si no se indiaca este parámetro, la aplicación no realiza el estudio. (Parámetro de entrada) /CAMP_AREA_TPERCENT
(Campo porcentaje)
Además del área parcial, se indica que se quiere generar un campo con el porcentaje de recubrimiento para cada registro de los eventuales multiregistros de la tabla principal de atributos. (Parámetro de entrada) /TPERCENT_AREA_MIN=
(Porcentaje área mínima)
Indica que no se quieren mantener los registros con un porcentaje de área parcial inferior a este valor. La proporción de área parcial perdida se reparte entre el resto de registros que sí que superan este umbral. Si todos los registros tienen un área parcial inferior a la indicada se conserva únicamente el que tenga mayor área. (Parámetro de entrada) /RESPECTAR_1_REG
(Respetar un registro)
Indica que la aplicación intentará preservar el monoregistro en la medida de lo posible. Así, evitará fundir polígonos con multiregistro con otros con monoregistro y sólo fundirá polígonos donde ambos tengan monoregistro o ambos multiregistro. (Parámetro de entrada) /RESPECTAR_N_REG
(Respetar N registro)
Indica que la aplicación intentará preservar el multiregistro en la medida de lo posible. Así, evitará fundir polígonos con multiregistro entre sí cuando alguno los atributos del multiregistro sea diferente. (Parámetro de entrada) /COEF_ESTRET=
(Coeficiente estrecho)
En el caso de la eliminación de fragmentos de objetos estrechos, indica la razón aproximada entre el ancho mínimo y la longitud mínima necesaria para eliminar el objeto. Si se indica 1 todos los fragmentos de polígonos estrechos se eliminan. Si se indica, p. ej., 20, será necesario que el objeto estrecho sea ample_min*20 de largo para permitir su eliminación. El valor predeterminado es 3. (Parámetro de entrada) /FITXER_EXCEP_MIDES=
(Fichero DBF)
Fichero DBF de excepciones a los parámetros AreaMin y AmpleMin. Sólo se puede utilizar si también se indica /FITXER_AFIN= (se necesitará crear una tabla vacía si no se desea definir ninguna afinidad). Este fichero debe tener, como mínimo, 3 campos:- El campo que coincide con el nombre del campo temático de la tabla principal de polígonos a considerar. Se puede incluir más de un campo si se requiere pero el número de campos debe coincidir con la tabla de afinidades.
El campo AREAMIN que contiene el valor del umbral de área mínima para esta categoría o blanco para indicar que hay que usar el valor general indicado en el parámetro obligatorio AreaMin.- El campo AMPLEMIN que contiene el valor del umbral de ancho mínimo para esta categoría o blanco para indicar que hay que usar el valor general indicado en el parámetro obligatorio AmpleMin.
(Parámetro de entrada) /_ARC_PROTEGIT=
(Arco protegido)
Impide la fusión entre polígonos que conecten a partir de arcos que cumplen la condición. Esto permite marcar arcos que marcan divisiones importantes sobre el territorio y que no pueden ser suprimidas. Para más información sobre la sintaxis específica consulte aquí. (Parámetro de entrada) /FITXER_ARCS_A_AFEGIR=
(Fichero de arcos a añadir)
Permite añadir arcos al fichero de arcos para cerrar áreas y generar polígonos que deben ser preservados de manera independiente a otros. Generalmente es útil para digitalizar manualmente fronteras en lugares que hay pequeños polígonos con atributos iguales o similares y que forman una entidad propia separada del resto de la matriz pero que el proceso de generalización convencional habría fusionado completamente con la matriz (dado que no conectan físicamente entre ellos). Estas nuevas fronteras son incorporadas tras el proceso de cortado de polígonos y antes de la fusión. Los arcos se deben digitalizar de forma que cierren áreas, ya sea definiendo anillos o definiendo polígonos para conexión con otras líneas preexistentes o creadas durante el proceso de partir polígonos. En caso de necesitar digitalizar más de una línea para definir un área determinada, es necesaria su digitalización consecutiva. La tabla principal de estos ficheros de arcos debe tener la misma estructura que la tabla principal de los arcos sobre los cuales se estructuran los polígonos. Debe notarse que los arcos añadidos todavía podrían desaparecer durante el proceso de fusión de polígonos; para evitar este efecto debe indicarse el parámetro de selección con sufijo _ARC_PROTEGIT tal como se ha explicado previamente y marcar los arcos añadidos con atributos que hagan que queden protegidos. (Parámetro de entrada) /EMANCIPA (Emancipar el resultado) Indica que se debe obtener un resultado emancipado. (Parámetro de entrada) /IGNORAR_VEINS_DIAG
(Ignorar vecinos en diagonal)
Indica si, en el cómputo de área de los polígonos ráster, el contacto de dos celdas de igual valor por la diagonal conlleva que se consideren parte del mismo polígono. Equivale al parámetro /NO_AGRUPAR_POLIGONS_PER_NODES de la aplicación RasTop. (Parámetro de entrada)
