Duvida com Imagem

Faço assim para preencher um JLabel com a imagem:

lblImagem.setIcon(new ImageIcon(img.getScaledInstance(lblImagem.getWidth(),lblImagem.getHeight(), Image.SCALE_DEFAULT)));

O comportamento é o seguinte:
Quando a imagem é maior que o JLabel, a imagem é diminuída para ficar do tamanho do JLabel, mas por outro lado, quando a imagem é maior que o JLabel, a imagem é aumentada para se ajustar ao JLabel e ela fica distorcida.

E quando a imagem é maior que o JLabel, se a imagem for bem alta e não tão larga, ela se expande pros dois lados ficando distorcida, tem como expandir até atingir a altura ou largura máxima do JLabel?

Como posso fazer para quando for menor, permanecer o tamanho original da imagem?