社区导航

 
查看: 328|回复: 0

[分享] 【树莓派3B+测评】使用USB摄像头

[复制链接]

66

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2018-9-22 20:17:22 | 显示全部楼层 |阅读模式
本帖最后由 DDZZ669 于 2018-9-22 20:23 编辑

上个帖子【树莓派3B+测评】点亮LED介绍了如何用python控制树莓派的GPIO口点亮LED,这次介绍如何用python+opencv来使用USB摄像头。

首先介绍另一种可视化登录的安装方式
因为之前介绍的xrdp+tightvncserver软件包貌似不支持opencv的远程窗口显示。

安装方式如下:
  1. sudo apt-get install x11vnc   #安装x11vnc
  2. x11vnc -storepasswd   #设置可视化远程登录密码
  3. x11vnc -usepw   #开启
复制代码

1.png

然后就可以用TightVNC进行可视化登录了,输入树莓派的本地IP地址,我的是192.168.1.101:
2.png
接着输入刚刚设置的密码就可以登录到可视化界面了
(注意每次使用TightVNC之前需要先用PuTTY登录,输入x11vnc -usepw命令开启可视化远程功能)。

接下来先通过树莓派系统自身的功能来使用USB摄像头。

将一个USB摄像头插入树莓派的USB口,然后在终端(PuTTY或可视化窗口内打开终端)中输入以下命令:
  1. lsusb   #查看USB接口上的设置
  2. ls /dev/video*   #查看USB摄像头的设备名称
  3. sudo apt-get install fswebcam   #安装一个USB摄像头的软件包
  4. sudo fswebcam /dev/video0 ~/Desktop/test/img1.jpg #拍摄一张照片并保存的桌面的test文件夹中
复制代码

3.png

打开test文件夹,可以看到刚刚拍摄的照片。
4.jpg

下面安装另一个软件包,来实时显示USB摄像头捕获的图像,输入以下命令:
  1. sudo apt-get install luvcview   #安装另一个USB摄像头的软件包
  2. luvcview -s  800x600   #获取图像并显示,800x600为窗口大小
复制代码


5.png

出现一个错误信息,原因是在PuTTY中无法打开一个窗口进行显示,
我们可以在可视化窗口的终端中执行次条命令,如下图:
6.png

可以看到实时显示的窗口。

最后介绍用python+opencv来读取USB摄像头并显示。

首先还是先安装需要的软件包:
  1. sudo apt-get install libopencv-dev
  2. sudo apt-get install python-opencv
复制代码

然后在桌面test文件夹新建opencv-camera.py文件,输入以下程序:
  1. import cv2

  2. cap = cv2.VideoCapture(0)
  3. while(1):
  4.         ret,frame = cap.read()
  5.         cv2.imshow('usb camera', frame)
  6.         if(cv2.waitKey(10) == 27):  #Esc -> quit
  7.                 break
  8. cap.release()
  9. cv2.destroyAllWindows()
复制代码

然后就可以用python2来执行程序了,终端中进到test文件夹中,输入以下命令:
  1. python2 opencv-camera.py
复制代码

就可以看到通过opencv显示的USB的摄像头的画面了,esc键可结束程序。
借助opencv,我们还可以对图像中的物体进行实时识别,这些以后会继续介绍。
7.png

此帖出自单片机论坛


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-10-18 18:02 , Processed in 0.054930 second(s), 15 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表