用Python语言显示图片的倒影效果
Python是一种强大的开源解释性语言,最初是在苹果计算机上被编译成功的,但现在它已经可以运行于世界上主流的操作平台之上了,对于常见的Linux和Windows平台的支持当然更不在话下。Python脚本语言的优点很多,它易学易用,开源免费,可移植性高,内建丰富的数据结构,库涵盖面广,无需编译可直接运行。Python脚本语言的用途非常广,单就工程师而言,利用它可以方便的制作开发用的工具,快速演练
·
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脚本,可以看到如图所示的倒影效果,
更多推荐
已为社区贡献1条内容
所有评论(0)