树莓派3B应用篇之视频监控(上)

今天为大家带来树莓派视频监控的上篇。

准备:

(1)装好raspbian系统的树莓派3B(之前的树莓派也是可以的);

(2)一个网络摄像头,淘宝上淘一个低端的、能用的就可以了;我用的才30元,解析率640*480;

(3)相应配件如显示器、通畅的网络、电脑等;我是用的是putty+vnc,没有显示器。

开始:

一、摄像头的调试:

(1)调焦:

买来的低端摄像头一般会配个windows调焦软件,方便你在pc上调好焦,在树莓派上就不用调 了,这个我就不多说了,比较简单。

(2)在raspbian系统下测试拍照与实时视频:

安装拍照软件uvccapture与视频录制软件luvcview:

sudo apt-get install uvccapture
sudo apt-get install luvcview


拍照可以用下面的命令:

uvccapture -B120 -C40 -S30 -x640 -y480 -ozhaopian.jpg

下面是关于uvccapture设置参数的提示:  

Camera Settings:

-B     Brightness

-C     Contrast

-S     Saturation

-G     Gain 

命令中其他三个参数-x照片宽、-y照片高、-o照片文件名。拍照效果如下:
 
   
  
  树莓派3B应用篇之视频监控(上)_第1张图片
图1

有一点需要说明,当照片的宽高大于960*720时 ,必须使用使用-m参数进行YUYV方式拍照;

而对于一些摄像头,即便是小分辨率的拍照也需要使用-m参数,如果你所拍摄的照片无法查看, 就在命令中加入-  m参数一般即可解决问题。-m使用很简单,如:

uvccapture -B120 -C40 -S30 -x1280 -y720 -m -ozhaopian.jpg

实时视频可以用下面的命令:
luvcview -s 640x480
  -s参数指定宽高。
树莓派3B应用篇之视频监控(上)_第2张图片
图2
    
  可以看到,帧数为8.3fps,可见树莓派的处理效果还是很有限。

二、定时拍照
(1)编写脚本文件:
拍照前面已经说过,可以使用uvccapture软件,为了便于进行定时操作,把命令写入脚本文件  dingshipaizhao.sh。
下面是用nano编辑器创建并编辑脚本的命令:
nano dingshipaizhao.sh
 文件内容如下:
#! /bin/sh
sudo uvccapture -B50 -C50 -S30 -x640 -y480 -m -ozhaopian.jpg
按Ctrl+X退出再按Y,确认路径并保存。  
接下来,用下面的命令赋予脚本执行权限:
sudo chmod +x dingshipaizhao.sh
(2)定时任务:
crontab是一个Linux下的定时执行工具,可以在无需人工干预的情况下运行任务。crontab是内置程序,基本任何版本的Linux都带有这个程序。
crontab命令选项: 
-u 指定一个用户。
-l 列出某个用户的任务计划。
-r 删除某个用户的任务。
-e 编辑某个用户的任务。
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:
minute   hour   day   month   week   command
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
树莓派3B应用篇之视频监控(上)_第3张图片
图3(图片来源于网络)

在以上各个字段中,还可以使用以下特殊字符:

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

(3)实现定时拍照:

了解了以上知识并做好准备工作,我们就可以实现定时拍照的功能了。

执行以下命令:

crontab -e

在打开的文件尾部添加以下内容:

*/30**** /root/dingshipaizhao.sh
保存后退出,重启后树莓派将会每隔30分钟进行一次拍照。

在拍照完成后,我们可以将图片上传到网络上,或者发送到我们的邮箱上,还可以在微信公众号中去获取它。同样,定时拍摄视频也是可以的,大家可以自己琢磨一下。


(上)篇就写到这了,剩下的内容还有很多,需要分成中、下,我慢慢写。

你可能感兴趣的:(树莓派)