Imaset 2.2 liberado

13 de Mayo del 2008 Escrito por Alex Barros

Descarga Imaset 2.2La nueva versión de Imaset ya ha llegado!

Imaset 2.2 es compatible con Wordpress 2.5 y además trae algunas mejoras:

  • Mejor calidad en la previsualización, y más respeto a las imágenes PNG en el canal alpha
  • Dos nuevos filtros
  • Transferencia correcta de Marcas de agua con PNG
  • Interfaz mejorada, y adaptada al nuevo look de WP

Instalación

Instalar Imaset es muy sencillo:

  • Descarga el archivo imaset_2-2.zip
  • Descomprime el contenido en tu ordenador
  • Sube la carpeta imaset/ por ftp a tu servidor, en la carpeta wp-content/plugins/
  • Activa el plugin en la sección Plugins del panel de administración Wordpress
  • Ya está!

Usar la herramienta

Una vez el plugin está activado, aparecerá en el panel de escritura un botón con la palabra “Imaset”. Al pulsar este botón se abrirá el panel de Imaset, mostrando tus imágenes, y los filtros disponibles divididos en categorías.

Marcas de agua

Poner marcas de agua de tu web es muy sencillo, y ahora se respeta la transparencia del PNG, así que puedes añadir efectos interesantes!

Busca entre los filtros de la categoría “Personalizar” el de “marca de agua“. Pulsa en la varita mágica y selecciona el archivo de la imágen (debe estar almacenada en el directorio llamado src/) y el lugar donde posicionarlo.

Filtros incluidos

  • Sombra
  • Marco
  • Reflejo
  • Reflejo3D
  • Brillo
  • Perspectiva
  • Glossy
  • Invertir colores
  • Colorizar
  • Desenfoque suave
  • Desenfoque fuerte
  • Desenfoque gaussiano
  • Marca de Agua
  • Redimensionar

Recuerda siempre Guardar los cambios antes de cerrar el programa Imaset.

Agradecimientos:

Me gustaría agradecer a Patricio Villa, Francesc Josep, Francisco Espinoza, y a todas las personas que usan, apoyan y se interesan por Imaset.

Feedback necesario

Para que Imaset avance y mejore, es imprescindible vuestra ayuda. Comenta qué te parece, cómo puede mejorar Imaset, si tienes problemas, etc…

Categorias: Aplicaciones, Imagen Digital, Plugins | 42 comentarios »

Petición popular de Imaset 2.2

2 de Mayo del 2008 Escrito por Alex Barros

Hace un tiempo que vengo recibiendo peticiones para que desarrolle una siguiente versión de Imaset, que sea compatible con el nuevo Wordpress 2.5.

He de decir en mi defensa que, aúnque me encantaría desarrollar cuanto antes esta nueva versión, dispongo de poco tiempo, y lo dedico al desarrollo de varios proyectos, últimamente con cierto énfasis al proyecto de Geo.

Pero la nueva versión ya está en marcha. Un nuevo núcleo está en desarrollo, hay nuevos filtros muy interesantes, y tengo planeada una interfaz mucho más manejable. No puedo dar ninguna fecha, pero sabed que no me he olvidado de este plugin.

Así que si os interesa esta nueva versión de Imaset, no perdáis de vista este blog, y no dudéis en escribir sugerencias que las tendré todas en cuenta.

Categorias: Aplicaciones, Boozox, Plugins | 8 comentarios »

Desenfoque gaussiano: cómo funciona + filtro para Imaset

18 de Diciembre del 2007 Escrito por Alex Barros

Me he propuesto realizar el filtro de Desenfoque Gaussiano, y lo he conseguido. A continuación os muestro el algoritmo, y la descarga del filtro para quienes usen Imaset 2.1

El algoritmo

El filtro gaussiano consiste en la mezcla de los colores de una imágen para conseguir un efecto de desenfoque. Esta es una explicación muy general, y por supuesto el algoritmo es más complejo que esto.

En primer lugar, consideraremos la imágen como una matriz de puntos (pixeles), con unos valores determinados de rojo, verde y azul. A partir de aquí, los valores de cada punto de la nueva imágen, serán una combinación de los puntos cercanos. De esta forma, si un punto es de color rojo, y cercano a él hay puntos negros, este rojo se oscurecerá (y los negros se enrojecerán).

Intercambio de color entre pixeles cercanos

