材料准备:

1、树莓派

2、AS 4WD小车

3、WebCam

4、小米移动电源

5、TP—LINK 高增益150MUSB无线网卡

操作流程:

1.将WebCam插上树莓派后,首先要确认树莓派是否支持该设备。输入:

pi@raspberrypi ~$ lsusb

  在返回的信息中,我们可以看到“Logitech, Inc.WebCam C270”的信息,说明该视频摄像头摄像头已经被树莓派操作系统成功识别。一般来说,只要在官方兼容列表中的设备,都能够被树莓派成功识别。此外,我们在返回的消息中,还可以看到键鼠、无线网卡的相关信息。

2、测试实时视频

  luvcvew可以用来查看WebCam的视频信息,它包含了一个mjpeg的编码器,能够将视频流保存为AVI格式的文件。mjpeg的压缩效率并不高,且对带宽拥有较高要求,因而从今天来看,它并非一款理想的视频压缩技术。

安装luvcvew:

pi@raspberrypi ~$ sudo apt-get install luvcview

  输入下面的指令,让系统帮助我们找到luvcview在哪里。正常情况下,系统应该返回“/usr/bin/luvcview”,如果系统没有返回,再重新检查一下该插件是否已经安装妥当。

pi@raspberrypi ~$ which luvcview  

  luvcview需要工作在桌面环境中,即Raspbian的LXDE中。luvcview默认采用640像素*480像素的分辨率进行视频采集,在实际应用中,我们发现如果采用这一分辨率,树莓派内存吃紧,卡顿的情况比较严重,因此我们需要降低WebCam采集的分辨率为320像素*240像素,在LXDE(LXTerminal)中:

pi@raspberrypi ~$ luvcview -s 320x240

  执行完成之后,桌面上会弹出一个窗口,用来播放WebCam的视频信号。此时,我们再来观察一下桌面右上角CPU的使用情况,发现几乎已经全部被占用了,当然这也已经是在320像素*240像素分辨率的设置下,如果再调高分辨率,估计系统会返佣更慢。

3、测试拍照

  在桌面环境下,本身就要耗费许多资源,实际上,Linux下许多图形、图像还是可以跑在Shell下的,下面我们就演示在Shell中调用摄像头进行拍照。需要使用另一个小工具——uvccapture。

安装uvccapture:

pi@raspberrypi ~$ sudo apt-get install uvccapture

开始拍照:

像素标准1:960*720

pi@raspberrypi ~$ uvccapture -B120 -C40 -S30 -x960 -y720 -ocamera.jpg

  uvccapture携带的参数较多,其中,“-x,-y”为图像分辨率,“-B”为亮度(Brightness),"-C"为对比度(Contrast),“-S”为饱和度(Saturation),"-o"输出图像文件路径,"camera.jpg"为保存的照片文件名,默认保存在"/home/pi"目录下。

  当水平图像分辨率(x)超过960像素时,当垂直图像分辨率(y)超过720像素时,还需要使用YUYV方式进行拍照,此时相比于上述方式,除了需要修改像素参数意外,还要额外增加一个参数“-m”。

像素标准2:1280*720

pi@raspberrypi ~$ uvccapture -B120 -C40 -S30 -x1280 -y720 -m -ocamera.jpg

测试效果:

