注意:本教程仅用于libcamera操作。如果使用OpenCV操作,请勿配置本文第三节的内容!在完成第1、2、4节后,OpenCV可正常使用!
背景
最近为新买的树莓派4B安装摄像头。然而网上的教程非常老旧,仍然使用旧版系统进行配置,仍然使用raspistill命令来进行操作,这对于新版树莓派系统来说,会产生command not found报错。同时,网上关于无法使用新命令libcamera调用摄像头的排错教程异常缺乏,同时很多教程互相抄,也许能解决问题,但是多了很多额外配置,是否会对今后产生影响不明确。本教程旨在解决上述问题。
本文可解决以下问题:
- 树莓派4B配置CSI摄像头
- 使用libcamera命令操作树莓派摄像头
- 解决raspistill command not found问题
- 解决安装摄像头后VNC黑屏并显示Cannot currently show the desktop问题
1 安装摄像头
1、将摄像头安装到树莓派上
首先,查看排线最底部,会发现一面有蓝色胶带,另一面有纹路。
蓝色胶带一面:
纹路一面:
(注意,本示意图为3B的示意图,4B的部件有所不同,请根据实际情况调整)找到红圈中的CSI接口,向上轻轻拉黑色的部分,打开CSI接口。然后将蓝色胶带一面朝向网线接口,有纹路一面朝向电源接口,插入到CSI接口中。如示意图所示:
其中,蓝圈1表示网线接口,蓝圈2右侧为电源接口(注意,本示意图为3B的示意图,4B的部件有所不同,请根据实际情况调整),中间红圈表示CSI接口
2 打开摄像头模块
1、在树莓派终端中输入以下命令,打开配置:
sudo raspi-config
效果如图所示:
然后选择上图中的第三项。
打开如下图所示的新界面,然后选择第一项,如图所示:
在新界面中选择Yes。返回后选择Finish,然后Reboot。此时摄像头已经打开,但还不能使用。
3 配置摄像头
注意:本教程仅用于libcamera操作。如果使用OpenCV操作,请勿配置本文第三节的内容!在完成第1、2、4节后,OpenCV可正常使用!
1、在终端中输入:
sudo nano /boot/config
在最下面添加下面的语句:
dtoverlay=ov5647
注意,上面的命令仅适用于用长长尾巴的CSI摄像头(如上面的图片),非此摄像头,在命令中替换成其他参数,如下表所示。
保存后重启。
重启后,在VNC下使用下面两个命令进行测试:
libcamera-hello
libcamera-jpeg -o test.jpg
其中第一个命令是检测摄像头,会打开界面,显示几秒摄像头拍摄内容后就关闭了。第二个命令是拍摄一张图片,保存在当前目录下面。
4 解决安装摄像头后VNC打不开的问题
使用如下命令
sudo nano /boot/config.txt
将hdmi_force_hotplug=1前面的#删掉即可。如图所示:
然后,输入以下命令进入配置:
sudo raspi-config
效果如图所示:
然后选择上图中的第二项。进去后,将分辨率调到最大,然后保存后reboot树莓派,问题顺利解决。