Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / Procesamiento de imágenes en java con ImageMagick

Procesamiento de imágenes en java con ImageMagick

Autor jc mouse lunes, agosto 26, 2019

im4java es una interfaz pura de Java para la línea de comandos de ImageMagick. La interfaz de la línea de comandos de IM es bastante estable, por lo que su programa Java (y la biblioteca im4java) funcionarán en muchas versiones de IM. im4java también proporciona una mejor interfaz OO (el «lenguaje» de la línea de comando IM con su notación de operación de posfijo se traduce muy fácilmente en notación OO).

Algunas de sus características son:

  • Admite la mayoría de los comandos de ImageMagick
  • Permite la reutilizacion de una línea de comando varias veces para diferentes conjuntos de imágenes.
  • Las opciones y operadores se traducen en nombres de métodos similares que ImageMagick.
  • Compatibilidad con BufferedImage, es decir, puede usar BufferedImages como entrada a los comandos IM y salida de los comandos IM a una imagen Buffered.
  • Soporta GraphicsMagick, jpegtran, ufraw, exiftool, dcraw
  • Procesamiento paralelo de múltiples imágenes de entrada

im4java se encuentra con licencia LGPL.

Para obtener más detalles sobre el proyecto, visite la página http://im4java.sourceforge.net/

DESCARGA

Puede descargar la ultima versión en https://sourceforge.net/projects/im4java/files/

EJEMPLO

A continuación implementamos un ejemplo paso a paso del uso de im4java con el IDE Netbeans, java 8 y el Sistema Operativo Linux. Se aplicaran sobre una imagen algunos comandos de ImageMagick para aplicar el efecto Polaroid.

Paso 1. 

Crear un proyecto en Netbans «Example Imagemagick» y agregar el *.jar im4java tal cual se muestra en la siguiente imagen:

im4java ejemplo

Paso 2.

Buscar una imagen a procesar y colocarla en la base del proyecto.

sagiri cosplay

Paso 3.

Para usar im4java se necesitan objetos de dos clases: Un ImageCommand como ConvertCmd y una Operación como IMOperation. El ImageCommand es más o menos estático, crearía una instancia una vez y la reutilizaría durante la vida útil de su programa. Las excepciones a esta regla son los casos de uso más avanzados. Por el contrario, la Operación es el objeto de ajuste de todas las opciones de línea de comandos que tiene la intención de pasar al comando dado.

En la clase Main.java pega el siguiente código y ejecuta

import java.io.IOException;
import org.im4java.core.ConvertCmd;
import org.im4java.core.IM4JavaException;
import org.im4java.core.IMOperation;
/**
 * @see https://www.jc-mouse.net/
 * @author mouse
 */
public class Main {

    public static void main(String[] args) {
        try{
            // Se crea comando
            ConvertCmd cmd = new ConvertCmd();

            // Se crea operacion
            IMOperation op = new IMOperation();
            //archivo origen
            op.addImage("sagiri_izumi.png");
            op.bordercolor("snow");
            op.background("gray");        
            op.polaroid(5.0);            
            //imagen de destino
            op.addImage("sagiri.png"); 
        
            // Ejecuta operacion
            cmd.run(op);
            System.out.println("FIN");
        }catch( IOException| InterruptedException| IM4JavaException ex){
            System.err.println(ex.getMessage());
        }
    }

}

Si no obtuvimos ningún problema, se creara un nuevo archivo de imagen con las operaciones indicadas.

ClariS Polaroid efecto

enjoy!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Login estilo Google

Login estilo Google

Google tiene entre su formulario de autenticación de usuario para sus diferentes servicios (gmail, blogger, youtube, g+)...

Método de la Regla Falsa o Regula Falsi

Método de la Regla Falsa o Regula Falsi

Este método, también conocido como método de interpolación lineal, es un método iterativo de resolución numérica de ecua...

Tutoriales para creación de videojuegos gratis en descarga directa

Tutoriales para creación de videojuegos gratis en descarga directa

La comunidad 3D Buzz  era una de los lugares donde la gente curiosa de aprender a realizar videojuegos buscaba recursos...

Filtros con JMF y una webcam [Proyecto]

Filtros con JMF y una webcam [Proyecto]

En esta oportunidad dejo a consideracion un proyecto para la captura de video desde una webcam, utilizando filtros como...

Java Webservices – Servicios Web

Java Webservices – Servicios Web

Un servicio web (Web Services) es un sistema de software en la web que nos ofrece la posibilidad de realizar una o múlti...

Buscar y cargar imagenes de disco

Buscar y cargar imagenes de disco

Cuando se almacenan imágenes en una aplicación java y se desea después a modo de registro buscar estas y cargarlas en al...

Comparte lo que sabes

Categorias

Últimas entradas

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp