PIL(Python Image Library) 1.1.16中对像素操作的加速

    近来在学习用Python作些图像处理的工作,不断被Python开发的高效率所震撼,而且也感觉到了开发者对运行期效率的重视,不仅在我使用2.5版本时明显感到比原来的2.4版本效率高,就连PIL的新版本中也针对图像的像素操作效率进行了很大的改善。
    PIL中效率的改善主要来自于Image模块中的load函数,这个函数是在PIL 1.1.6版本中新增加的,相比于原来的getpixel与putpixel函数,主要的目的就是通过提供图像的缓存操作对象,提高对图像数据读写操作的效率。
    这里可以通过一个简单的示例对比两种操作方式的差异,首先打开一个图片文件,同时创建一个相同大小的图片,然后将原始图片的数据逐像素的拷贝到新的图片中,代码如下。该代码在我的机器上运行,对于图像分辨率为2048*1536的图片,只需要5秒钟,而如果采用getpixel与putpixel函数实现(循环体中注释掉的代码),则需要25秒钟,可见load函数对于效率改善非常明显。
import  Image
import  ImageFilter

ima 
=  Image.open(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值