Manipulando BuffreredImages

Pessoal é o seguinte, tenho uma imagem 1024x1024 que está armazenada num BufferedImage. Esta imagem eu estou espelhando num BufferedImage auxiliar para aplicar filtros de brilho, contraste, etc…

Agora estou trabalhando com região de interesse e preciso saplicar na BufferedImage original os filtros da BufferedImage auxiliar, porém, só nos XxY Pixels. Por ex: Se a região de interesse é de 100x100 pixels, devo copiar para o original só os 100x100 primeiros pixels da auxiliar.

Alguém sabe como faço essa cópia de determinada região de um BufferedImage pra outro?

Grato

Para capturar uma sub-imagem de BufferedImage:

http://java.sun.com/javase/6/docs/api/java/awt/image/BufferedImage.html#getSubimage(int,%20int,%20int,%20int)

Para aplicar a sub-imagem à BufferedImage original, use BufferedImage.createGraphics() para obter um objeto Graphics2D e em seguida use drawImage() sobre este objeto Graphics2D.

Aproveitando o embalo, como desenho um retangulo nesse BufferedImage ?

A classe Graphics2D oferece para isso os métodos drawRect(), drawPolygon() e draw().