用Python语言显示图片的倒影效果

来源:互联网 发布:lua和javascript 编辑:程序博客网 时间:2024/04/20 12:01

Python是一种强大的开源解释性语言,最初是在苹果计算机上被编译成功的,但现在它已经可以运行于世界上主流的操作平台之上了,对于常见的Linux和Windows平台的支持当然更不在话下。Python脚本语言的优点很多,它易学易用,开源免费,可移植性高,内建丰富的数据结构,库涵盖面广,无需编译可直接运行。

Python脚本语言的用途非常广,单就工程师而言,利用它可以方便的制作开发用的工具,快速演练算法,构建测试框架等等。本文以显示图片的倒影效果为例,直观的展示Python脚本语言令人惊讶的简洁高效性。

下面是一张名叫Lena的国际标准测试图像,

以下的Python代码为其加上简单倒影效果,

# -*- coding: utf-8 -*-import Image# 显示图片的倒影效果def reflect(imagename):# 打开原图片image = Image.open(imagename)(width, height) = image.size# 生成地面图片gndi = image.convert('L')# 转为灰度图片gndi = gndi.transpose(Image.FLIP_TOP_BOTTOM)# 做垂直方向上的镜像gndi = gndi.resize((width, height / 2))# 缩短为1/2的高度gndi = gndi.convert(image.mode)# 变回原图的颜色模式# 合成倒影图片rfli = image.resize((width , height + height / 2))# 合成为3/2的高度rfli.fromstring(image.tostring() + gndi.tostring())# 合并原图片和地面图片的数据rfli.show()# 显示合成图片# 程序入口,相当于C语言中的main函数if __name__ == '__main__':reflect('lena.jpg')
直接执行此Python脚本,可以看到如图所示的倒影效果,