硬件环境:树莓派4B 4GB 某宝¥20 CSI摄像头130度广角
软件环境:
root@raspberrypi:/etc# cat /etc/os-release
PRETTY_NAME=“Debian GNU/Linux 11 (bullseye)”
NAME=“Debian GNU/Linux”
VERSION_ID=“11”
VERSION=“11 (bullseye)”
VERSION_CODENAME=bullseye
root@raspberrypi:/etc# cat /proc/version
Linux version 5.15.32-v8+ (dom@buildbot) (aarch64-linux-gnu-gcc-8 (Ubuntu/Linaro 8.4.0-3ubuntu1) 8.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022
1、先升级源:
sudo apt-get update
sudo apt-get upgrade
2、打开树莓派配置
sudo raspi-config
这是树莓派10的系统(Debian10, buster)的选项
这是树莓派11的系统(Debian11, bulleye)的选项
打开 Interfacing Option
,接着找到 Camera
(11版本系统为Legacy Camera
)选项,打开树莓派摄像头。
然后点击 finish
, 重启即可
接入摄像头,我这里以某宝二十多的CSI摄像头为例。
查看接入情况vcgencmd get_camera
pi@raspberrypi:~ $ vcgencmd get_camera
supported=1 detected=1
用vcgencmd命令检查一下相机,supported表示是否支持相机,如果为0,需要检查一下系统升级,然后按上面方式打开相机模块。而detected表示是否连接好了相机,如果是0,请检查相机连线是否正确,摄像头和底板是否安装好。
3、测试
如果
vcgencmd get_camera
结果为:supported=1 detected=1
可直接跳过这步
rapistill指令来截图
拓展:raspistill命令只能用于CSI摄像头。对于USB接口的摄像头,可以通过调用fswebcam进行访问。
在树莓派终端输入sudo apt-get install fswebcam安装fswebcam。通过输入sudo fswebcam image.jpg进行拍照测试。使用方法可以通过输入fswebcam -h查询。
执行raspistill -o a.jpg
打开根目录,就可以看到a.jpg啦~
相关参数:
-v:调试信息查看
-w:图像宽度
-h:图像高度
-rot:图像旋转角度,只支持 0、90、180、270 度(这里说明一下,测试发现其他角度的输入都会被转换到这四个角度之上)
-o:图像输出地址,例如image.jpg,如果文件名为“-”,将输出发送至标准输出设备
-t:获取图像前等待时间,默认为5000,即5秒
-tl:多久执行一次图像抓取
例如执行下面的指令:
raspistill -o image.jpg -rot 180 -w 1024 -h 768 -t 20000 -tl 5000 -v
注意:如果没看到照片,先看看摄像头能否运行
ls -al /dev/ | grep video
以上出现video则说明摄像头正常,再找找照片试试
如果在以上工作都完成的情况下,摄像头还是不能正常的使用或者驱动,请先检查硬件的连接的问题,可能是排线没有很好的插稳,或者是摄像头本身的问题
4、实时监控
安装motion(开源监控软件)
sudo apt-get install motion
首先将motion软件的后台进程改为开启,让它能够一直在后台运行。输入以下命令,将文件中 “start_motion_daemon=no” 的no改为yes。
sudo nano /etc/default/motion
之后输入命令打开motion的配置文件:
sudo nano /etc/motion/motion.conf
要更改的参数有以下几行,在nano编辑器环境下可以使用快捷键ctrl+w对关键字进行查找。
daemon on #off改成on
width 640
height 480 #根据摄像头像素自行更改
framerate 50 #帧率
stream_maxrate 200
stream_localhost off #设为off,允许局域网内所有用户访问
# 更多参数请参考官方文档:
# http://lavrsen.dk/foswiki/bin/view/Motion/ConfigFileOptions
然后重启motion
sudo service motion restart
#重启motion服务,也可以kill -9 进程pid号
开启motion
sudo motion
树莓派4b浏览器访问localhost:8081
,或者同局域网下访问 树莓派ip:8081
,便能看到实时画面了
Gif效果图(摄像头录制我只开了15帧,gif开的10帧,真实效果比这好):
接下来将摄像头固定好监控某个地方,将树莓派进行内网穿透之类的,访问树莓派motion服务地址即可实现视频监控。文章来源:https://uudwc.com/A/GDG
原文链接:https://wangwangyz.site/archives/737
我的博客,在上面分享我的树莓派一些玩法(比较懒,更的少哈哈哈)文章来源地址https://uudwc.com/A/GDG