精华内容
下载资源
问答
  • 树莓派usb摄像头
    2021-08-06 18:26:00

    安装MJPG-Streamer

    一.安装必要的库

    sudo apt-get update
    sudo apt-get install subversion
    sudo apt-get install libjpeg8-dev
    sudo apt-get install imagemagick
    sudo apt-get install libv4l-dev
    sudo apt-get install cmake
    sudo apt-get install git

    二.git开源的project到本地,编译

    sudo git clone https://github.com/jacksonliam/mjpg-streamer.git
    cd mjpg-streamer/mjpg-streamer-experimental
    make all
    sudo make install

     三.更改摄像头

     树莓派摄像头为“input_raspicam.so” ,”input_uvc.so“为usb口摄像头,在

    mjpg-streamer/mjpg-streamer-experimental 文件中找到strat.sh的脚本并打开

     将 input_uvc.so 改为 input_raspicam.so

     四.Enable树莓派摄像头

    Raspberry Pi Camera插到正确位置后(注意别插反了),供电开机。用putty进入树莓派后,enable摄像头(执行一次即可,无需每次开机都执行):

    sudo raspi-config

     

     进入后,将camera一项enable,然后重启:

    sudo reboot

    五摄像头使用

    在mjpg-streamer/mjpg-streamer-experimental中找到修改的strat.sh  并运行

    然后打开浏览器输入:
     http://树莓派地址:8080

    stream中为动态查看

     

    更多相关内容
  • 树莓派USB摄像头拍照

    2019-04-09 14:05:38
    调用V4L2实现树莓派USB摄像头拍照 1. 定义 V4L2(Video For Linux Two) 是内核提供给应用程序访问音、视频驱动的统一接口。 2. 工作流程: 打开设备-> 检查和设置设备属性-> 设置帧格式-> 设置一种输入输出方法...
  • 优质资源分享 ...知识定位 ...看着阴暗的角落里吃灰噎到嗓子眼的树莓派,一起陪伴的时光历历在目,往事逐渐涌上心头,每每触及此处,内心总会升腾起阵阵怜悯之情… 我这有两个设备,一个是积灰已

    🚀 优质资源分享 🚀

    学习路线指引(点击解锁)知识定位人群定位
    🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
    💛Python量化交易实战💛入门级手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

    【前言】

    看着阴暗的角落里吃灰噎到嗓子眼的树莓派,一起陪伴的时光历历在目,往事逐渐涌上心头,每每触及此处,内心总会升腾起阵阵怜悯之情…

    我这有两个设备,一个是积灰已久的树莓派,另一个是积灰已久的USB摄像头。

    我们今天用这两个设备做一个拍摄监控方案(非视频录制),然后将拍摄好的图片合成视频进行观看。

    主要用到的技术有:树莓派/linux操作,crontab,python,ffmpeg。

    【系列目录】

    1. 树莓派驱动usb摄像头(非官方摄像头模块)
    2. 树莓派加载外接USB硬盘
    3. 树莓派拍摄获取素材程序
    4. 树莓派定时任务编写
    5. 将素材图片合成视频

    【实现过程】

    树莓派驱动usb摄像头(非官方摄像头模块)

    首先我们要保证树莓派可以识别usb摄像头设备,使用命令:

    lsusb
    
    

    image

    可以看到usb设备列表第一个即 海康威视1080p usb摄像头,说明我们的摄像头设备被正确识别,如果无法识别,则要排除设备故障或想办法安装设备驱动程序。

    我们使用fswebcam应用来驱动usb摄像头模块

    sudo apt-get install fswebcam
    sudo apt-get install mplayer
    
    

    简单输入拍照命令测试下

    fswebcam -r 1920*1080 --delay 3 --skip 10 1.jpg
    
    

    image

    image

    我们把树莓派上的 1.jpg 下载下来进行查看,成功拍摄到了画面!

    image

    我们在使用fswebcam时,增加了几个参数,下面介绍这几个参数的作用:

    参数作用
    -r 1920*1080拍摄图片分辨率
    –delay 3延时3s后拍摄(给摄像头自动对焦的时间,否则会模糊,这个经常拍照的可以理解吧)
    –skip 10作用同上,拍摄时其实会拍摄好多帧,我们跳过前10帧以保证清晰度

    树莓派加载外接USB硬盘

    我们计划编写一个程序来长时间捕捉摄像头画面,那么就需要一个比较大的存储空间来存放我们拍摄的图片,我们从小角落找到一个同样“积灰已久”的固态硬盘。

    windows下使用过的硬盘,推荐格式化成FAT32格式,该格式是兼容Linux系统文件格式的,NTFS格式兼容性不是特别好,可能读写会出问题。

    当然直接用linux fdisk命令格式化成 ext2/3/4 也是可以的,但是后续在windows环境下读写又是新问题,如果硬盘不是准备永久挂载在linux系统下使用,还是建议用FAT32格式使用。

    windows10/11 下已经不提供格式成 FAT32 的入口,我们可以下载奥梅分区助手快速格式化成想要的格式。

    使用命令查看固态硬盘是否被识别

    lsusb
    
    

    image

    可以看到,第二个usb设备便是我们的usb固态硬盘设备了(M.2硬盘放到了USB硬盘盒进行外接)

    使用 fdisk 命令查看硬盘属性

    fdisk -l
    
    

    image

    使用 mount 挂载硬盘设备,将磁盘挂载到 /mnt/sda1 路径下

    虽然网上有很多教程说配置一个配置文件(具体配置我就不说了),然后让设备开机自动挂载,但我个人极不推荐,修改配置文件开机自动挂载虽然貌似一劳永逸,但在硬盘设备发生变更时,大概率因为忘记同步修改配置文件,会造成无法启动系统的严重故障,折腾不说还可能需要重装系统解决…其实启动不频繁情况下,手动装载也不费事。

    mount /dev/sda3 /mnt/sda1
    
    

    然后使用 df 命令查看存储占用详情

    df
    
    

    image

    可以看到硬盘成功挂载。

    树莓派拍摄获取素材程序

    我们编写一个短小的python脚本来实现以下几点小功能:

    • 据时间归档目录
    • 调用api执行拍照,并按时间戳命名
    import os
    import time
    
    if __name__ == '\_\_main\_\_':
        path = '/mnt/sda1'
        # path = 'E:\code\Project.Python\CameraShoot'
        folder = f'{path}/{time.strftime("%Y%m%d")}'
    
        if not os.path.exists(folder):
            os.mkdir(folder)
    
        # 拍照
        os.system(
            f'fswebcam -r 1920*1080 --delay 3 --skip 10 {folder}/{time.strftime("%Y%m%d%H%M%S")}.jpg'
        )
    
    

    树莓派定时任务编写

    我们使用 linux 环境下的 crontab 编写定时任务,来定时执行拍照任务(初步定每分钟拍一张)

    crontab -e
    * * * * * python /7tiny/camera_shoot.py
    
    

    采用定时任务,每分钟自动调度执行我们写好的python脚本,来进行拍照任务的执行

    等待一段时间后,便可拿到拍摄素材…

    image

    image

    将素材图片合成视频

    我们先简单从树莓派上下载下来拍摄好的图片,在 windows 上简单合成一个视频,完成我们的任务目标,后期可以根据需要在树莓派上自动合成。

    我们用 ffmpeg 软件将图片合成为视频。

    首先下载 ffmpeg 软件的 exe 版本(windows),linux上可直接下载linux版。

    然后将解压后 ffmpeg 的 exe 目录添加到环境变量,方便我们执行命令。

    将树莓派上的图片下载下来。

    image

    下载下来的图片我们是默认使用时间戳来命名图片的,因为ffmpeg只能从 0 - n 顺序识别图片,无法识别时间戳这种命名,因此,我这里自己编写了一个工具将图片名称替换成了 0 - n.jpg。

    有需要的同学可以在文末获取到工具源码及下载地址。

    重命名好后,我们执行命令压缩图片为 mp4 文件。

    ffmpeg -r 10 -f image2 -i %d.jpg -vcodec libx264 -pix_fmt yuv420p out.mp4
    
    

    同样我们介绍下使用的几个参数:

    参数作用
    -r 10视频为每秒10帧,可以根据需要调整,10帧就是10张图片
    %d从0开始在当前目录递增寻找图片
    -vcodec libx264(windows兼容)
    -vcodec libx265(体积更小,windows默认不支持)视频压缩参数
    -pix_fmt yuv420p视频编码格式(windows下播放兼容)

    执行后,我们便可查看到图片被拼接成为 mp4 格式的视频。

    image

    image

    【总结】

    本文通过短小的代码片段初步使用树莓派+usb摄像头进行环境捕捉,在此基础上,可以进行很多额外的场景扩展及使用优化。

    【源码地址】

    重命名工具源码及编译后绿色程序:
    https://github.com/sevenTiny/SevenTinyToolBox/blob/main/tools/SevenTinyToolBox.RenameWithNumber.exe

    展开全文
  • 树莓派USB摄像头测试

    2021-04-30 09:17:41
    test_opencv.cpp: #include<iostream> #include<opencv2/opencv.hpp> #include<opencv2/highgui/highgui.hpp> #include<opencv2/imgproc/imgproc.hpp>...//1:调用usb摄像..
    
    test_opencv.cpp:
    
    #include<iostream>
    #include<opencv2/opencv.hpp>
    #include<opencv2/highgui/highgui.hpp>
    #include<opencv2/imgproc/imgproc.hpp>
    
    using namespace std;
    using namespace cv;
    
    int main()
    {
    	VideoCapture cap(1);//1:调用usb摄像头,0:调用树莓派自带摄像头
    	
    	//cap.set(CAP_PROP_FRAME_WIDTH, 32);
    	//cap.set(CAP_PROP_FRAME_HEIGHT, 24);
    
    	
    	if(!cap.isOpened())
    	{
    	   cout<<"can't open this camera"<<endl;
    	   return -1;
             }	
             //Mat frame,edges;
             while(1)
             {
             //cap>>frame;
             //cvtColor(frame,frame,COLOR_BGR2GRAY);//转化为灰度图
             //blur(frame,frame,Size(7,7));//图像模糊去燥
             //Canny(frame,edges,3,9,3);//检测轮廓
             //imshow("Camera Capture",edges);
             //if(waitKey(20)>=0)break;
    	    cout<<"can open this camera"<<endl;
    	    return 0;
             }
    	return 0;
    }
    

     

    CMakeLists.txt:
    
    cmake_minimum_required(VERSION 2.6)
    
    project(test_opencv)
    
    find_package(OpenCV REQUIRED)
    
    add_executable(test_opencv test_opencv.cpp)
    
    target_link_libraries(test_opencv ${OpenCV_LIBS})
    
    

    将这两个文件放在同一目录下,执行指令:

    sudo cmake .

    sudo make

    sudo ./test_opencv

    结果悲剧:

    悲催的调试过程:

    lsusb:查看摄像头设备 -- 存在

    ls -l /dev/video*:查看摄像头设备--不知为啥会出现 video0和video1两个摄像头设备

    安装摄像头测试工具:sudo apt-get install fswebcam

    安装后执行:fswebcam --no-banner -r 640x480 image.jpg    /     fswebcam image.jpg

    成功拍照(震惊脸!!!郁闷了)

    检测设备驱动是否支持:vcgencmd get_camera

    悲剧的是驱动是支持,但是检查不到摄像头设备

     

    网络监控测试:

    1. 下载mjpeg-stream到树莓派

    wget https://github.com/jacksonliam/mjpg-streamer/archive/master.zip

    2. 安装辅助工具

    在树莓派上执行:

    # sudo apt-get install subversion

    # sudo apt-get install libv4l-dev

    # sudo apt-get install libjpeg8-dev

    # sudo apt-get install cmake

    4. 解压master.zip

    在树莓派上执行:

    unzip master.zip

    5. 编译安装 

    # vim mjpg-streamer-experimental/plugins/input_uvc/input_uvc.c

    修改为: int width = 640, height = 480, fps = 30, format = V4L2_PIX_FMT_YUYV
      # cd mjpg-streamer/mjpg-streamer-experimental

      #  make USE_LIBV4L2=true clean all 

     #sudo make DESTDIR=/usr install  

    用Firefox浏览器输入http://<树莓派IP地址>:8080 此时应该可以看到摄像头的监控画面

    又成功了,又懵逼了,为啥。。。

     

     

     

     

     

    展开全文
  • 树莓派外接摄像头,最常用的有两种:CSI摄像头、USB摄像头。当然网络摄像头也是可以的。 一般的USB摄像头都是UVC免驱的,而且可以方便的插拔和安装,平时最为常用。 一、硬件设备 usb摄像头使用的 罗技c310。...

    树莓派外接摄像头,最常用的有两种:CSI摄像头、USB摄像头。当然网络摄像头也是可以的。

    一般的USB摄像头都是UVC免驱的,而且可以方便的插拔和安装,平时最为常用。

     

    一、硬件设备

    usb摄像头使用的 罗技c310。(只要是UVC免驱就可以)

     

    二、连接并测试摄像头

    (1)使用命令检测usb设备:lsusb

    插入usb摄像头后,会显示设备ID和信息,像我的:Bus 001 Device 008: ID 046d:081b Logitech, Inc. Webcam C310

    (2)之后使用命令,查看设备文件名称。

    ls -l /dev/video*

    usb摄像头插入后增加了 video0 和video1 这两个设备,我测试操作这两个都可以用,都是同一个设备。至于为什么跟别人不一样是两个,不得而知。

    之后安装摄像头软件:fswebcam

    sudo apt-get install fswebcam

    安装完成后,使用指令抓拍一张照片。

    fswebcam /dev/video0 --no-banner -r 640x480 ~/image01.jpg

     

    三、常用参数

    fswebcam /dev/video0 --no-banner -r 640x480 ~/image01.jpg 中的参数功能:

    /dev/video0:指定操作设备,像我插入usb摄像头后增加了两个设备,实测 video0 和video1 都可以用,都是同一个摄像头。

    --no-banner:图片上隐藏横幅。

    -r 640x480:设置分辨率 640x480。

    ~/image01.jpg:存储路径,当前用户目录下,保存为 image01.jpg。

     

    fswebcam /dev/video0 -r 640x480 ~/image01.jpg

    在图片上有横幅,上面有时间戳信息。

     

    四、fswebcam详细参数

    --help显示此帮助页面并退出。
     -c,--config <文件名>从文件加载配置。
     -q,--quiet隐藏除错误以外的所有消息。
     -v,--verbose在捕获时显示其他消息
         --version显示版本并退出。
     -l,--loop <seconds>在循环模式下运行。
     -b,--background在后台运行。
     -o,--output <文件名>将日志输出到文件。
     -d,--device <名称>设置要使用的源。
     -i,--input <数字/名称>选择要使用的输入。
     -t,--tuner <number>选择要使用的调谐器。
     -f,--frequency <number>选择使用的频率。
     -p,--palette <名称>选择要使用的调色板格式。
     -D,--delay <数字>设置预捕获延迟时间。 (秒)
     -r,--resolution <size>设置捕获分辨率。
         --fps <framerate>设置捕获帧速率。
     -F,--frames <number>设置要捕获的帧数。
     -S,--skip <number>设置要跳过的帧数。
         --dumpframe <文件名>将原始帧转储到文件。
     -s,--set <名称> = <值>设置控制值。
         --revert恢复原始捕获的图像。
         --flip <direction>翻转图像。 (h,v)
         --crop <大小> [,<偏移量>]裁剪图像的一部分。
         --scale <size>缩放图像。
         --rotate <角度>以直角旋转图像。
         --deinterlace减少交错伪像。
         --invert反转图像颜色。
         --greyscale删除图像的颜色。
         --swapchannels <c1c2>交换通道c1和c2。
         --no-banner隐藏横幅。
         --top-banner将横幅放在顶部。
         --bottom-banner将横幅放在底部。 (默认)
         --banner-colour <colour>设置横幅颜色。 (#AARRGGBB)
         --line-colour <colour>设置横幅线的颜色。
         --text-colour <colour>设置文本颜色。
         --font <[名称] [:大小]>设置字体和/或大小。
         --no-shadow禁用文本阴影。
         --shadow启用文本阴影。
         --title <文本>设置主标题。 (左上方)
         --no-title清除主标题。
         --subtitle <文本>设置字幕。 (左下方)
         --no-subtitle清除字幕。
         --timestamp <格式>设置时间戳格式。 (右上)
         --no-timestamp清除时间戳记。
         --gmt使用GMT代替本地时区。
         --info <文本>设置信息文本。 (右下)
         --no-info清除信息文本。
         --underlay <PNG图像>设置参考图像。
         --no-underlay清除参考底图。
         --overlay <PNG图像>设置覆盖图像。
         --no-overlay清除覆盖。
         --jpeg <factor>输出JPEG图像。 (-1,0-95)
         --png <factor>输出PNG图像。 (-1,0-10)
         --save <文件名>将图像保存到文件。
         --exec <命令>执行命令并等待其完成。

     

     

    展开全文
  • 树莓派USB摄像头做个监控.doc
  • 树莓派4B配置usb摄像头RTSP推流.pdf
  • 主要为大家详细介绍了树莓派用python中的OpenCV输出USB摄像头画面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 树莓派 USB摄像头

    千次阅读 2020-02-07 20:33:37
    USB摄像头 连接之后检查是否存在输入ls/dev 可以直接在文件里面看有无video0文件 或者在下面直接看有无video0 2.安装fswebcam,访问摄像头 sudo apt-get install fswebcam 3.拍照 sudo fswebcam 123.jpg (延迟n秒拍摄...
  • 硬件与驱动 1.1用到的工具材料: 树莓派3B+ PC电脑 USB摄像头 1.2检查是否存在USB摄像头设备 输入以下指令: pi@raspberrypi:~ $ lsusb 可以看到usb摄像头的一些信息。见红框; ​ 或则输入: pi@raspberrypi 可以...
  • 本文实例为大家分享了树莓派使用USB摄像头和motion实现监控的具体代码,供大家参考,具体内容如下 一、工具 1、树莓派3B 2、USB摄像头 二、操作步骤 1、安装motion sudo apt-get install motion 2、配置motion (1) ...
  • 树莓派+USB摄像头

    2018-02-18 18:04:46
    树莓派实现监控功能,除了通过树莓派上面的摄像头接口还可以通过USB连接摄像头实现监控和识别功能
  • 主要为大家详细介绍了树莓派+摄像头实现对移动物体的检测,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 采集mjpeg格式视频 ffplay -f video4linux2 -input_format mjpeg -framerate 25 -video_size 640x480 -i /dev/video0 采集yuyv422格式视频 ffplay -f video4linux2 -input_format yuyv422 -framerate 25 -video_...
  • PC上OK,树莓派上NG: 使用sox rec -d /dev/media0 aaa.wav   PS: 1.查看声卡: arecord -l 2.查看声卡驱动驱动安装状况: cat /dev/sndstat 转载于:...
  • opencv接受树莓派usb摄像头rtsp视频流

    千次阅读 2019-05-03 17:02:34
    树莓派部分: 安装ffmpeg和h264库 $ sudo apt install ffmpeg libx264-dev 修改ffserver配置 $ sudo vim /etc/ffserver.conf HTTPPort 8090 HTTPBindAddress 0.0.0.0 MaxHTTPConnections 2000 MaxClients ...
  • 树莓派读取usb摄像头

    千次阅读 2021-10-14 19:17:06
    首先下载必要的usb播放工具,使用apt-get可以很方便下载到 sudo apt-get install fswebcam sudo apt-get install mplayer ...安装后接入usb摄像头,在命令行下执行,能看到设备就表示驱动正常,一般...
  • 树莓派搭载usb摄像头,进行人脸识别 详细的记录https://blog.csdn.net/singular_man/article/details/88890939
  • 插入USB摄像头后,启动mjpg-streamer报错如下: pi@raspberrypi:~/sky/mjpg-streamer/mjpg-streamer-experimental $ ./start.sh MJPG Streamer Version: git rev: 310b29f4a94c46652b20c4b7b6e5cf24e532af39 i: ...
  • 本次测试采用的远程网络监控工具是MJPG-streame,它是一款免费基于IP地址的视频流服务器,它的输入插件从摄像头读取视频数据...1个USB摄像头普通摄像头即可,本次测试采用的是无需驱动的USB摄像头。1)方法一lsusb。...
  • 树莓派USB摄像头+python+opencv

    千次阅读 2022-07-14 13:23:23
    插入usb摄像头,在命令行模式下输入 lsusb 如果看到列举出来的信息有camera的话就说明识别成功,可以使用。1、拍照测试安装 输入以下命令,开启摄像头 2、录像测试安装 输入以下命令,开启摄像头 ...
  • 树莓派上可以找到摄像头驱动,但是在树莓派终端输入raspistill -o image.jpg,输出如下错误:mmal: Cannot read camera info, keeping the defaults for OV5647mmal: mmal_vc_component_create: failed to create ...
  • 树莓派使用usb摄像头

    千次阅读 2020-10-22 18:04:28
    树莓派使用usb摄像头树莓派上使用usb摄像头时,由于无法直接通过raspivid工具直接采集视频流,因此很多适用于树莓派专用摄像头的监控方案难以实现。 sudo apt-get install fswebcam //安装拍照工具 fswebcam -S ...
  • 树莓派+摄像头实现监控功能

    万次阅读 2022-02-07 17:10:19
    1、硬件: 采用树莓派4B,USB摄像头 2、motion的安装与配置 3、更改参数,使画面更加流畅 4、开启或者关闭motion服务(修改/配置参数时需要关闭motion) 1、硬件: 采用树莓派4B,USB摄像头 软件: motion 2、...
  • 树莓派进行摄像头实验保姆级教程

    千次阅读 2022-06-24 14:16:32
    树莓派摄像头连接百分百成功
  • 树莓派接入USB摄像头

    千次阅读 2022-02-17 14:06:38
    连接并测试USB摄像头 $ lsusb 也可以查看设备文件,输入命令: $ ls /dev/video* 查找到摄像头,我们可以使用fswebcam命令测试抓图: $ sudo apt-get install fswebcam $ fswebcam /dev/video0 ~/image....
  • 树莓派4B配置usb摄像头

    千次阅读 2022-04-01 14:11:01
    使用usb摄像头做监控 我这里使用的摄像头是 急速B18s 捕获的画质分别为:640 x 480,352 x 288,320 x 240
  • 树莓派实现摄像头拍照

    千次阅读 2021-06-07 13:21:16
    树莓派实现摄像头拍照1、准备好摄像头模块,提前安装在树莓派上(插在对应位置即可);2、插上树莓派的电源并登录(ssh方式),打开树莓派的命令行窗口:3、拍照 1、准备好摄像头模块,提前安装在树莓派上(插在对应...
  • 树莓派USB摄像头安装和使用

    千次阅读 2020-08-17 21:12:06
    树莓派USB摄像头安装和使用 PS3 EYE 搭载的阵列麦克及摄像头,价格美丽,推荐开发使用 检测摄像头 从上面的两个命令,第一个看出来设备中已经有video的设备了,第二个 中 发现有Sony Playstation Eye 。这两个...
  • 本文是该系列的第八章,重点介绍如何在树莓派上使用USB摄像头

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,577
精华内容 1,030
关键字:

树莓派usb摄像头