如何在树莓派上使用图片特效
现在使用 树莓派摄像头模组 (raspi cam),也可以像使用卡片相机那样,给拍摄的照片增加各种各样的图片特效。 raspistill 命令行工具,为您的树莓派提供了丰富的图片特效选项,来美化处理你的图片。
有 三个命令行工具 可以用于 抓取 raspicam 拍摄的照片或者视频 ,在这文章中将重点介绍其中的 raspstill 工具。raspstill 工具提供了丰富的控制选项来处理图片,比如说:锐度(sharpness)、对比度(contrast)、亮度(brightness)、饱和度(saturation)、ISO、自动白平衡(AWB)、以及图片特效(image effect)等。
在这篇文章中,将介绍如何使用 raspstill 工具以及 raspicam 摄像头模组来控制照片的曝光、AWB 以及其他的图片效果。我写了一个简单的 python 脚本来自动拍摄照片并在这些照片上自动应用各种图片特效。raspicam 的帮助文档中介绍了该摄像头模组所支持的曝光模式、AWB 和图片特效。总的来说,raspicam 一共支持 16 种图片特效、12 种曝光模式以及 10 种 AWB 选项。
Python 脚本很简单,如下所示 。
#!/usb/bin/python
import os
import time
import subprocess
list_ex=['auto','night']
list_awb=['auto','cloud',flash']
list_ifx=['blur','cartoon','colourswap','emboss','film','gpen','hatch','negative','oilpaint','posterise','sketch','solarise','watercolour']
x=0
for ex in list_ex:
for awb in list_awb:
for ifx in list_ifx:
x=x+1
filename='img_'+ex+'_'+awb+'_'+ifx+'.jpg'
cmd='raspistill -o '+filename+' -n -t 1000 -ex '+ex+' -awb '+awb+' -ifx '+ifx+' -w 640 -h 480'
pid=subprocess.call(cmd,shell=True)
print "["+str(x)+"]-"+ex+"_"+awb+"_"+ifx+".jpg"
time.sleep(0.25)
print "End of image capture"
这个脚本完成了以下几个工作。首先,脚本中定义了 3 个列表,分别用于枚举曝光模式、AWB 模式以及图片特效。在这个实例中,我们将使用到 2 种曝光模式、3 种 AWB 模式以及 13 种图片特效。脚本会遍历上述 3 种选项的各种组合,并使用这些参数组合来运行 raspistill 工具。传入的参数共 6 个,分别为:(1)输出文件名;(2)曝光模式;(3)AWB 模式;(4)图片特效模式;(5)拍照时间,设为 1 秒;(6)图片尺寸,设为 640x480。脚本会自动拍摄 78 张照片,每张照片会应用不同的特效参数。
执行这个脚本也很简单,只需键入下面的命令行:
$ python name_of_this_script.py
下面是抓取到一些样张。
小福利
除了使用 raspistill 命令行工具来操控 raspicam 摄像模组以外,还有其他的方法可以用哦。 Picamera 是一个 python 库,它提供了操控 raspicam 摄像模组的的 API 接口,这样就可以便捷地构建更加复杂的应用程序。如果你精通 python,那么 picamera 一定是你的 hack 项目的好伙伴。picamera 已经被默认集成到 Raspbian 最新版本的的镜像中。当然,如果你用的不是最新的 Raspbian 或者是使用其他的操作系统版本,你可以通过下面的方法来进行手动安装。
首先,先在你的系统上安装 pip,详见 指导 。
然后,就可以按下面的方法安装 picamera。
$ sudo pip install picamera
picamera 的使用说明可以查阅 官方文档 。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论