ES:Panama/Protected Areas
mapeando areas protegidas.
tenemos una página que ofrece un resumen, aquí es para el procedimiento.
respetando las líneas guía para ediciones organizadas
- importación de los límites de las áreas protegidas, de la gaceta oficial
- es una actividad de que hablamos en el grupo Telegram,
- el hashtag es #panama-ap
- es una actividad sin fecha límite
- necesita Linux, tesseract, algo de práctica con bash, y por supuesto JOSM. todo software libre
- se aconseja el uso de la distribución Debian
como lo hacemos
Cuando el estado panameño establece o modifica un área protegida, lo publica en su "gaceta oficial", la cual es no sólo libremente descargable, sino que la información contenida es puesta en el público dominio. esto nos permite importar los datos publicados. La procedura abajo presentada es razonablemente repetible, y asume que tengas un ordenador de tipo unix, como los OSX (Apple-Mac) o GNU/Linux. no funcionará en Windows.
- empiece con una copia de la "Gazeta Oficial"
donde encontrarla? guárdese como `gaceta.pdf` - separar el pdf, un archivos por página
pdfseparate gaceta.pdf /tmp/go-%03d.pdf
- convertir cada página de pdf a tiff (tarda ~5s por página)
for f in /tmp/go-*.pdf; do echo -n "$f ... "; convert -density 300 $f -fill white -draw 'rectangle 10,10 20,20' -background white -flatten +matte -depth 8 /tmp/$(basename $f .pdf).tiff; echo ok; done
- extraer la información en formato textual (tarda ~12s por página)
for f in /tmp/go-*.tiff; do tesseract $f /tmp/$(basename $f .tiff); done
- juntar todos los archivos textuales en un único archivo (es inmediato)
cat /tmp/go-*.txt | tr '\n' ' ' > /tmp/out.txt
- asegurarse de que no haya errores en el texto. puede hacerse necesario corregir `Pumte`, `Esie`, o `Narto`. si acaso, mejorar el archivo usando algo `sed`, o editando directamente:
sed -i -e 's/Punta/Punto/g' -e 's/Punte/Punto/g' -e 's/Pumte/Punto/g' -e 's/Esie/Este/g' /tmp/out.txt
- leer y entender el archivo, reconociendo el formato de los datos numéricos, y desarrollando la estrategia correspondiente. los datos pueden estar en formas diferentes:
- WGS 84 UTM 17N.
- latitud / longitud.
- punto inicial, luego posición polar relativa (dirección / distancia).
- unas secciones pueden estar como "seguir un elemento físico", que puede ser un río, una carretera, o una distancia constante del elemento especificado.
- ahora sacar la información numérica, evidenciada por las palabras Punto, Este y Norte:
grep -o '\(Punto[^0-9]*[0-9]*\|\(Este\|Norte\) [0-9][0-9][0-9][0-9][0-9][0-9]\.[0-9][0-9]\)' /tmp/out.txt > /tmp/coordenadas.txt
- si necesario, añadir la información que falte.
el archivo debe tener este formato:
Punto N° 1 Este 827000.66 Norte 920021.40 Punto N° 2 Este 827127.73 Norte 919611.98 Punto N° 3 …
- convertir las coordenadas en latitud / longitud.
utilizar esta herramienta. necesita Python3.
cat /tmp/coordenadas.txt | python3 coords-to-osm.py > resultado.osm
- "finalmente" tenemos un archivo osm.
ese "finalmente" es nuestro punto de arranque, pues ahora tenemos que importar los datos, validar que no haya repeticiones, y amalgamar los nuevos datos con los que ya estaban en la zona del área protegida. cuidado al editar los puntos, nunca se deberán mover los puntos de referencia. todos vienen marcados con una etiqueta que los identifica como punto de referencia.
Todo esto es trabajo manual, tienes que volver a leer la gaceta, validar cuáles segmentos son realmente líneas rectas (no hace falta volver a editar), y cuáles deben adaptarse a elementos naturales, o humanos. estos podrían estar ya en el mapa, o habrá que mapearlos.