<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Bitácora de Vuelo (Publicaciones sobre imágenes)</title><link>http://blog.taniquetil.com.ar/</link><description></description><atom:link href="http://blog.taniquetil.com.ar/categories/imagenes.xml" rel="self" type="application/rss+xml"></atom:link><language>es</language><copyright>Contents © 2023 &lt;a href="mailto:facundo@taniquetil.com.ar"&gt;Facundo Batista&lt;/a&gt; CC BY-NC-SA</copyright><lastBuildDate>Mon, 29 May 2023 18:51:47 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Metiendo la uña del pulgar</title><link>http://blog.taniquetil.com.ar/posts/0473/</link><dc:creator>Facundo Batista</dc:creator><description>&lt;blockquote&gt;
&lt;p&gt;"Uña del pulgar", o &lt;em&gt;thumbnail&lt;/em&gt; es una versión reducida de una imagen, usada para ayudar a su organización y reconocimiento. En la era de las imágenes digitales, los motores de búsqueda visuales y los programas para organizar imágenes normalmente hacen uso de los thumbnails, así como los sistemas operativos y entornos de escritorio recientes &lt;a class="reference external" href="http://es.wikipedia.org/wiki/Thumbnail"&gt;[-]&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hace unos meses mandé a digitalizar unas diapositivas que tenía mi familia. Un par de días atrás empecé a procesarlas, usando el &lt;a class="reference external" href="https://jbrout.manatlan.com/"&gt;JBrout&lt;/a&gt; para agregarle los tags indicando metadata de la imagen (lugar, año, gente que aparece, etc.).&lt;/p&gt;
&lt;p&gt;El problema que tuve es que cuando abría con el JBrout fotos que había sacado yo, las veía perfectamente, pero cuando abría las diapositivas, veía una "X" fea que no me decía nada. No tardé demasiado en darme cuenta que el problema era que el JPEG no tenía adentro el correspondiente thumbnail.&lt;/p&gt;
&lt;p&gt;Entonces, ¿cómo les metí el thumbnail a cada una?&lt;/p&gt;
&lt;p&gt;Luego de buscar un rato por la web (pensé que tenía que haber algún programa que lo hiciera solo y masivo), encontré esta forma (lo más probable es que hayan mil más...).&lt;/p&gt;
&lt;dl class="simple"&gt;
&lt;dt&gt;::&lt;/dt&gt;
&lt;dd&gt;&lt;p&gt;convert foto_original.jpg -thumbnail '200x200&amp;gt;' -unsharp 0x.5 thumbnail.jpg&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;convert&lt;/code&gt; es uno de los utilitarios de la fantástica &lt;a class="reference external" href="http://www.imagemagick.org/script/index.php"&gt;ImageMagick&lt;/a&gt;, toma mi &lt;code class="docutils literal"&gt;foto_original.jpg&lt;/code&gt; y me deja &lt;code class="docutils literal"&gt;thumbnail.jpg&lt;/code&gt;. El &lt;code class="docutils literal"&gt;&lt;span class="pre"&gt;-thumbnail&lt;/span&gt;&lt;/code&gt; le dice que voy a generar justamente un thumbnail, lo cual aparte de cambiar el tamaño hace otras cosas (por ejemplo, le saca toda la metadata interna, para que ocupe menos). El &lt;code class="docutils literal"&gt;'200x200&amp;gt;'&lt;/code&gt; es una notación de ImageMagick que indica que la imagen resultante tiene que caber en una zona de 200 por 200 (o sea, me la reduce manteniendo el factor de forma hasta que el alto o el ancho ocupen como mucho 200 pixeles). El &lt;code class="docutils literal"&gt;&lt;span class="pre"&gt;-unsharp&lt;/span&gt; 0x.5&lt;/code&gt; lo recomiendan para mejorar la visualización de la imagen pequeñita. En &lt;a class="reference external" href="http://www.imagemagick.org/Usage/thumbnails/"&gt;esta página&lt;/a&gt; tienen otros detalles y temas a considerar al generar thumbnails (que no se aplican en mi caso).&lt;/p&gt;
&lt;p&gt;Luego, para poner esa nueva y pequeña imagen dentro de la original, utilicé otro utilitario:&lt;/p&gt;
&lt;pre class="literal-block"&gt;exiftool '-ThumbnailImage&amp;lt;=thumbnail.jpg' foto_original.jpg&lt;/pre&gt;
&lt;p&gt;No hay demasiado que explicar en este caso.&lt;/p&gt;
&lt;p&gt;Luego de verificar que todo funcionó correctamente, pasé a trabajar todas las diapositivas en masa. Los archivos tenían esta estructura: tres directorios &lt;code class="docutils literal"&gt;CajaA&lt;/code&gt;, &lt;code class="docutils literal"&gt;CajaB&lt;/code&gt; y &lt;code class="docutils literal"&gt;CajaC&lt;/code&gt; (correspondientes a las tres cajas de diapositivas que mandé a digitalizar), con archivos adentro tipo &lt;code class="docutils literal"&gt;a001.jpg&lt;/code&gt;, &lt;code class="docutils literal"&gt;b033.jpg&lt;/code&gt;, etc.&lt;/p&gt;
&lt;p&gt;Obviamente no iba a ejecutar esos dos comandos uno por uno para cada imagen, así que pasé a hacer uso del poder de bash, y escribí en la terminal:&lt;/p&gt;
&lt;pre class="literal-block"&gt;for foto in `find -name "????.jpg"`; do
   echo $foto;
   convert $foto -thumbnail '200x200&amp;gt;' -unsharp 0x.5 $foto.thumb;
   exiftool '-ThumbnailImage&amp;lt;='$foto.thumb $foto;
