24/06/2017

Tu propio paisaje en Stellarium

Me han preguntado cómo hago para crear imágenes de Stellarium con el paisaje de Bariloche. Es relativamente fácil y bastante entretenido, así que lo explicaré aquí. Primero, necesitás un lindo paisaje. Ponele que fuiste a la Laguna Azul en pleno verano, y en el solsticio invernal decís "Mmm, este lugar está bueno para ponerlo en Stellarium."

En Stellarium, el paisaje es una imagen panorámica de 360 grados, que podemos hacer con una cámara normal sacando muchas fotos todo alrededor. Hay que quedarse en un solo lugar, donde sea cómodo dar una vuelta completa sacando fotos que se superpongan un poco. Unas 12 fotos son suficientes si usamos una cámara con el zoom en modo ancho. Cuando terminamos de dar la vuelta con la cámara apuntando horizontalmente, puede ser necesario dar otra vuelta apuntando un poco hacia arriba si algún objeto salió recortado (árboles, edificios, cerros). Y después una apuntando hacia abajo, para que salga un poco de suelo. Inclusive se puede dar una vuelta sacando fotos directamente hacia abajo, le dan más realismo al paisaje final.

En Laguna azul saqué todas estas fotos, que aquí puse alineadas por filas según la altura hacia donde estaba apuntando, para que se entienda la idea.


Fíjense que la línea de arriba no tiene ningún cerro recortado, y que en la de abajo hay algunas donde se ve mi propia sombra. Conviene que no haya objetos muy cerca, ya que al girar pueden aparecer desplazados con respecto al fondo en distintas fotos, y el defecto se notará al final. Pero si es inevitable, no es tan grave. También conviene hacer un par de juegos completos, porque a veces uno anda y el otro no, andá a saber por qué.

A continuación necesitamos un programa capaz de armar un panorama con esta colección. El proceso es casi completamente automático hoy en día, usando Autopano o Hugin (gratis) o algún otro. (Con la cámara de Android se puede hacer directamente en el dispositivo, en tablets y algunos teléfonos.) Cada uno tiene sus propias características pero en general funcionarán bien con las opciones default. Si se puede elegir, la proyección tiene que ser esférica, pero puede ser cilíndrica si preferimos exagerar la escala vertical de la imagen. El horizonte tiene que quedar bien horizontal, por supuesto. Con mis fotos de Laguna Azul quedó así:


Ahora hay que eliminar el cielo para que Stellarium pueda poner el suyo. Cargamos el panorama en Photoshop, o Gimp, o Paint.NET, o cualquier programa razonable de edición de imágenes. Probablemente es una imagen gigante, de decenas de miles de pixels de ancho, lo cual es innecesario. Primero la achicamos de manera que tenga 4096 pixels de ancho (u 8192, tiene que ser una potencia de 2). Y a continuación extendemos el canvas de la imagen agregando espacio arriba hasta que tenga una altura igual a la mitad del ancho. Una guía en la mitad sirve para verificar que el horizonte quede en el medio:


Ahora seleccionamos el cielo y lo recortamos. Yo lo hago con la herramienta Quick Selection, mirando la imagen bien ampliada y pintando cerca del borde inferior del cielo, todo a lo largo del panorama. Pueden quedar algunas imperfecciones fáciles de eliminar a mano con la goma de borrar o con el Lazo. Suele quedar un bordecito celeste pegado al paisaje, de uno o dos pixels de ancho. En tal caso podemos seleccionar todo lo borrado con la Varita Mágica, agrandar la selección uno o dos pixels, y borrar. Es casi inevitable que quede un bordecito, pero no es muy grave en Stellarium. Lo más complicado de recortar es si hay cielo a través de algún follaje. En tal caso hay que armarse de paciencia, o de resignación. A mí me quedó asi:


Fíjense que estas operaciones las voy haciendo en una capa con una copia de la imagen, por si me equivoco y borro de más, así puedo recuperar fácilmente lo borrado. También me gusta poner una capa negra detrás de todo, ya que el cuadriculado gris que estos programas dejan cuando borrás parte la imagen a veces ayuda y a veces no. Una vez satisfechos eliminamos la capa negra y guardamos la imagen con formato png, que preserva la transparencia del cielo que hemos recortado.

