python - 有没有办法用python检查图像占用了多少内存?

标签 python python-imaging-library

pillow 提供size 来检查图像的分辨率。

>> from PIL import Image
>> img = Image.open('Lenna.png')
>> img.size
(512, 512)

有没有办法检查图像占用了多少内存?该图像使用 512*512*4 字节内存吗?

最佳答案

您可以使用sys 库来获取对象的大小(以字节为单位)。 Kai 的答案的不同之处在于,他正在计算磁盘上图像的大小,而这则计算加载的 python 对象(及其所有元数据)的大小:

import sys

sys.getsizeof(img)

编辑:看到这个之后website , sys.getsizeof() 似乎主要适用于原始类型。

您可以查看更彻底的实现 (deep_getsizeof()) here .

这个post还提供了很多细节。

最后,还有 pympler 库,它提供了计算对象使用的 RAM 内存的工具。

from pympler import asizeof

asizeof.asizeof(img)

关于python - 有没有办法用python检查图像占用了多少内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56764507/

相关文章:

python - GAE Python : Search by Date using dateutil. 解析器

python - 了解 python asyncio 协议(protocol)

python - 在Python中处理另一个线程中的信号

python - 无法将文本与图像上绘制的线条对齐

python - 如何将类型为 "object"的时间戳列转换为正确的 "time"类型?

python - 我如何在 django 中运行特定的迁移部门

python - 将 16 位 numpy 数组保存为 16 位 PNG 图像

python - 从 Matplotlib .pngs 创建动画

python - PIL处理PNG的问题

python - 枕头切割图像