done;&lt;/pre&gt;
&lt;p&gt;Basicamente, un loop sobre todas los archivos, haciendo un &lt;code class="docutils literal"&gt;echo&lt;/code&gt; para ver qué procesaba, más los dos comandos anteriores.&lt;/p&gt;
&lt;p&gt;Esto me dejó todo procesado, pero medio sucio, ya que por cada imagen tenía un &lt;code class="docutils literal"&gt;.thumb&lt;/code&gt;, y además un &lt;code class="docutils literal"&gt;_original&lt;/code&gt; que deja el &lt;code class="docutils literal"&gt;exiftool&lt;/code&gt;. Así que procedí a borrar todo eso:&lt;/p&gt;
&lt;pre class="literal-block"&gt;find -name '*.thumb' -or -name '*_original' | xargs rm&lt;/pre&gt;
&lt;p&gt;O sea, le dije a &lt;code class="docutils literal"&gt;find&lt;/code&gt; que encuentre todos los archivos que quería borrar, pero en lugar de mostrarlos por pantalla, se los pasé a &lt;code class="docutils literal"&gt;xargs&lt;/code&gt; que los fue tomando y aplicando el &lt;code class="docutils literal"&gt;rm&lt;/code&gt; para borrarlos.&lt;/p&gt;
&lt;p&gt;Resultado final: tengo todas mis diapositivas con un thumbnail adentro. Y de paso aprendí un par de utilitarios nuevos, y algunas otras cositas.&lt;/p&gt;</description><category>bash</category><category>ImageMagick</category><category>imágenes</category><category>Python</category><category>thumbnails</category><guid>http://blog.taniquetil.com.ar/posts/0473/</guid><pubDate>Thu, 22 Jul 2010 17:00:54 GMT</pubDate></item><item><title>Ahora con imágenes</title><link>http://blog.taniquetil.com.ar/posts/0433/</link><dc:creator>Facundo Batista</dc:creator><description>&lt;p&gt;Le incorporé al programita para &lt;a class="reference external" href="http://www.taniquetil.com.ar/homedevel/devel/mail2micropost.py"&gt;postear al microblog desde el celular&lt;/a&gt; la funcionalidad de reconocer si el mail que uno manda tiene imágenes.&lt;/p&gt;
&lt;p&gt;El programa, si el mail tiene una imagen, lo que hace es bajarla y grabarla en el servidor, y gestionar en &lt;a class="reference external" href="http://bit.ly/"&gt;bit.ly&lt;/a&gt; una URL corta para la URL larga que queda de poner la imagen en nuestro servidor.&lt;/p&gt;
&lt;p&gt;Luego arma el post con el texto que uno haya mandado, más la URL corta, y la sube a twitter e identi.ca.&lt;/p&gt;
&lt;p&gt;El único cambio que hay que hacer en el programa es volverlo a ejecutar con --auth para, aparte de poner la info de twitter/identi.ca y el mail, poner el nombre de usuario y la clave de la API de bit.ly (que es gratis, te registrás y listo).&lt;/p&gt;
&lt;p&gt;Enjoy it.&lt;/p&gt;</description><category>imágenes</category><category>posts</category><category>Twitter</category><guid>http://blog.taniquetil.com.ar/posts/0433/</guid><pubDate>Mon, 26 Oct 2009 23:11:30 GMT</pubDate></item></channel></rss>