Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
1Activity
0 of .
Results for:
No results containing your search query
P. 1
manejo avanzado de imagenes en java

manejo avanzado de imagenes en java

Ratings: (0)|Views: 12 |Likes:

More info:

Published by: Danny Acosta Morales on Jun 24, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

12/17/2013

pdf

text

original

 
UNIVERSIDAD EL BOSQUEFACULTAD DE ING. ELECTRÒNICACURSO DE JAVAPRESENTADO A: JUAN CARLOS DÌAZPRESENTADO POR: JACKSON DAVID NIÑO Cod. 04170037MANEJO AVANZADO DE IMÁGENES EN JAVAINTRODUCCION:
El API de manejo avanzado de imágenes extiende la plataforma de Java (incluso el APIde Java 2D ) permitiendo una imagen sofisticada, alto rendimiento que procesa para ser incorporado en los programas de Java. El manejo avanzado de imagen de java es un juego de clases que proporcionan una funcionalidad de imagen más allá de Java 2D y dela Fundación de Java, aunque es compatible con esos API.El API de java avanzado de imagen lleva a cabo un juego de imagen del centro que procesa capacidades incluyendo imagen azulada, regiones de interés, hilando y laejecución diferido. JAI también ofrece un juego de imagen del centro que procesa aoperadores que incluyen a muchos puntos en común, área y operadores del dominio de lafrecuencia.JAI encapsula los datos de la estructura de la imagen y las invocaciones del métodoremoto dentro de los datos de la imagen re-utilizables, permitiendo un archivo de laimagen, un objeto de imagen de red o los datos del real-tiempo que vierten para ser  procesados idénticamente. JAI sigue una carrera de tiempo de la biblioteca modelo de java, mientras proporciona la independencia de la plataforma con el paradigma "escribauna vez, ejecute en cualquier parte." El imaging del cliente-servidor se apoya por vía dela plataforma de Java que está conectando a una red de computadoras y tecnologías deejecución remotas. La ejecución remota es basada en Java RMI (método remoto deinvocación). Esto permite que el código de Java en un cliente invoque las llamadas delmétodo en objetos que residen en otra computadora sin tener que mover aquéllos objetosal cliente.JAI sigue un modelo objeto dónde las imágenes y operadores de imagen son definidascomo objetos subclasificados fuera de un padre común. Un objeto del operador es elinstanciado con uno o más fuentes de la imagen y otros parámetros. Este objeto deloperador puede volverse una fuente de la imagen entonces para el próximo objeto deloperador. Las conexiones entre los objetos definen el flujo de datos procesados. Puedendefinirse los gráficos del editable resultantes de imagen que procesa los funcionamientose instanciado como necesitado. JAI también proporciona un armazón extensible que permite agregar las soluciones personalizadas al central API.
MANEJO AVANZADO DE IMÀGENES
 
Librería API 2D:
El API 2D de Java contiene gráficos avanzados en dos dimensiones, texto, y capacidadesde manejo de imágenes para los programas Java a través de la extensión del AWT. Este paquete soporta líneas artísticas, texto e imágenes, siendo flexible potente paradesarrollar interfaces de usuario, programas de dibujo sofisticados y editores de imágenes.El API 2D de Java proporciona:
Un modelo de renderizado uniforme para pantallas e impresoras.
Gráficos primitivos geométricos, como curvas, rectángulos, y elipses y unmecanismo para renderizar virtualmente cualquier forma geométrica.
Mecanismos para detectar esquinas de formas, texto e imágenes.
Un modelo de composición que proporciona control sobre cómo se renderizan losobjetos solapados.
Soporte de color mejorado que facilita su manejo.
Soporte para imprimir documentos complejos.Las capacidades de procesado de imágenes de Java se encuentran recogidas en el paquete
 java.awt.image
