Android高效内存1:一张图片占用多少内存

  在做内存优化的时候,我们发现除了解决内存泄露问题,剩下的就只有想办法减少真实的内存占用。而在App中,大部分内存可能被我们图片占用了,所以减少图片的内存占用可以带来直接的效果。本文就简单介绍一张图片到底占用多少内存,我们先假设我们有一张图片时 600 * 800 的,图片占用空间大小假设是 100KB另外本文知识点也是面试官喜欢问的一个点,看看自己的回答到什么级别了。

图片内存大小跟占用空间大小有什么关系?

  占用空间的大小不是图片占用内存的大小,一些初学者可能会误解一下。占用空间是在磁盘上占用的空间,内存大小是加载到内存中占用的内存大小。两个只是单位是一样的,本质不是一个概念。

一张图片到底占用多少内存呢?

  1. 图片占用内存的计算公式:图片高度 * 图片宽度 * 一个像素占用的内存大小

  2. 所以上面的图片占用内存是:800 * 600 * 4 byte = 1875KB = 1.83M 

上面的计算公式中,为什么是4byte呢?

4byte是跟图片的编码格式有关系,更多详情请移步

https://cloud.tencent.com/developer/article/1013306

图片所在目录对内存的影响?

  在Android中,图片的存放目录和手机的屏幕密度影响图片最终的大小,举个例子:

  假设我们的图片放到xhdpi目录下,那么我们本文中的图片占用的内存大小如下:

  屏幕密度为2的设备:800 * 600 * 4byte = 1.83M

  屏幕密度为3的设备:800 * 1.5 * 600 * 1.5 * 4byte = 1.83 * 2.25M = 4.12M

  所以,计算图片占用内存大小的时候,要考虑图片所在的目录跟设备密度,这两个因素其实影响的是图片的高宽,android会对图片进行拉升跟压缩。

总结

  1. 图片确实很占用内存,内存优化先考虑图片内存占用;

  2. 一定要避免使用大图片,这就是.9图很有用的原因之一;

  3. 图片的大小对内存的影响是正比关系;

  4. 本文只是简单的告知读者怎么计算图片的内存大小。

  5. 如何减少图片内存占用的方法总结请看 https://cloud.tencent.com/developer/article/1013306

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏来自地球男人的部落格

TensorFlow中CNN的两种padding方式“SAME”和“VALID”

在用tensorflow写CNN的时候,调用卷积核api的时候,会有填padding方式的参数,找到源码中的函数定义如下(max pooling也是一样): ...

7325
来自专栏人工智能LeadAI

译文 | 与TensorFlow的第一次接触 第六章:并发

第一版TensorFlow第一版发布于2015年11月,它可以运行在多台服务器的GPU上,同时并在其上面进行训练。2016年2月,更新版中增加了分布式与并发处理...

4237
来自专栏debugeeker的专栏

《coredump问题原理探究》windows版5.2节数组

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuzhina/article/detai...

1063
来自专栏陈仁松博客

在Windows下安装TensorFlow

目前TensorFlow在Windows下只支持Python 3.x。 1.下载Python 首先安装Pythone 3.6.4 下载地址 升级pip pyth...

4464
来自专栏人工智障

visdom的安装及在pytorch下损失函数的可视化应用

更新:新版visdom0.1.7安装方式为:conda install -c srivasv visdom 

6240
来自专栏debugeeker的专栏

《coredump问题原理探究》windows版9.2节dll hell导致的虚函数偏移

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuzhina/article/detai...

891
来自专栏xingoo, 一个梦想做发明家的程序员

【插件开发】—— 12 GEF入门

什么是GEF?   GEF的英文全称是Graphical Editing Framework,也就是图形化编辑框架。它帮助我们轻松的创建一些模型,并提供...

2269
来自专栏GAN&CV

深度学习优化器算法详解:梯度更新规则+缺点+如何选择

转载自:https://mp.weixin.qq.com/s/RZc1PUgZs1BqRPeyBmTELA

3582
来自专栏一场梦

PHP网址缩短算法代码(修复PHP7.0问题)

2113
来自专栏小L的魔法馆

C++定义一个简单的Computer类

5046

扫码关注云+社区

领取腾讯云代金券