Enquanto o blog estava em férias, eu estava trabalhando em um projeto da minha empresa. Neste projeto optamos por usar a JAI num aplicativo de análise de imagens. Eu já conhecia, mas nunca tinha programado com esta biblioteca, aí tive que aprender por onde começar. É isto que vou contar aqui.
A JAI
Java Advanced Imaging é o nome da biblioteca da sun para processamento de imagens. O tutorial mais completo que connheço é este (mas repare que é de 1999…). Também não existe um livro para quem precisa entender ele a fundo, então as minhas principais ferramentas de estudo foram:
É, algumas vezes só olhando o código, mesmo…
Também tive a ajuda de colegas que aprenderam antes de mim, e de um tutorial em português organizado por eles, que estamos organizando para distribuir.
OK, now codding:
Depois de baixar a biblioteca, configurar o IDE, e iniciar um projeto, vem aquela sensação de “papel em branco”. O que resolve isso é uma classe main que abre a imagem e mostra a imagem (ou salva). Depois disso pronto é só achar o método que você precisa usar e colocar no meio…
Código para abrir a imagem (comece com este):
PlanarImage imagem = JAI.create("fileload", "caminho e nome do arquivo");
Para mostrar a imagem:
DisplayJAI display = new DisplayJAI(imagem); //altere o nome da variável se o resultado da sua operação tiver outro nome
//cria o frame do swing onde a imagem será exibida
JFrame frame = new JFrame("Imagem X");
//cria o scroll para efetuar as rolagens caso a imagem seja muito grande
JScrollPane scroll = new JScrollPane();
//adiciona o display dentro do scroll
scroll.setViewportView(display);
//adiciona o scroll dentro do frama
frame.add(scroll);
//define a operação padrão para o botão fechar do frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 400); //define o tamanho do frame
frame.setVisible(true); //manda o frame ser exibido
Entre estes dois trechos de código, coloque a operação JAI de sua preferência… isso funcionou como ponto de partida para mim.
Livros! (Update, dia 11/03/2010)
Foi só falar que não tinha, que pipocaram links de livros de vários lugares. Como alguns foram por email, outros por comentários, vou listar eles aqui:
- Building Imaging Applications Java Technology
- Java Media APIs: Cross Platform Visualization
- Digital Image Processing: Practical Introduction
- Digital Image Processing: Algorithmic Introduction
Muito Obrigada pelas contribuições!
Estou estudando a JAI agora, por isso espero ter mais posts sobre ela em breve. Interessou? Assine o RSS.