【智能无线小车系列九】在树莓派上使用USB摄像头的更多相关文章

  1. 【智能无线小车系列十】通过USB摄像头实现网络监控功能

    如果仅有静态图像可能还不足以满足我们的需求,我们可能会需要用到实时的监控功能.这里介绍一款小应用:motion.motion的功能可强大了,不仅可以将监控的画面通过视频传输,实时展现,更为强大的是,m ...

  2. 【智能无线小车系列八】在树莓派上使用USB网卡

    在这个腾“云”驾“物”(云:云计算,物:物联网)的时代,什么都可以没有,就是不能没有网络,树莓派也离不开它.本章节将详细介绍如何将树莓派接入互联网,因为有一些后期将要使用到的小软件需要联网进行下载和安 ...

  3. 树莓派3 之 USB摄像头安装和使用

    需求 如果你想在树莓上拍照或者录影,你可以安装树莓派的摄像头(有点贵).如果你不想要为摄像头模块花费额外的金钱,那有另外一个方法,就是你常见的USB 摄像头.你可能已经在PC上安装过了.我买的如图的这 ...

  4. BootStrap 智能表单系列 九 表单图片上传的支持

    本章介绍如何在生成表单后,可以支持上传图片后可以及时预览图片 代码如下(连接地址:https://github.com/xiexingen/Bootstrap-SmartForm/blob/maste ...

  5. Kali-linux在树莓派上破解无线网络

    大部分的命令可以正常的运行在BackTrack5或Kali上.在Kali上可以实现的无线渗透测试,在树莓派上也可以运行.在第1章中介绍了在树莓派上安装Kali Linux操作系统,下面将介绍在树莓派上 ...

  6. BootStrap 智能表单系列 首页 (持续更新中...)

    背景:本码农.NET后端工程师,在项目开发中发现写了很多重复的代码, 于是自己整了一套根据配置来生成form表单的插件,针对表单的改动仅需要修改配置的json即可 使用中发现还是蛮实用的,于是开源出来 ...

  7. BootStrap 智能表单系列 十 自动完成组件的支持

    web开发中,肯定遇到像百度.google这种搜索的功能吧,那智能表单中的自动完成可以做什么呢,下面来揭晓: 1.包含像google.百度等类似的简单搜索 2.复杂结构的支持,比如说 输入产品编号,需 ...

  8. 用树莓派USB摄像头做个监控

    [前言] 看着阴暗的角落里吃灰噎到嗓子眼的树莓派,一起陪伴的时光历历在目,往事逐渐涌上心头,每每触及此处,内心总会升腾起阵阵怜悯之情... 我这有两个设备,一个是积灰已久的树莓派,另一个是积灰已久的U ...

  9. 基于Arduino开发的智能蓝牙小车

    基于Arduino的智能蓝牙小车 材料准备: Arduino开发板一块.四驱小车底板及相关配件一套.L298N驱动模块一个.HC-05/06蓝牙模块一块,九伏电源一块(用于主板供电).12V锂电池一块 ...

随机推荐

  1. 通过房价预测入门Kaggle

    今天看了个新闻,说是中国社会科学院城市发展与环境研究所及社会科学文献出版社共同发布<房地产蓝皮书:中国房地产发展报告No.16(2019)>指出房价上涨7.6%,看得我都坐不住了,这房价上 ...

  2. 【UTR #2】题目排列顺序

    题目描述 "又要出题了." 宇宙出题中心主任 -- 吉米多出题斯基,坐在办公桌前策划即将到来的 UOI. 这场比赛有 $n$ 道题,吉米多出题斯基需要决定这些题目的难度,然后再在汪 ...

  3. [CQOI2018] 社交网络

    题目背景 当今社会,在社交网络上看朋友的消息已经成为许多人生活的一部分.通常,一个用户在社交网络上发布一条消息(例如微博.状态.Tweet等) 后,他的好友们也可以看见这条消息,并可能转发.转发的消息 ...

  4. 一个能让你了解所有函数调用顺序的Android库

    http://mobile.51cto.com/android-536059.htm 原理 本库其实并没有什么黑科技,本库也没有java代码,核心就是2个build.gradle中的task.首先,原 ...

  5. 树莓派 Zero W——随身钥匙扣

    前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 本文使用Markdown写成,为获得更好的阅读体验和正确的格式显示,请访问我的博客原文: http://www.cnblogs.c ...

  6. 分布式数据库数据从属与client与server的数据同步

    老实说,眼下市面上很多产品,的确是不成熟的产品. 用过一些,给人蛋痛的感觉. 导言 分布还是集总 今天我们来探讨一个非常重要的问题. 每一个程序猿都有其思想,我的思想之中的一个,就是分布式. 分布式, ...

  7. C语言函数的递归和调用

    函数记住两点: (1)每个函数运行完才会返回调用它的函数:每个函数运行完才会返回调用它的函数,因此,你可以先看看这个函数不自我调用的条件,也就是fun()中if条件不成立的时候,对吧,不成立的时候就是 ...

  8. MyEclipse的html/JSP编辑器添加代码自动提示

    http://lusterfly.iteye.com/blog/1872627 在myeclipse 9以前的版本中,我们如果要为html编辑器添加自动的代码提示可以这样操作: windows--&g ...

  9. POJ 1753 (枚举+DFS)

    Flip Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 40632   Accepted: 17647 Descr ...

  10. vs2012停止调试长时间不响应问题解决方法

    在vs2012命令提示符下,运行devenv.exe /resetuserdata又一次设置下环境解决.