Pero para determinar cuáles son los pixeles que son cercanos, y los que no, se debe especificar al filtro un radio de acción. Con esto, si por ejemplo indicamos un radio de 10 pixeles, cada píxel de la nueva imágen se verá modificado por los todos los pixeles a menos de 10 unidades de distancia. Pero no todos los pixeles modifican con la misma “fuerza”, cuanto más cerca estén del pixel que se está modificando, más valor tendrán en el cálculo del nuevo color. Es aquí donde aparece nuestro simpático amigo Gauss.

La función de la distribución Gaussiana va a ayudarnos a adjudicar cuánto aporta cada pixel, en función de lo cerca o lejos que se encuentre. Esta función tiene la forma distribucion_gaussiana.png donde (x-b) es la distancia entre el pixel que está siendo modificado y el píxel del que se está tomando el valor, a y c valen 1, y f(x) resulta un número Real entre 0 y 1 que representa el porcentaje de influencia.

Resumiendo

Lo que está claro es que hay que mezclar los píxeles entre sí, y que usaremos un radio de influencia en que cuanto más lejos está un píxel de otro, menos le afecta.

Después de analizar el problema, y aplicar una fórmula estadística, podemos concluir que el valor de cada pixel es:

La suma de todos los píxeles dentro del radio R, multiplicados cada uno por distribucion_gaussiana.png (tal y como se ha descrito antes), y todo esto, dividido entre la suma de todos los valores de la fórmula distribucion_gaussiana.png en los puntos que intervienen.

Y todo eso es sólo para calcular uno de los tres componentes (Rojo, Verde o Azul) de un sólo pixel.

De modo que, a falta de una fórmula mágica de optimización, el efecto de desenfoque Gaussiano no es ninguna broma, realiza una cantidad muy elevada de cálculos (que aumenta junto al Radio y al tamaño de la imágen).

El archivo de descarga

Aquí os dejo el código fuente y la descarga del filtro Desenfoque Gaussiano para Imaset 2.1
Tened en cuenta que, como he dicho, es un filtro muy costoso, y aplicarlo puede llevar bastantes segundos.

La forma de poder usarlo es: descargar el archivo ZIP, descomprimir su contenido, y subir el archivo gaussian.xml al directorio “/filters” y el archivo es_ES.php al directorio “/lang

Ejemplo del filtro Gaussiano en Imaset

GaussGauss Desenfocado
Como se puede apreciar, realiza un toque de suavizado, si se aplica poco desenfoque (poco radio).

Código fuente

Os dejo como siempre el código fuente de este filtro.

  1. <filter>
  2.         <name>gaussian_blur</name>
  3.         <category>effect</category>
  4.         <parameters>
  5.                 <pa>$rad=5</pa>
  6.         </parameters>
  7.         <function>
  8.                 if(!$rad) $rad = 5;
  9.                
  10.                 $sx = imagesx($im);
  11.  
  12.                 $sy = imagesy($im);
  13.  
  14.                
  15.  
  16.                 for($x=-$rad;$x<$sx+$dar;$x++) // meto en una matriz los valores de colores
  17.  
  18.                 {
  19.  
  20.                         for($y=-$rad;$y<$sy+$rad;$y++)
  21.  
  22.                         {
  23.                                 if($x<0 || $y<0 || $x>$sx || $y>$sy)
  24.                                         $imatrix[$x][$y] = array($imaset->Red,$imaset->Green,$imaset->Blue);
  25.                                 else {
  26.  
  27.                                         $rgb = ImageColorAt($im, $x, $y);
  28.  
  29.                                         $r = ($rgb >> 16) & 0xFF;
  30.  
  31.                                         $g = ($rgb >> 8) & 0xFF;
  32.  
  33.                                         $b = $rgb & 0xFF;
  34.                                         $imatrix[$x][$y] = array($r,$g,$b);
  35.                                 }
  36.  
  37.                         }
  38.  
  39.                 }
  40.  
  41.                
  42.                 // Ahora voy a poner valores (calculandolos previamente)
  43.                 for($x=0; $x<$sx; $x++) { // recorro el array antes construido, pixel a pixel
  44.                         for($y=0; $y<$sy; $y++) {
  45.                                 unset($su1R,$su1G,$su1B,$su2,$sue); // inicializo
  46.                                 for($i=$x-$rad; $i<$x+$rad; $i++) { // circundantes en eje x
  47.                                         for($j=$y-$rad; $j<$y+$rad; $j++) { // circundantes en eje y
  48.                                                 $sue = round(pow(2.7,-(pow(($i-$x),2) + pow(($j-$y),2)))*100,4); //valor gaussiano de peso
  49.                                                 $su1R += $sue * $imatrix[$i][$j][0]; //Sumando de rojos
  50.                                                 $su1G += $sue * $imatrix[$i][$j][1]; //Sumando de verdes
  51.                                                 $su1B += $sue * $imatrix[$i][$j][2]; //Sumando de azules
  52.                                                 $su2 += $sue;
  53.                                         }
  54.                                 }
  55.  
  56.                                 imagesetpixel($im,$x,$y,imagecolorallocate($im,round($su1R/$su2),round($su1G/$su2),round($su1B/$su2)));
  57.                         }
  58.                 }
  59.  
  60.                 return $im;
  61.         </function>
  62. </filter>

