O IrfanView pode ajudar a visualizar rapidamente a memória usada:
(veja o cálculo da memória)
WIDTH x ALTURA x (BITS POR PIXEL) = memória necessária para carregar a imagem completa
Felicidades!
Aprendi com um postagem de estouro de pilha que a memória necessária para exibir uma imagem e o tamanho da imagem é igual a
4 * image dimensions
Eu tenho algumas imagens 800x800 e vejo que seu tamanho é de cerca de cem KB, o que eu acho bastante pequeno. Mas, de acordo com a fórmula acima, é necessário mais de 2MB para exibi-lo!
A postagem SO diz que, como o bitmap está usando cores ARGB, cada pixel requer 4 bytes de espaço de armazenamento. Então é por isso que a fórmula é 4 * dimensões da imagem. Mas vejo que apenas 100 KB de espaço são necessários para armazenar a imagem!
O computador usa um método diferente para armazenar a imagem? 1 pixel ainda precisa de 4B para ser armazenado? Como isso está acontecendo?
O IrfanView pode ajudar a visualizar rapidamente a memória usada:
(veja o cálculo da memória)
WIDTH x ALTURA x (BITS POR PIXEL) = memória necessária para carregar a imagem completa
Felicidades!
Sua imagem está compactada (por exemplo, com jpeg
ou png
). Se você armazenasse a imagem em um formato descompactado ( tiff
sem zip
compactação), você também obteria esse tamanho no disco.
A memória necessária para armazenar uma imagem pode ser menor que a memória necessária para exibi-la. Por exemplo, se a imagem for um retângulo verde de 80 x 80, você poderá armazená-la como o equivalente a "80 por 80 retângulo verde". Mas, para exibi-lo, você precisa de 1600 pontos verdes, cada um deles ocupando algum espaço.
Tags memory-usage memory