树莓派是专为学习计算机编程教育而设计的微型电脑,外观类似于迷你版的常规电脑“裸”主板(仅为信用卡般大小)。通过其自带的40 Pin引脚可与各种光电传感器等元器件相连,实现声光双控灯、烟雾报警等功能。另外,在树莓派的CSI卡槽接口(标注有“CAMERA”字样)上连接好摄像头后,通过简单地执行raspistill命令就能够进行很多自定义的拍照功能,在此略举三例。 一、只带一个参数的最简单拍照命令 给树莓派加电启动系统后,通过Windows的远程桌面连接登录进入其操作系统后,点击“LX终端”进入命令行窗口,在“pi@raspberrypi:~$”提示符后直接输入“raspistill -oimage.jpg”命令后回车,很快就会在/home/pi文件夹中生成一个名为image.jpg的图片文件(如图1所示)。 图1 命令行中的“-o”参数意为“输出”(Output),与后面的“image.jpg”组合而实现的功能是将摄像头拍照的内容输出为image.jpg文件,大小约为2.4MB(像素为2592×1944、分辨率为72dpi)。值得注意的是,如果重复执行该命令,新生成的image.jpg会将之前的相片进行“无提示”覆盖,即只保存有最后一次生成的“最新”image.jpg图片文件。 二、生成无损PNG图片 如果想要生成其它格式的图像文件,比如无损压缩的PNG格式,拍照命令就变为“raspistill -o image2.png -epng”,作用是在/home/pi文件夹中生成image2.png图片文件(如图2所示)。 图2 命令行中的“-e”参数意为“编码”(Encoding),可控制生成各种常见的图片格式,比如BMP、GIF等等。使用该命令生成的无损压缩文件image2.png大小为5.8MB,像素大小及分辨率与刚刚拍照生成的JPG格式文件相同。 三、利用间隔拍照实现“延时摄影” 由于最简单的“raspistill-o image.jpg”拍照命令只能保留最新拍摄的一张JPG图片,如果要实现间隔拍照功能(每隔一段固定时间就“自动”拍摄一张相片),就要使用“t”和“tl”参数,然后再结合“%d”为序列图片添加序号依次命名,这样才能依次生成不同的图片文件,比如执行“raspistill -t 300000 -tl 2000 -o image%03d.jpg”命令——其中的“-t”参数意为指定拍照和关闭时的延时时间(Timeout),后面的数值(300000)的单位是毫秒,即300秒(5分钟时间);“-tl”参数意为设置拍摄的间隔时间(TimeLapse),数值2000是指2000毫秒(2秒),即每隔2秒拍摄一张图片;“-o”参数后面的“image%03d.jpg”是设置生成图片的文件名序列编号,即“从0开始的三位编码”的意思,生成的文件名依次为image001.jpg、image002.jpg……执行该命令就会每隔2秒拍摄一张图片,一直拍摄300秒,共150张图片,它们分别以image001.jpg、image002.jpg……image150.jpg图片文件的形式保存于/home/pi文件夹中。 在命令执行之前先搭建一下实验环境,准备拍摄墨水在高脚杯静止水中的扩散现象,通过“raspistill -o image.jpg”命令试拍来调节好摄像头的方向与角度。均调试满意后开始执行“raspistill -t 300000 -tl 2000 -o image%03d.jpg”命令,同时迅速将准备好的两滴墨水小心滴入高脚杯中,此时树莓派控制摄像头开始工作——在/home/pi文件夹中不断生成序列图片(如图3所示),记录下墨水在清水中的缓慢扩散过程。 图3 5分钟实验时间结束之后,摄像头不再闪烁红灯,将/home/pi文件夹中刚刚生成的image001.jpg至image150.jpg从树莓派中复制到本地的Win 7中(删除标号为000和151的两张“余片”)。接下来要做的工作是将这150张图片进行有序合成,实现“延时摄影”效果——每张图片在视频中相当于静止的1帧,以在AE建立常规的NTSC格式(帧率为29.97,约等于30帧)视频为例,大约每秒会持续播放30帧画面,即30张有序的图片;刚刚拍摄的150张图片就是150帧画面,可持续播放5秒(每秒30帧),现在就变成:5分钟的实验时间生成了5秒钟的延时摄影视频,即“30个2秒”(1分钟)在1秒内的时间播放,实现了60倍速延时摄影效果。 视频的制作方法非常简单:打开AE CC 2015,首先按Ctrl-N组合键新建一个合成,保持默认的“Frame Rate”(帧率)为29.97,“Duration”(持续时间)为5秒,点击“OK”按钮;接着在左侧面板空白处双击进行图片素材的导入,在弹出的“Import File”窗口中定位至刚刚复制出的序列图片文件夹的第一个图片文件image001.jpg,注意一定要勾选下方的“JPEG Sequence”(图片序列)项,点击“Import”(导入)按钮,这样才能在AE中将这150个图片文件导入为“image[001-150].jpg”序列素材;然后将其选中并拖至AE的Comp 1合成视频轨道中,按住Shift键对整体大小及位置稍作调整,同时可拖动时间线对视频整体进行预览查看,然后按Ctrl-M组合键进行视频的渲染,设置好输出格式(比如MOV)后点击“Render”(渲染)按钮,很快就得到了延时摄影的最终视频(如图4)。 延时摄影比较适合于植物的花开过程、天空中云朵的漂移过程等速度较缓、持续时间稍长的拍摄情况,可根据实际情况使用raspistill设置不同的拍摄间隔时间及拍摄时长,最终使用视频处理软件进行合成即可。 图4 |