|
|
Retoque automático de muchas fotos a la vez con convert de imagemagick y construcción de un GIF dinámico
(27785 lectures)
Por René Mérou
H
(http://h.says.it/)
Creado el 11/08/2004 21:15 modificado el 11/08/2004 21:15
|
Hace unos días fotografié unas nubes preciosas durante 2 horas y media, una foto cada 30 segundos y me quedé hasta las 6 de la mañana para encontrar la forma de retocarlas todas automáticamente y fabricar con ellas un fichero que las tuviese todas y las mostrase una a una. Esto es lo que hice... | Pagina1/1 |
El problema es sencillo de explicar, más de 150 fotos a un copi y un paste y un par de retoques aquí y allá cada una y me muero de viejo antes de terminar.
Bueno el problema es sencillo si sabes dónde mirar y qué hacer, por lo que os paso el trabajo hecho, por si os interesa repetir la experiencia o hacer algo parecido. Por ejemplo podría servir a la pregunta ¿cómo hacer un pequeño banner dinámico?
Retoque automático
Bueno, primer paso, ¿cómo retocar muchas fotos a la vez, de forma automática?
En mi caso necesitaba darle más luz porque me habían quedado un poco oscuras, se ve que la cámara pensaba que tanta luz no debía ser buena y la redujo.
Lo que hice fue lo siguiente: Cree un directorio, en el puse todas las fotos y luego cree un subdirectorio llamado pt. Entre en el directorio donde tenía las fotos y di la siguiente orden (necesita el ImageMagick instalado):
for N in *; do convert -compress jpeg -level 0%,50%,1.2 -enhance -comment "h.says.it" $N pt/$N; done
Veamos, cuál es la función de cada una de sus partes:
El for N in *; do lo que hace junto con el done al final es producir un bucle en el que se ejecutará lo de dentro tantas veces como ficheros contenga. Y subdirectorios, lo que da un error, pero no impide que obtengamos el resultado deseado.
La clave del tratamiento está en esta parte: convert -compress jpeg -level 0%,50%,1.2 -enhance -comment "h.says.it" $N pt/$N; que es la que realmente retoca una a una todas las fotos del directorio. El -compress jpeg manda que se guarde en un jpg pero de tamaño grande por que no se indica el nivel de compresión. No lo indiqué porque luego lo iba a volver a tratar para conseguir comprimirlo en un GIF y preferí que no perdiese la calidad de la foto por las sucesivas compresiones.
La parte -level 0%,50%,1.2 lo que está indicando es que se aumente la luminosidad de la foto de dos formas, el 50% indica que de forma homogénea se aumente la luz de los puntos al doble y el 1.2 es el valor para la función Gamma que también potencia la luminosidad. El -enhance fue un descubrimiento interesante que hice, deja la foto mucho mejor, arregla un poco el estropicio que se hace al darle luminosidad a algunos puntos que ya son luminosos y que se destacan demasiado de los que les rodean.
El comentario de la dirección de mi web personal lo añadí a las fotos con la parte -comment "h.says.it" y la parte final $N pt/$N; le dice que debe hacerlo con cada una de las fotos llamadas según indica la variable $N y que debe guardarlas en el directorio pt con el mismo nombre que tienen.
Construir un GIF dinámico
Para construir un GIF dinámico puse todas las fotos en un directorio y ordené esto:
convert -compress JPEG -delay 20 r*.jpg t/nubesAnimadas.gif
Vale, parece raro, pongo -compress JPEG pero lo que hago es un GIF, bueno eso me servirá para explicaros algo que me di cuenta. Los GIF comprimen pero poco en comparación con los JPEG. El problema es que no pude lograr que los GIF comprimiesen mejor, he probado diferentes formas y esa que pongo es la última, y no logro mejorar la compresión del tamaño. Bueno, al final el compress JPEG no hizo nada pero tampoco molestó.
La parte del -delay 20 es para que entre foto y foto la serie tenga una espera de unos 20 centisegundos. El r*.jpg es para indicar que tome una a una todas las fotos del directorio (todas eran r, un numero y un .jpg). Luego pone el GIF resultante en un subdirectorio que cree antes llamado t con el nombre nubesAnimadas.gif.
El resultado
Si queréis ver el resultado lo tenéis en mi weblog Todo sobre las nubes hospedado gracias a la amabilidad de la gente de Balearweb.net y bloc.balearweb.net.
Cómo convertir automaticamente un monton de imágenes de un formato a otro
Creo que se explica bastante por si mismo, cojo las imágenes del directorio en que estoy, sólo las del formato que quiero cambiar, y las convierto cambiando el nombre con el sed, al formato que deseo tener. No las borro, pero podría hacerlo si añado un rm $image después del convert.
for image in *.thm; do target=`echo $image | sed s/.thm/.jpg/`; convert $image $target; done
Cómo hacer unas miniaturas (Thumbnail)
Es típico en internet ver galerías de fotos con un tamaño pequeño de muestra que pulsando lleva a ver una muestra de tamaño intermedio y al final la de mayor tamaño. En inglés se llaman Thumbnail Gallery. Si tenéis un directorio con unas fotos y queréis tener una miniaturas para ponerlas en internet o para lo que sea, ésto os servirá.
Ir al directorio en que tengáis las fotos.
mkdir peques; for N in *; do convert -resize 800 "$N" "peques/peque_$N"; done
al final dirá esto de lo que no debéis preocuparos:
convert: missing an image filename `peques/peque_peques'.
Y en el subdirectorio peques tendréis todas las fotos en tamaño de 800 puntos horizontales, si habéis indicado 800. Y si haceptáis un consejo, probad con la opción -enhance, da muy buen resultado "armonizando" la imagen, "retocando" pixeles que "desentonan".
Cómo comprimir más las imágenes de la cámara de fotos
También es típico que después de extraer las fotos de la cámara el tamaño en MBs sea demasiado grande y queramos comprimirlas un poco más.
Ir al directorio en que tengáis las fotos.
mkdir comprimidas
for N in *; do convert -compress jpeg -quality 65 -comment "h.says.it" $N comprimidas/$N; done
al final dirá esto de lo que no debéis preocuparos:
convert: missing an image filename `comprimidas/'.
Y en el subdirectorio comprimidas tendréis todas las fotos en tamaño un poco más aceptable. Podéis jugar con el 65% para poner más o menos compresión. A mi me comprime imágenes que salen a 1.2MB y me las deja a 168KB. Y si haceptáis el mismo consejo de antes, probad con la opción -enhance.
Queda pendiente:
* Mirar de conseguir una compresión para MPEG2, es decir, vídeo en vez de fotos consecutivas. Puede ser una forma de conseguir una muy buena reducción del tamaño. Pero no quitaré el GIF, porque sirve para mirar con detenimiento una cualquiera de todas las fotos, si se desea.
Referencias
No podría haber hecho nada de todo lo anterior sin disponer del software de GIMP, ImageMagick (manual aquí) o si preferís en español aquí tenéis un buen manual con un montón de ejmplos.
Si os miráis el manual veréis que se pueden hacer muchos tipos de retoques en las fotos, cambiar los tamaños, guardar en otros formatos, y un largo etcétera, este es otro claro ejemplo de que muchas veces trabajar con la línea de comandos es mucho más eficiente que andar pulsando botoncitos en las ventanas.
Un saludo y espero que os pueda ser útil para ahorrar trabajo de busqueda por la red. |
|
|
|
|
|
Comentarios Es posible que se hayan omitido algunos comentarios considerados poco constructivos
| 1. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (12/08/2004 13:14, #22746) Por: Moof (http://metamoof.net/) |
| Si no te basta con imagemagic, es posible hacer scripts en el GIMP, y correrlos desde la linea de comandos, sin necesidad de tener las X instaladas. Ahora, no se como se hace eso, pero podria ser interesante investigar... | No es pot respondre |
2. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (12/08/2004 13:57, #22750) Por: H (http://h.says.it/) |
Gracias Moof. :)
¿Te gustó la serie? | No es pot respondre |
3. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (07/09/2005 11:09, #28225) Por: Anónimo |
| ssiiiiiiiiiiiiiiiiisiiiiiiiiiiiiiisisisisi | No es pot respondre |
4. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (27/05/2007 17:30, #42077) Por: Anónimo |
| Soy puta | No es pot respondre |
|
|
5. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (12/08/2004 22:07, #22759) Por: Anònim |
Jo vaig fer això per un problema que tenia ...
Esta al meu weblog http://lluispamies.no-ip.org | No es pot respondre |
|
6. Problema con un enlace (12/08/2004 13:51, #22748) Por: Strider (http://www.lakamarilla.org) |
| Máquina desconocida www.starlinux.net | No es pot respondre |
7. Re: Problema con un enlace (12/08/2004 13:55, #22749) Por: H (http://h.says.it/) |
| Paciencia hombre, que el servidor de esa máquina debe estar caído. Ayer mismo comprobé que funcionaba. Me parece que mientras tendrás que apañarte con la versión en inglés o preguntarle a google si hay otras en español. | No es pot respondre |
|
8. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (12/08/2004 17:06, #22751) Por: Cecilator (http://engendro.multimania.com) |
Hola René,
me alegro ver que sigues 'vivo' :P
Pregunta:
¿Para qué utilizas el '-delay 200' para el GIF dinámico?
Saludos. | No es pot respondre |
9. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (12/08/2004 17:33, #22752) Por: H (http://h.says.it/) |
Hola, me alegra que te alegre :)
Cuando digo: La parte del -delay 20 es para que entre foto y foto la serie tenga una espera de unos 20 centisegundos. me refiero a eso, a que la serie tenga una velocidad a la hora de mostrarse. Te muestra 5 fotos por segundo. (gracias me has hecho ver un errorcillo que tenía en esa frase)
Pero por cierto, si miras mi weblog que tiene la entrada en H.says.it, verás que he estado muy vivito, de hecho no es que no pare, es que no puedo parar. :P
| No es pot respondre |
10. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (13/08/2004 09:26, #22762) Por: Anònim |
| Uff... ya me parecía que esto no iba a 50 fps X-D | No es pot respondre |
|
|
11. GIFs dinámicos (12/08/2004 18:40, #22754) Por: Anónimo |
| http://www.lcdf.org/gifsicle/ | No es pot respondre |
12. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (17/08/2004 12:03, #22830) Por: marsu (http://www.zikzakmedia.com) |
| En photoshop tenim el que es diu accions, que guardes el que vols fer i després ho pots aplicar les següents.
M'ha picar la curiositat, i he buscat com ho faria amb el Gimp.
Aqui us deixo alguns resultats:
La manera más "sencilla" de hacer macros es escribirlas a pelo, en script-fu o python.
I si, a Extensions, pots personalitzar els teus scripts.
Per exemple, si saps python, tens una fabulosa consola per fer-ho. jo ja ho he probat.... i si, funciona a la perfecció
Ara bé, m'agradaria saber si puc guardar les opcions que desenvolupo amb Gimp i després aplicar-li a una altra imatge, sense saber programar (com a dissenyador, no programador). Això, m'ho miraré amb mes calma :D | No es pot respondre |
13. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (18/08/2004 02:52, #22854) Por: Anónimo |
Dons no deixis de comentar-ho aquí :)
Gràcies per la teva aportació. | No es pot respondre |
|
14. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (28/08/2004 06:26, #23052) Por: Anónimo |
| Lo de MPEG2 es muy fácil hacerlo con mplayer y su mencoder, ahora mismo no recuerdo los comandos así que más ayuda no te puedo dar, pero el man es muy completo. También se puede exportar un vídeo a gif animado, sé que no es lo que comentas, pero queda bien ;P | No es pot respondre |
15. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (18/03/2005 12:11, #25753) Por: XemaX |
| Gracias Rene por compartir tus trabajos. Yo utilice tus trucos y funcionó a las mil maravillas | No es pot respondre |
16. Re: Retoque automático de muchas fotos a la vez y construcción de un GIF dinámico (24/03/2005 23:19, #25864) Por: H (http://h.says.it/) |
De nada, es un placer echar una mano.
Si lo miramos de cerca, es siempre más lo que he aprovechamos que lo que he aportamos. :) | No es pot respondre |
|
17. Re: Retoque automático de muchas fotos a la vez con convert de imagemagick y construcción de un GIF dinámico (02/03/2007 21:12, #38831) Por: Alfredo |
| Hola
Existe algun programa para que muchas fotos en tamaño miniatura, de lejos den la forma de una foto
espero y me hayan entendido | No es pot respondre |
18. Re: Retoque automático de muchas fotos a la vez con convert de imagemagick y construcción de un GIF dinámico (02/03/2007 23:01, #38836) Por: Anónimo |
Échale un vistazo a éstos:
Metapixel un programa especialmente para hacer fotomosaicos.
nip2 que es un frontend para el VIPS que puede hacer manipulaciones de imagen más rápido que otros como el ImageMagicK y el GIMP e incluye funciones especiales como el poder crear imágenes mosaico.
ALE que puede hacer imágenes panorámicas y mosaicos.
| No es pot respondre |
|
|
|
|
|---|
|
|
|
|
Calificacion
    Vots: 26 |
Danos tu opinion:
|
|
|
|
|
|
|