【智能无线小车系列九】在树莓派上使用USB摄像头
材料准备:
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摄像头的更多相关文章
- 【智能无线小车系列十】通过USB摄像头实现网络监控功能
如果仅有静态图像可能还不足以满足我们的需求,我们可能会需要用到实时的监控功能.这里介绍一款小应用:motion.motion的功能可强大了,不仅可以将监控的画面通过视频传输,实时展现,更为强大的是,m ...
- 【智能无线小车系列八】在树莓派上使用USB网卡
在这个腾“云”驾“物”(云:云计算,物:物联网)的时代,什么都可以没有,就是不能没有网络,树莓派也离不开它.本章节将详细介绍如何将树莓派接入互联网,因为有一些后期将要使用到的小软件需要联网进行下载和安 ...
- 树莓派3 之 USB摄像头安装和使用
需求 如果你想在树莓上拍照或者录影,你可以安装树莓派的摄像头(有点贵).如果你不想要为摄像头模块花费额外的金钱,那有另外一个方法,就是你常见的USB 摄像头.你可能已经在PC上安装过了.我买的如图的这 ...
- BootStrap 智能表单系列 九 表单图片上传的支持
本章介绍如何在生成表单后,可以支持上传图片后可以及时预览图片 代码如下(连接地址:https://github.com/xiexingen/Bootstrap-SmartForm/blob/maste ...
- Kali-linux在树莓派上破解无线网络
大部分的命令可以正常的运行在BackTrack5或Kali上.在Kali上可以实现的无线渗透测试,在树莓派上也可以运行.在第1章中介绍了在树莓派上安装Kali Linux操作系统,下面将介绍在树莓派上 ...
- BootStrap 智能表单系列 首页 (持续更新中...)
背景:本码农.NET后端工程师,在项目开发中发现写了很多重复的代码, 于是自己整了一套根据配置来生成form表单的插件,针对表单的改动仅需要修改配置的json即可 使用中发现还是蛮实用的,于是开源出来 ...
- BootStrap 智能表单系列 十 自动完成组件的支持
web开发中,肯定遇到像百度.google这种搜索的功能吧,那智能表单中的自动完成可以做什么呢,下面来揭晓: 1.包含像google.百度等类似的简单搜索 2.复杂结构的支持,比如说 输入产品编号,需 ...
- 用树莓派USB摄像头做个监控
[前言] 看着阴暗的角落里吃灰噎到嗓子眼的树莓派,一起陪伴的时光历历在目,往事逐渐涌上心头,每每触及此处,内心总会升腾起阵阵怜悯之情... 我这有两个设备,一个是积灰已久的树莓派,另一个是积灰已久的U ...
- 基于Arduino开发的智能蓝牙小车
基于Arduino的智能蓝牙小车 材料准备: Arduino开发板一块.四驱小车底板及相关配件一套.L298N驱动模块一个.HC-05/06蓝牙模块一块,九伏电源一块(用于主板供电).12V锂电池一块 ...
随机推荐
- ExcelHelper类
/// <summary> /// ExcelHelper类 /// </summary> using System; using System.IO; using Syste ...
- LeetCode OJ--ZigZag Conversion
https://oj.leetcode.com/problems/zigzag-conversion/ 将字符串Z形字排列后,再重新一行一行输出. 可以找到每一行字符位置的规律,然后填充进去. 敲代码 ...
- spring boot原理分析
1.分析spring-boot-starter-parent <parent> <groupId>org.springframework.boot</groupId> ...
- qt使用
1安装qt软件(.run文件) . chmod 777 qt.....run ./qt...run或sudo ./qt...run(安装目录不一样) 2.sudo gedit .bashrc添加以下内 ...
- Jenkins使用Pipeline插件实现多个Job之间的串并联(教程收集)(待实践)
在原始不使用插件时,在Jenkins我们要实现多个Job之间的连续集成时,我们一般的做法就是在每个Job上关联另一个Job,但是,这样做有个弊端,只能是连续的,如果要实现串或并联这样的,估计比较难:但 ...
- MySQL 服务无法启动-问题处理
症状:前一天在MySQL中删除了几个不用的数据库后登陆MySQL出现以下错误: mysql -u root -p passwd ERROR 2002 (HY000): Can't connec ...
- 提高在Xcode上的工作效率
对于在Xcode上提高工作效率,内功在这不提,对于外力,我将它分为三类: 工具.快捷键和小技巧.主要获得的路径是通过平时积累和看 WWDC12 上的 Session 402:Working Effic ...
- Unity Step by Step(一)
要打败敌人,首先要了解敌人,这不是我说的,这是孙子说的.^_^ 首先,我一头雾水,所以我就下了个demo,demo会在下面附上,声明,这不是我写的,我也是下载别人的,地址:http://game.ce ...
- OracleCPU使用情况查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...
- dubbo开发者指南
开发者指南 参与 流程 任务 版本管理 源码构建 框架设计 整体设计 模块分包 依赖关系 调用链 暴露服务时序 引用服务时序 领域模型 基本原则 扩展点加载 扩展点配置 扩展点自动包装 扩展点自动装配 ...