如何在树莓派上使用图片特效
现在使用树莓派摄像头模组("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] 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的使用说明可以查阅官方文档。
原文发布时间:2015-03-30
本文来自云栖合作伙伴“linux中国”
加入翻译组或相关合作请关注微信公众号MagPi ,私聊后台 欢迎各论坛网站公众号分享转载,请以 原文超链接或链接形式 转载并注明出处 子豪兄。
挂卡,我也是今天知道这个词语,意思就是steam中某些游戏有集换式卡牌,集齐能合成徽章有经验,玩游戏到一定时间可以获得总数一半数量的卡,挂卡就是挂游戏时间获得这一部分的卡。
相关文章
- 思路:如何跳过CreateProcess调用底层创建进程函数
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)2----通过应用程序域AppDomain加载和卸载程序集之后,如何再返回原来的主程序域
- 手机照片到底如何分类管理才科学?用备忘录管理图片高效又省心
- 如何将手机的便签转换成图片,并发送给多个好友?
- [C++]Qt 如何处理密集型耗时的事情(频繁调用QApplication::processEvents)
- 【华为云技术分享】如何拆分用户故事
- 【我的物联网成长记2】设备如何进行选型?
- PHP如何判断一个gif图片是否为动画?
- 如何把VBS转换为EXE文件
- 博客园已经写好的文章或者随笔如何归类
- 如何制作迅雷7的皮肤,如何获取迅雷7皮肤的图片
- TotalCommander使用方法,如何对图片批量重命名
- 如何利用Photoshop扣取图片上的字体(一)
- android UI中添加一张图片如何将这张图片中某一部分设为透明的
- 什么是Eureka? 单机版Eureka如何使用?
- 如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
- 关于如何根据UI的版本把Tab切换成新的Notes UI Component
- 苹果手机iphone如何将视频转成gif图片
- 1V1手把手实战教学,微搭低代码中如何上传图片
- 如何用NotePad++查看二进制文件
- 低成本更清晰,下一代视频编码技术将如何实现这一目标?
- 详解ResNet 网络,如何让网络变得更“深”了
- [h5棋牌项目]-10-c++ 如何把一个数组的值赋到另一个数组
- 如何使用MATLAB绘制ggplot风格图片(散点图及折线图)
- 超级好用的笔记工具------Typora 如何修改Typora 中图片保存的位置
- 如何设置Win11弹出外置硬盘
- 如何把包含图片的docx文件转换为HTML WORD 转为html
- .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
- 如何在真机上调试Android应用程序(图文详解)(zz)
- 如何调优JVM
- 【科研技巧】如何使用EndNote 20-入门教程附详细图片介绍
- 如何给一张图片设置帘子(水幕)效果,或者反向帘子效果?