Categorias: Código, Imagen Digital, PHP, Plugins | 3 comentarios »

Efecto 3DReflect para Imaset

15 de Diciembre del 2007 Escrito por Alex Barros

Acado de crear un nuevo efecto para Imaset, el 3DReflect. Si estás usando la versión 2.1, podrás utilizar este nuevo filtro subiendo un pequeño archivo XML a la carpeta “/filters” del plugin.

El filtro

El efecto es similar al ya existente de Reflejo. La diferencia es que este efecto es tridimensional, dando un efecto de profundidad.

Cielo Abstracto

Descargas

Descarga el archivo de filtro 3DReflect y súbelo a la carpeta “/filters” para empezar a disfrutarlo.Se adjunta también el archivo de idioma Español es_ES.php, para tener la traducción de los parámetros de este nuevo plugin (súbelo a tu carpeta “/lang”).

Código fuente

Este es el código fuente del archivo XML. Todabía no he escrito la API para desarrollar filtros de Imaset, pero con este ejemplo, puede que alguien ya se atreva a intentar algo.

  1. <filter>
  2.         <name>3DReflect</name>
  3.         <category>decoration</category>
  4.         <parameters>
  5.                 <pa>$s=30</pa>
  6.                 <pa>$oi=60</pa>
  7.                 <pa>$pr=25</pa>
  8.         </parameters>
  9.         <function>
  10.                 //controlo los limites
  11.                 $s = $imaset->lim($s,300,1); //tamaño
  12.                 $oi = $imaset->lim($oi,100,5); //opacidad inicial
  13.                 $pr = $imaset->lim($pr,100,0); //profundidad
  14.  
  15.                 $sx = imagesx($im);
  16.                 $sy = imagesy($im);
  17.                 if($s>$sy) $s = $sy-1;
  18.                
  19.                 $x = $sx+2*$pr;
  20.                 $y = $sy+$s;
  21.  
  22.                
  23.                 $reflekt = imagecreatetruecolor($x,$y);
  24.                 $color = imagecolorallocate($reflekt, $imaset->Red,$imaset->Green,$imaset->Blue); //Fondo
  25.                 imagefilledrectangle($reflekt, 0, 0, $x, $y, $color); //Relleno el fondo       
  26.                 imagecopy($reflekt, $im, $pr, 0, 0, 0, $sx, $sy);
  27.  
  28.                 $reflekt = $imaset->resize($reflekt,‘200%’,); //resize al doble por mejorar calidad
  29.  
  30.                 //hago el efecto conico de reflejo
  31.                 for($i=0;$i<=$s*2;$i++)
  32.                         imagecopyresampled($reflekt, $im, $pr*2-($pr*$i/$s), $sy*2+$i, 0, $sy-(round($i/2)+1), $sx*2+2*($pr*$i/$s), 1, $sx, 1);
  33.                
  34.                 $reflekt = $imaset->resize($reflekt,‘50%’,); //resize a la mitad
  35.  
  36.                 //finalmente creo el efecto transparencia con una imagen comodin
  37.                 $bla = imagecreatetruecolor($x,1);
  38.                 $color = imagecolorallocate($bla, $imaset->Red,$imaset->Green,$imaset->Blue); //Fondo
  39.                 imagefilledrectangle($bla, 0, 0, $x, 1, $color); //Relleno el fondo
  40.                
  41.                 for($i=0;$i<$s;$i++)
  42.                         imagecopymerge($reflekt, $bla, 0, $sy+$i, 0, 0, $x, 1, 100-round($oi-($i*$oi/$s)));
  43.  
  44.                 return $reflekt;
  45.         </function>
  46. </filter>

Categorias: Código, Imagen Digital, Plugins, Wordpress | 1 comentario »