. Entre las mas importantes se pueden destacar:
Interfaces:ImageProducer ImageConsumer
.
ImageObserver
Las clases que implementa el interfaz
ImageProducer
sirven como fuentes de pixels. Lostodos de estas clases pueden generar los pixels a partir de la pantalla, o puedeinterpretar cualquier otra fuente de datos, como un fichero GIF. No importa cómo generelos datos, el principal propósito de un productor de imágenes es proporcionar pixels a unaclase
ImageConsumer
.Los productores de imágenes operan como fuentes de imágenes, y el modelo
 productor/consumido
que se sigue en el tratamiento de imágenes es el mismo que seutiliza en el modelo
 fuente/recepto
de eventos.En particular, los métodos declarados en el interfaz
ImageProducer
hacen posible queuno o más objetos
ImageConsumer
se registren para mostrar su interés en una imagen.El productor de la imagen invocará a los todos declarados en el interfaz
ImageConsumer
para enviar pixels a los consumidores de imágenes.Un productor de imágenes puede registrar muchos consumidores de sus pixels, de lamisma forma que una fuente de eventos puede registrar múltiples receptores de suseventos. En el interfaz ImageProducer hay varios métodos para manipular la lista deconsumidores, por ejemplo para añadir nuevos consumidores interesados en los pixels del productor, o para eliminar consumidores de la lista.
 
El interfaz
ImageConsumer
declara métodos que deben ser implementados por las clasesque reciben datos desde un productor de imágenes. El principal de estos métodos es
 setPixels()
.void setPixels( int,int,int,int,ColorModel,byte[],int,int )
La clase ColorModel
Dependiendo de cómo se quiera representar la imagen en pantalla, un solo pixel puedecontener mucha información, o casi ninguna. Por ejemplo, si se quieren dibujar una seriede líneas del mismo color sobre un fondo de un color diferente, la única información quedebe contener cada pixel es si debe estar encendido o apagado, es decir, que solamentesería necesario un bit de información para representar al pixel.En el otro extremo de la información que puede recoger un pixel se encuentran losgráficos complejos de los juegos de ordenador, que requieren 32-bits para representar un pixel individual. Estos 32 bits se dividen en grupos de cuatro octetos de bits, o bytes. Tresde estos grupos representan la cantidad de colores fundamentales:
rojo
,
verde
y
azul 
, queforman parte del color del pixel; y el cuarto byte, normalmente conocido con byte
alpha
,se utiliza para representar la transparencia, en un rango de 0 a 255, siendo 0 latransparencia total y 255 la opacidad completa.En teoría, este formato permite la utilización de 16 millones de colores en cada pixelindividual, aunque puede ser que el monitor o la tarjeta gráfica no sean capaces devisualizar electrónicamente tal cantidad de colores. Cada uno de los extremos se puedeconsiderar como un
modelo de color 
. En Java, un modelo de color determina cuántoscolores se van a representar dentro del AWT. La clase
ColorModel
es una clase abstractaque se puede extender para poder especificar representaciones de color propias.Un modelo de color es necesario porque hay muchos métodos que reciben un array de bytes y convierten esos bytes en pixeles para su presentación en pantalla, es decir,convierten los bytes de datos en pixels visuales sobre la pantalla. Por ejemplo, con unmodelo de color directo simple, cada grupo de cuatro bytes se podría interpretar como larepresentación de un valor del color de un pixel individual. En un modelo de color indexado simple, cada byte en el array se podría interpretar como un índice a una tabla deenteros de 32 bits donde cada uno de esos enteres representa el valor del color adscrito al pixel.El AWT proporciona tres subclases de
ColorModel
:
IndexColorModel
,
ComponentColorModel
y
PackedColorModel
.
La clase IndexColorModel:
Cuando se utilizan imágenes de alta resolución, se consume gran cantidad de memoria; por ejemplo, una imagen de dimensiones 1024x768, contiene 786.432 pixels individuales.Si se quieren representar estos pixels con sus cuatro bytes en memoria, se necesitarán3.145.728 bytes de memoria para esta imagen.Para evitar este rápido descenso de memoria, se han incorporado varios esquemas deforma que las imágenes se puedan representar de forma razonable sin comprometer 

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->