Necesitamos orientar el paisaje correctamente en Stellarium. Usando Google Earth buscamos el punto donde nos paramos y algún punto identificable del panorama. Yo usé el extremo derecho de ese bosquecito que se ve del otro lado de la laguna, que se ve bien en la foto y en Earth. Con la herramienta de medir distancias trazamos una línea desde nuestra posición y nos da un ángulo. Lo anotamos, así como la latitud y longitud de nuestra posición.

Además de la imagen con el panorama, el paisaje de Stellarium requiere un pequeño archivo de texto con unas pocas especificaciones. Lo creamos con el nombre landscape.ini, y adentro escribimos:
[landscape]
name = El nombre del paisaje para la lista de Stellarium
author = El autor del paisaje
description = Una descripción
type = spherical
maptex = Nombre del archivo png donde salvamos el panorama (incluyendo la extensión .png).
angle_rotatez = Ángulo para orientar el paisaje

[location]
planet = Earth
latitude = La latitud que medimos en Google Earth
longitude = La longitud
altitude = La elevación del sitio de observación
Los valores de estos campos cada uno los tiene que llenar con los datos del paisaje que está creando. Fíjense en mi paisaje de la Laguna Azul para tener un ejemplo. Lo más complicado es el ángulo de rotación, que calculamos de la siguiente manera:

angle_rotatez = 270 + b - (360*x/y) 

donde b es el ángulo que nos dio Google Earth para una referencia en el paisaje, x es la posición de la misma referencia, en pixels desde el borde izquierdo de la imagen (legible con la posición del cursor en todos los programas de imágenes), e y es el ancho en pixels de la imagen.

Finalmente ponemos la imagen y el archivo landscape.ini en un subdirectorio con un nombre adecuado en el directorio de los paisajes de usuario de Stellarium. En Windows, es el directorio [username]\AppData\Roaming\Stellarium\landscapes (que, si no existe, hay que crear). El directorio AppData está normalmente oculto, pero puede navegarse sin problema hasta él escribiendo en la barra de direcciones del navegador de archivos. También podemos copiar el paisaje al directorio landscapes dentro del directorio de instalación de Stellarium (pero ésto requiere privilegios de administrador). Y listo, ya podemos usar el paisaje en Stellarium...

Subí el paisaje de la Laguna Azul a mi Drive, así podés descargarlo si te gustó, o si querés usarlo de ejemplo para crear tu propio paisaje. Podés descargarlo aquí: Laguna Azul.zip



Las imágenes son mías, mías, mías. Salvo la de Google Earth que es de Google. Y el cielo de Stellarium, que es de Stellarium.

8 comentarios:

  1. Muchísimas gracias muy útil, si quieres divulgar la astronomía, y que mas si lo haces friendly amigablemente con tu paisaje cotidiano.

    ResponderEliminar
  2. Hola, quise bajar el archivo para ver como eran los temas de configuración y poder ver en mi stellarium, pero me da un error (dice que el archivo está en la papelera del propietario). Además quisiera saber, como accedes desde stellarirum a tu composición? la verdad que esa parte no me queda clara.

    Muchas gracias por tu explicación del resto de cosas que hay que hacer, está súperdidáctico

    ResponderEliminar
    Respuestas
    1. Hola, Erensto. Sí, había borrado el archivo, ya lo restauré. En Stellarium, accedés a los paisajes en las opciones de cielo (shortcut F4). Allí, en la pestaña de Paisajes, aparecen todos los paisajes instalados, ordenados por su nombre.

      Hay actualmente otras maneras de hacer buenos paisajes localizados, usando ya sea Google Street View, o DEMs, o incluso modelos 3D, que no existían cuando hice esta nota. Revisá la charla de uno de los autores: https://www.youtube.com/watch?v=uJBu_7qOSqQ.

      Eliminar
    2. Millón de gracias, revisaré la conferencia y bajaré tu archivo. Saludos

      Eliminar