Solucionado problema del plugin Imaset 2.1

7 de Diciembre del 2007 Escrito por Alex Barros

Tienes problemas para que funcione Imaset?
Hasta ahora algunas personas tenían problemas para que el plugin Imaset en la versión 2.1 les reconociera las imágenes.

Ya he conseguido dar con el problema, y he cambiado el archivo de descarga para que sustituyáis los archivos en el plugin.

El problema que ocasionaba esto es bastante complejo de explicar, pero está relacionado con la yuxtaposición de arrays. En el código de Imaset yo había optado por usar la función array_merge(), la cual une los arrays que le pases como parámetro, pero esta función no mantiene los índices numéricos, y para la aplicación era importante que los mantuviera.

La solución es usar el concatenador básico de arrays, es decir, el operador suma.

  1. $a1 = array(5=>"ABC",12=>"DEF");
  2. $a2 = array(30=>"PPP",50=>"UIO");
  3.  
  4. $a3 = $a1 + $a2;
  5.  
  6. /*  Ahora $a3 es:
  7. a3[5] = "ABC"
  8. a3[12] = "DEF"
  9. a3[30] = "PPP"
  10. a3[50] = "UIO"  */

Categorias: Aplicaciones, Boozox, Código, PHP, Plugins | 11 comentarios »

Imaset 2.1 Liberado

28 de Noviembre del 2007 Escrito por Alex Barros

Descargar Imaset 2.1 Al fin me decido a liberar la versión 2.1 de Imaset.

El plugin lleva unas semanas finalizado, pero he estado probándolo en diferentes servidores y distintos navegadores y, dada la gran cantidad de modificaciones internas que trae este nuevo plugin, han surgido una serie de incompatibilidades.

Sin embargo he decidido lanzar esta versión, ya que la considero estable (a falta de solucionar algunos bugs) para que quien no se vea afectado por estas incompatibilidades pueda ir disfrutando.

Problemas conocidos

Fundamentalmente dos:

  • Dada la nueva implementación de filtros almacenados en archivos externos, hay dos filtros que en algunos servers no dan buenos resultados. Estoy trabajando en solucionarlo para posteriores versiones
  • No funciona en Internet Explorer 6. Esto no me sorprende… es cosa del JavaScript, y también trabajo en hacerlo compatible.

Y ahora, lo más importante:

Novedades de Imaset 2.1

Sigue leyendo esta entrada »

Categorias: Aplicaciones, Imagen Digital, Novedades, Plugins, Software libre, Wordpress | 35 comentarios »

Novedades de Imaset 2.1

16 de Noviembre del 2007 Escrito por Alex Barros

imaset_2-10.png Imaset 2.1 está muy cerca. La primera beta ya está siendo distribuida entre algunos beta-testers, y la versión definitiva no tardará mucho en llegar.

Dado el éxito que tuvo la versión 2.0 del plugin, para esta siguiente versión (2.1) he decidido reestructurar todo el código, de arriba a abajo, para hacerlo mucho más modulable.

En esta nueva versión, se incluye un archivo settings.php, en el cual pueden configurarse algunas características, como el color de fondo de tu web, el idioma que quieres para la interfaz, y algunas características más.

El peso de la navegación se ha llevado al JavaScript, con lo que el plugin resulta notablemente más fluido, rápido y cómodo.

Una de las novedades más importantes, es que los filtros se almacenan en forma de archivo XML (excepto los considerados del “núcleo” de Imaset). Esto tiene tres ventajas:

  • La administración de filtros es sencilla, basta con borrar el filtro que no quieres, o subir por FTP uno nuevo
  • Si quieres disfrutar de un nuevo filtro, basta con subir un pequeño archivo.
  • Los programadores no tienen que entender cómo funciona interiormente imaset. Los filtros están muy estandarizados, y resulta muy fácil crear nuevos, siguiendo la API que próximamente será publicada.

Por último, recordar que el plugin estará disponible en algunos idiomas. En principio en Español, Inglés, Chino, Italiano y Rumano. Por defecto el plugin se muestra en inglés, pero puede modificarse muy fácilmente en settings.php

Este fin de semana se realizarán los beta-testeos y las traducciones oportunas, y muy pronto será el estreno mundial.

P.D.: También guardo otra pequeña sorpresa sobre Imaset, pero tendréis que esperar un poco más para conocerlo.

Categorias: Aplicaciones, Boozox, Imagen Digital, Novedades, Plugins | 4 comentarios »

