【树莓派3B+测评】使用USB摄像头
本帖最后由 DDZZ669 于 2018-9-22 20:23 编辑上个帖子【树莓派3B+测评】点亮LED介绍了如何用python控制树莓派的GPIO口点亮LED,这次介绍如何用python+opencv来使用USB摄像头。
首先介绍另一种可视化登录的安装方式,
因为之前介绍的xrdp+tightvncserver软件包貌似不支持opencv的远程窗口显示。
安装方式如下:
sudo apt-get install x11vnc #安装x11vnc
x11vnc -storepasswd #设置可视化远程登录密码
x11vnc -usepw #开启
然后就可以用TightVNC进行可视化登录了,输入树莓派的本地IP地址,我的是192.168.1.101:
接着输入刚刚设置的密码就可以登录到可视化界面了
(注意每次使用TightVNC之前需要先用PuTTY登录,输入x11vnc -usepw命令开启可视化远程功能)。
接下来先通过树莓派系统自身的功能来使用USB摄像头。
将一个USB摄像头插入树莓派的USB口,然后在终端(PuTTY或可视化窗口内打开终端)中输入以下命令:
lsusb #查看USB接口上的设置
ls /dev/video* #查看USB摄像头的设备名称
sudo apt-get install fswebcam #安装一个USB摄像头的软件包
sudo fswebcam /dev/video0 ~/Desktop/test/img1.jpg #拍摄一张照片并保存的桌面的test文件夹中
打开test文件夹,可以看到刚刚拍摄的照片。
下面安装另一个软件包,来实时显示USB摄像头捕获的图像,输入以下命令:
sudo apt-get install luvcview #安装另一个USB摄像头的软件包
luvcview -s800x600 #获取图像并显示,800x600为窗口大小
出现一个错误信息,原因是在PuTTY中无法打开一个窗口进行显示,
我们可以在可视化窗口的终端中执行次条命令,如下图:
可以看到实时显示的窗口。
最后介绍用python+opencv来读取USB摄像头并显示。
首先还是先安装需要的软件包:
sudo apt-get install libopencv-dev
sudo apt-get install python-opencv
然后在桌面test文件夹新建opencv-camera.py文件,输入以下程序:
import cv2
cap = cv2.VideoCapture(0)
while(1):
ret,frame = cap.read()
cv2.imshow('usb camera', frame)
if(cv2.waitKey(10) == 27):#Esc -> quit
break
cap.release()
cv2.destroyAllWindows()
然后就可以用python2来执行程序了,终端中进到test文件夹中,输入以下命令:
python2 opencv-camera.py
就可以看到通过opencv显示的USB的摄像头的画面了,esc键可结束程序。
借助opencv,我们还可以对图像中的物体进行实时识别,这些以后会继续介绍。
我的摄像头比较便宜所以拍出来的图片比较辣鸡。。。你这个是多少钱买的? donatello1996 发表于 2018-12-25 10:16
我的摄像头比较便宜所以拍出来的图片比较辣鸡。。。你这个是多少钱买的?
这是我们实验室的一个USB摄像头,不清楚价格 donatello1996 发表于 2018-12-25 10:16
我的摄像头比较便宜所以拍出来的图片比较辣鸡。。。你这个是多少钱买的?
就是这个:
<p>谢谢楼主分享</p>
页:
[1]