配置好树莓派的基本环境之后,就可以使用树莓派的摄像头模块了,接下来我会教你一些关于树莓派摄像头的基本操作:摄像头拍照,并实现摄像头的远程监控

配置摄像头

首先将树莓派与摄像头模块插好:
插法是将蓝色的那边对着USB接口,而金手指对着Type-C接口,如下图:

然后插上树莓派的电源并远程登录SSH,打开树莓派的命令行窗口:
输入以下指令进入树莓派的系统配置:

sudo raspi-config


然后依次选择5 Interfacing Options,进入之后选择P1 Camera,然后在 Would you like the camera interface to be enabled? 对话框上选择 Yes 。最后通过 Finish 退出,并重启树莓派。

重启完了之后,我们可以输入以下命令测试树莓派的摄像头模块:

ls -al /dev/ | grep video

如果配置成功,我们会有以下界面:

找到video0,也就是我们的树莓派摄像头设备。

【注】:可能提示这样的问题(如果在以上工作都完成的情况下,摄像头还是不能正常的使用或者驱动,请先检查硬件的连接的问题,可能是排线没有很好的插稳,或者是摄像头本身的问题。)

拍照

输入以下指令,可以使用树莓派摄像头的拍照功能:

然后在树莓派的应用界面打开文件夹,找到imageDemo.jpg,大概就是如下的样子(这里我拍摄的是一本书):

这里可以讲解一下raspistill命令的相关参数和实验的具体效果:
-v:调试信息查看
-w:图像宽度
-h:图像高度
-rot:图像旋转角度,只支持 0、90、180、270 度(这里说明一下,测试发现其他角度的输入都会被转换到这四个角度之上)
-o:图像输出地址,例如image.jpg,如果文件名为“-”,将输出发送至标准输出设备
-t:获取图像前等待时间,默认为5000,即5秒
-tl:多久执行一次图像抓取
具体操作可以自己去实践一下,很容易上手的。

摄像+远程监控

首先下载和安装motion
motion 是一款开源的支持多种摄像头的监控软件。本文也通过它来把树莓派变成监控摄像头~

不过官方的定义中,motion 是一款“运动检测”软件,因为它支持当图像中一部分发生变化时拍照,或者触发脚本。不过这些功能不在这次文章讨论的范围内。

打开树莓派的命令行窗口,输入以下指令:

sudo apt-get install motion

首先是安装motion

然后等待下载motion完成。
下载完成之后,就可以进行下一步配置motion。
输入以下指令,配置motion daemon 守护进程

sudo nano /etc/default/motion

start_motion_daemon=no改为start_motion_daemon=yes,让他可以一直运行,修改完后按^X退出。

输入以下指令,修改motion的配置文件:

sudo vim /etc/motion/motion.conf

【注意】如果你是第一次使用树莓派的话,可能会提示vim指令错误,这是因为没有安装vim的缘故,在树莓派的命令行输入sudo
apt-get install motion
安装vim之后,在执行上面的步骤。

同时注意树莓派里面默认的编辑器是nano,这里提供一个基本使用的参考文章:nano文本编辑器使用教程。
打开以后是这个样子,motion的配置文件很多很长,但是我们只需要修改几个关键部分即可。

扣下E,进入编辑模式,然后将11行的daemon off改为daemon on,让 motion 后台运行,如下图:

到了445行,你可以找到端口号8081,我们可以通过这个端口来读取视频数据,这里无需修改!如下图:

然后到第461行将stream_localhost on改成off,即关闭 localhost 的限制,允许通过非 localhost 来查看视频,如下图:
当然,你也可以设定图片的分辨率,在第79行进行修改,这里我没有修改,选择默认的设置,如下图:

最后,vim编辑器下按esc然后输入:wq,即保存退出。
关于vim编辑器操作的一些命令的解释,这里提供一篇参考文章:vi/vim编辑器指令。
至于motion 的更多设置,以下都有描述,这里就不一一示范了。

  • rotate 旋转画面,如果需要90°、180°旋转,可以在这里配置。
  • width 和 height 修改画面分辨率(默认为 320*240 像素),这里可以修改,如 1024 和 768。
  • framerate 捕获的帧率,如修改为 30。
  • stream_maxrate 修改流的帧率,如果需要实时查看的话,建议修改这个的值,因为这个默认值是 1,会导致画面非常卡顿,如修改为 30。

配置好了motion的基本设置之后,我们可以开始启动motion:
输入以下指令,其中第一条命令是启动服务,第二条命令是开启motion:

sudo service motion start
sudo motion

然后我们就可以通过浏览器或者手机查看树莓派摄像头的内容了
打开网址http://[你的树莓派IP地址]:8081,观察,如下图:

【注意】

  1. 可以修改画面分辨率来提高画质,但是画面分辨率越高越消耗资源!
  2. 如果画面非常卡,可以调整 stream_maxrate 和 framerate 找到一个合适你的值。
  3. 树莓派供电不足也会影响视频质量,就像我上面的视频不是很清楚,我是直接用笔记本的USB供电的,一般来说笔记本USB口电流一般为500mA,所以如果需要视频清晰的话建议使用移动电源进行供电,或者使用有源USB hub。

motion 运行以后,可以通过 SIGHUP 信号来重新加载配置文件

