Eu uso este código aqui:
BufferedImage bimg = ImageIO.read(img);
int h = bimg.getHeight();
int w = bimg.getWidth();
porém pelo que dá pra ver este código faz uma leitura da imagem, mas isto parece ser um disperdicio de CPU visto que eu só preciso da altura, largura e tamanho em KB da imagem.
Alguém me recomenda um código mais eficiente??