Que bueno GUI, no dejas nunca de sorprenderme, por cierto me encanta el aspecto limpio y sencillo de tu web.
Un saludo,
Es muy habitual aplicarle a la imagen transformaciones que la deforman para conseguir por ejemplo eliminar la distorsión geométrica de la lente, o "corregir" la perspectiva de un angular. Pero os habéis preguntado alguna vez cómo se hacen?
Hasta que el otro día un forero pedía ayuda para mapear una foto sobre una esfera nunca me había puesto a aplicar desde dentro de un programa (y por tanto con total flexibilidad) transformaciones a una imagen. Y el motivo era que sabía que no podía obtener un buen resultado por el siguiente motivo: para deformar una imagen A y convertirla en una imagen B no se proyectan los pixels de A sobre B de acuerdo a la regla de transformación, sino que el proceso es inverso: se acude a la imagen B por formar y se hace el cálculo de qué pixeles de A han de interpolarse (podríamos decir promediarse) para obtener cada pixel de B.
Para mí es fácil establecer una relación uno a uno, es decir calcular un solo pixel de A que sea el que más correspondería al pixel de B que estoy calculando. Esto sin duda da un resultado muy malo lleno de aliasing y dientes de sierra por todas partes.
Pero se me ha ocurrido un truco, y es aprovechar la capacidad de PS de interpolar con calidad las imágenes para delegar en él la tarea de hacer una buena interpolación de pixels, y yo me centro en la transformacion. Para eso hacemos:
- Reescalamos en PS (interpolación bicúbica) la imagen a un tamaño N veces mayor del que tiene.
- Realizamos la transformación no lineal pixel de A -> pixel de B. La imagen resultante tiene aliasing y poca definición, pero es muy grande lo que da margen para devolverla a su tamaño original ganando en calidad así que...
- Reescalamos de nuevo en PS la imagen transformada a su tamaño original.
El resultado es buenísimo. Aquí os pongo 3 ejemplos: a la izquierda la imagen original, en el centro como queda si aplicamos la transformación directamente, y a la derecha con el reescalado previo.
Los ejemplos son lo de menos, lo que quiero es enseñaros la calidad que se consigue con el aumento previo del tamaño de la imagen. El que sea un poco habilidoso programando puede hacer cualquier tipo de transformación desde un programa con gran calidad de interpolación sin hacerla él mismo.
MAPEADO EN ESFERA
ORIGINAL / TRANSF. SIN REESCALADO / TRANSF. CON REESCALADO
ONDAS
ORIGINAL / TRANSF. SIN REESCALADO / TRANSF. CON REESCALADO
ESPIRAL
ORIGINAL / TRANSF. SIN REESCALADO / TRANSF. CON REESCALADO
.
"En ocasiones veo halos."
http://www.guillermoluijk.com para suscribirte pulsa aquí
Últimos contenidos: EL HISTOGRAMA. ESE INVITADO INESPERADO y EL ESTABILIZADOR COMO REDUCTOR DE RUIDO
Que bueno GUI, no dejas nunca de sorprenderme, por cierto me encanta el aspecto limpio y sencillo de tu web.
Un saludo,
Interesante y a la vez sumamente sencillo y obvio lo que dices.En cuanto al escalado y rescalado quiero decir.
No aporto nada pero como siempre no puedo pasar por un hilo tuyo y no darte las gracias.
Estoy por hacer una lista de cosas que querria hacer con una foto y dartelas para plantearte retos
Un saludo
Daniel
Dejemos que el aire corra entre los dos, a ver que nos cuenta el viento.
Dejemos que el mundo gire y gire, hasta que nos encontremos de nuevo...
www.dyagrama.info
www.foto.grafi.as
Publicidad
Marcadores