sudo killall -SIGHUP motion

也可以直接关闭掉,然后重新启动

sudo killall -w motion
sudo motion

当你关闭motion时,可以输入如下指令,然后画面就会定格到最后一刻:

sudo killall -TERM motion

至此,关于摄像头的基操就介绍完了。
下一篇,将教你怎么样安装C和python的环境
为玩转树莓派的摄像头做好准备

树莓派(四):使用摄像头实现拍照和远程监控功能相关推荐

  1. [转]GStreamer资料(摄像头采集,视频保存,远程监控)DVR

    http://blog.csdn.net/wzwxiaozheng/archive/2010/12/26/6099397.aspx GStreamer资料整理(包括摄像头采集,视频保存,远程监控,流媒 ...

  2. GStreamer资料(摄像头采集,视频保存,远程监控)DVR

    转载自:http://blog.chinaunix.net/uid-10747583-id-282761.html http://blog.csdn.net/wzwxiaozheng/archive/ ...

  3. 成绩查询显示服务器未授权,华燕机动车驾驶人考试远程监控系统

    一.概述 伴随着汽车工业的不断发展,车辆拥有量大幅度增加,准备参加驾驶人培训考试以期获得驾驶证的人越来越多.根据今后的发展需要,增设新的考试分场在所难免.如何在分考场增加.警力有限的前提下,使各分考场 ...

  4. java visualvm远程监控_深入理解JVM虚拟机12:JVM性能管理神器VisualVM介绍与实战

    本文转自互联网,侵删 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutori ...

  5. 家庭媒体中心解决方案(五、 群晖系列nas基本功能使用指南篇3-网络记事本和远程监控)

    注:这篇功能是转载超能网的网络记事本和网友赵为民的群晖DSM Surveillance Station体验,我将这些功能收集到一起,便于大家查找. 5. 网络记事本 本文中的网络记事本介绍的软件其实就 ...

  6. opc服务器组态文件已写保护_远程组态软件不仅方便了PLC无线远程监控,也大大降低了工程成本...

    远程组态软件不仅方便了PLC无线远程监控,也大大降低了工程成本 组态软件远程监控 1.本地上位SCADA系统采集分布各地现场PLC等设备运行的数据,并可以下发控制指令: 2.提供稳定的OPC接口服务, ...

  7. 工厂设备管理远程监控方案

    剖析工业设备运行维护中的痛点,围绕工业设备运行的核心控制系统,分析不同用户对联网及远程运维的应用需求,在关键远程运维环节,华辰智通,通过"软""硬"兼施,通过工 ...

  8. 电力线载波SoC实现路灯远程监控应用实例(中颖SH99F01)

    城市路灯是人们日常生活中必不可少的公共设施,近年来,具备远程监控功能的智能化路灯监控系统逐渐得到推广应用,除了传统的高压钠灯.卤素灯外,新型的LED路灯更是广泛采用远程监控接口,以达到节能降耗,集约化 ...

  9. 渔业养殖远程监控系统解决方案

    传统的水产养殖依靠养殖者的经验进行观察,信息不准确,调控不及时,养殖规模扩大难,人工成本高.除此之外传统水产养殖以个户居多,生产管理方式粗放,个体生产能力不足,养殖产品的品质难以保障. 将物联网云平台 ...

最新文章

  1. 2020年,对薪资不满意的程序员要注意了...
  2. OpenCV统计米粒数目-计算联通区域的个数及联通区域内像素的个数
  3. 大学生如何实现经济独立 ?
  4. 腾讯云CentOS 7 上安装Nginx
  5. Mac Os 安装使用 itchat
  6. 蓝桥杯 ALGO-21 算法训练 装箱问题
  7. NetBeans 时事通讯(刊号 # 51 - Apr 07, 2009)
  8. 网管工具 dstat
  9. 啥是甘特图?用思维导图制作甘特图的方法
  10. 通俗理解:第一型曲线积分,第二型曲线积分,第一型曲面积分,第二型曲面积分,二重积分,三重积分之间的内外联系
  11. C和C++的区别点汇总
  12. 04.配置unp.h头文件出现开启 xinetd daytime 服务时 /etc/xinetd.d下 没有daytime 文件的解决办法
  13. navigation Bar、toolBar、tabbar 区别
  14. 一则晦涩难懂的码农段子 | 每日趣闻
  15. python中的traceback
  16. 5W字讲解最新大数据面试题
  17. 资源 步金国 的高手
  18. 抽象类,抽象方法,继承调用实现
  19. 本地计算机上的OracleOraDb11g_home1TNSListener服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止
  20. 【vba】按比例拆分单元格

热门文章

  1. IOT [02] -- 物联网系统框架介绍
  2. onresize 事件;浏览器窗口大小调整
  3. Android Dialog总结
  4. 《 富爸爸与穷爸爸》
  5. 某TMD公司iOS高级工程师面试回忆
  6. Java多线程(四)线程并发的理解
  7. 金蝶云星空与钉钉对接集成客户查询连通更新表单数据(宜搭)(basic-(新环境)更新客户)
  8. VMAF原理学习笔记
  9. 一键开启mysql的审计功能(无需安装插件)
  10. 随机森林(Random Forest)算法