Conseguir comentarios en nuestro Blog

17 de Octubre del 2007 Escrito por Alex Barros

Todos los que tenemos un blog sabemos lo importante que son los comentarios. Te ayudan a continuar con tu labor, a corregir errores, a completar información, a conocer a tus lectrores, y sobre todo pasar un buen rato.

Por eso es muy importante potenciar los comentarios, y darles el valor que se merecen. Voy a explicar una serie de estrategias que pueden hacer que se comente más en tu blog, o por lo menos que sea más agradable hacerlo.

Sigue leyendo esta entrada »

Categorias: Código, Diseño, HOWTO/CóMO, PHP, Plugins, Web, Wordpress | 2 comentarios »

Fin de los ojos rojos (redeye) con Gimp

4 de Octubre del 2007 Escrito por José Cabo

A veces haciendo una fotografía, al usar el flash, las pupilas de nuestros ojos se vuelven de color rojo o naranja y llega a dar una sensación de “vampiro”, algo extraña y muchas veces rozando lo ridiculo… Hay muchas formas de eliminar ese rojo, o al menos ocultarlo, de forma que la vista del fotografiado sea más agradable.

Usando el programa The Gimp podemos solucionar este problema de forma rápida con solamente seleccionar con un rectángulo la parte afectada y aplicando el plugin.

El plúgin Redeye en su versión 0.3 (solo para Linux) y 0.2 (para Linux y Windows) se puede descargar por “registry” de plugins para Gimp.
Para compilar (e instalar) ejecutar en la consola de Linux:
$ gimptool-2.0 --install redeye.c

Un ejemplo:

redeye1alexjose.jpg

La primera imagen es la original; la segunda la retocada con los valores personalizados (los cuales recomiendo) 50, 50, 0; y la tercera está hecha con los valores “automáticos” del plugin (un poco… débiles).

Categorias: Gimp, Imagen Digital, Plugins, Software libre | 2 comentarios »

“Escalado Líquido” para Gimp 2.2+ ya disponible como plugin

1 de Octubre del 2007 Escrito por José Cabo

Estoy seguro de que muchos de vosotros ya conoceréis un algoritmo para escalar imágenes casi sin deformar las figuras (personas, arboles, suelo…). Para los que no lo conozcáis, aquí un vídeo demostrativo:

Pues para los usuarios de Gimp ya tenemos a nuestra disposición el algoritmo en forma de Plugin para poder usarlo a nuestro antojo. Aquí tenéis algunos binarios para instalar en Ubuntu así como el código fuente para compilar en nuestra distribución de Linux favorita (./configure && make && sudo make install o sudo checkinstall).

El manejo es muy fácil. Una vez instalado el plugin abrimos en Gimp nuestra imagen que queremos retocar y nos vamos a la pestaña “Capas/Liquid Rescale”. En la nueva ventana simplemente ponemos la nueva resolución (podemos mirar en Advanced Options que hay más opciones, pero el “modo” que mejor me ha ido ha sido el que viene por defecto [transversal Absolute Value], así que mejor no tocar nada excepto si queremos probar los resultados) y le damos a “Aceptar”. Si la imagen es muy grande…. tardará un rato bastante (un minuto en hacer todos los procesos…), pero si es, por ejemplo, 1024 de anchura no creo que haya que esperar mucho tampoco.

Funciona bastante bien, un poco lento, pero cumple con su trabajo. Aunque no es perfecto el acabado está muy conseguido y mantiene prácticamente iguales las formas y figuras. Un ejemplo:

Original:
originlthumb.jpg

En esta siguiente tenemos la imagen de arriba retocada. La primera es escalada tal cual; la segunda usando el plugin Liquid Rescale con las mismas medidas que la 1ª y con las opciones predefinidas; la tercera se ha hecho usando capas (creadas previamente y seleccionando que es lo que queremos que se escale y que es lo que “nos daría igual”, todo gestionado desde el plugin).

total-thump.jpg

En definitiva, una verdadera maravilla.

Añadido a las 18:33 por Alex Barros
Al respecto también hay una web que aplica este filtro de forma online, aúnque con bastante lentitud, y problemas con archivos grandes (http://rsizr.com/)

Categorias: Diseño, HOWTO/CóMO, Imagen Digital, Plugins, Software libre | 2 comentarios »

« Entradas Anteriores

del.icio.us meneame.net RSS

Buscar:



Tagcloud

Entradas Recientes

Meta: