精华内容
下载资源
问答
  • 树莓派3B基于opencv3.4实现 python27 捕获usb摄像头视频并显示
    2020-12-03 20:12:30

    一、环境搭建(略)

    首先还是树莓派的环境安装,实现打开摄像头的基础就是必须安装好环境。

    一个是python 2.7,需要安装numpy支持;另一个是获取摄像头会用到opencv,opencv是计算机视觉库(树莓派安装的是最新的3.5版本opencv)。

    二、实现过程

    ython通过opencv 模块来打开摄像头,代码精简,比较容易理解;

    整体思路:

    1.导入所需的numpy和opencv的模块。

    2.获取视频流

    3.读取获得的视频流,并且通过窗体显示出来

    4.释放获取对象,关闭窗口

    整个程序的源代码如下:

    # created by Lang based on python 2.7

    ## 11/01/2018 11:05:45

    import cv2

    import numpy as np

    cap = cv2.VideoCapture(0)

    while(1):

    # get a frame

    ret, frame = cap.read()

    # show a frame

    cv2.imshow("capture", frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):

    break

    cap.release()

    cv2.destroyAllWindows()

    还有个phthon3版本

    import numpy as np

    import cv2

    cap = cv2.VideoCapture(0) # 从摄像头中取得视频

    # 获取视频播放界面长宽

    width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH) + 0.5)

    height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT) + 0.5)

    # 定义编码器 创建 VideoWriter 对象

    fourcc = cv2.VideoWriter_fourcc(*'mp4v') # Be sure to use the lower case

    out = cv2.VideoWriter('output.mp4', fourcc, 20.0, (width, height))

    while(cap.isOpened()):

    #读取帧摄像头

    ret, frame = cap.read()

    if ret == True:

    #输出当前帧

    out.write(frame)

    cv2.imshow('My Camera',frame)

    #键盘按 Q 退出

    if (cv2.waitKey(1) & 0xFF) == ord('q'):

    break

    else:

    break

    # 释放资源

    out.release()

    cap.release()

    cv2.destroyAllWindows()

    编写这个程序过程中,感觉到python语言是如此简洁,短短几句代码就可以实现这样的功能,感觉实在是太强了。

    更多相关内容
  • 今天小编就为大家分享一篇python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 二、Python打开USB摄像头并保存图片程序 一、USB摄像头与电脑摄像头有何不同? (我是菜鸟,如下文章中若有错误,还希望各位大佬指正!谢谢!) 我理解的是没啥不同。。有些电脑是没有自带摄像头的,所以常常会连接...

    之前是在打一个比赛,用USB摄像头代替电脑摄像头单纯只是想让作品显得高大上一点呜呜,本来想用OV7725或者OV7670的,奈何实力不允许,搞不出来~

    一、USB摄像头与电脑摄像头有何不同?

    (我是菜鸟,如下文章中若有错误,还希望各位大佬指正!谢谢!)

    我理解的是没啥不同。。有些电脑是没有自带摄像头的,所以常常会连接USB摄像头来代替电脑摄像头,如果是电脑有自带摄像头,那需要在设备管理器中右击电脑摄像头将它禁用,禁用后你打开的USB摄像头就可以完全代替电脑摄像头了,使用python指令打开摄像头时打开的就是USB摄像头

    (如果不知道哪个是电脑摄像头,将USB摄像头拔掉刷新后留下来的就是电脑摄像头)
    在这里插入图片描述

    二、Python打开USB摄像头并保存图片程序

    USB摄像头和电脑摄像头程序是一样的

    #此程序功能是用Python控制打开USB摄像头,拍照后将图片保存在本地
    
    #coding:utf-8
    import cv2
    cap = cv2.VideoCapture(0)
     
    index = 1
    while(cap.isOpened()):
        ret, frame = cap.read()
        cv2.imshow("USB",frame)
        k = cv2.waitKey(1) & 0xFF
        if k == ord('s'):     #按下s(save)键,进入保存图片操作
            cv2.imwrite("C:/Users/xiaoyan/Desktop/fruit" + str(index) + ".jpg", frame)#这个fruit是图片的命名
            index += 1
        elif k == ord('q'):     #按下q(quit)键,程序退出
            break
    cap.release()
    cv2.destroyAllWindows()
    

    注意:上面的s和q是需要英文输入,如果没有得到保存图片可能是按的s键是中文输入的,可以用打印函数测试有无保存成功:

    在这里插入图片描述

    对python打开摄像头感兴趣的朋友也可以再看看用Python实现将手机摄像头画面(彩色或黑白)传到电脑端并且显示这篇博客,对上面代码有什么不理解的也可以看看,我在那篇博客中有详细解释,这里就不说啦~

    希望有你有帮助!

    在这里插入图片描述

    展开全文
  • 主要为大家详细介绍了Python通过cv2读取多个USB摄像头,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 今天终于解决了自己在python中使用opencv无法打开usb摄像头的问题,太坑了,感觉自己好蠢,哈哈哈,特此记录。 1.首先是打开在python中使用opencv打开电脑摄像头的代码如下: #1.引入cv2 import cv2 #2.主函数 if _...

    今天终于解决了自己在python中使用opencv无法打开usb摄像头的问题,太坑了,感觉自己好蠢,哈哈哈,特此记录。

    1.首先是打开在python中使用opencv打开电脑摄像头的代码如下:

    #1.引入cv2
    import cv2
    
    #2.主函数
    if __name__ == '__main__':
    
    #3.打开笔记本摄像头
    cap = cv2.VideoCapture(0)
    assert cap.isOpened(), 'Cannot capture source' #摄像头没有正常打开则报错
    
    #4.摄像头能打开则获取图像帧,显示图像
    while cap.isOpened():
        #read()函数返回两个参数,第一个为参数为bool值,表示是否获取到图像,
        #第二个参数为当前帧图像
        ret, frame = cap.read()
        # 将获取到的当前帧水品翻转
        # 第二个参数:  1 表示水平翻转; 0 表示垂直翻转;  小于0 表示水平垂直翻转
        frame = cv2.flip(frame,1)
        cv2.imshow('mycreame',frame)  #显示当前帧
        if ( cv2.waitKey(30)  == 27 ):   #按下Esc键则退出    waitKey()方法表示等待键盘输入,单位为毫秒
            break
    #5.关闭所有窗口
    cv2.destroyAllWindows()
    

    2.此时在设备管理器中看到自己的电脑摄像头

    在这里插入图片描述

    3.当我插入usb摄像头后,在设备管理器中看到自己的电脑上的摄像头设备

    在这里插入图片描述

    4.这时想用 cap = cv2.VideoCapture(1)来打开usb摄像头,但是却不行,打开的还是电脑摄像头,因为这个时候在设备管理器中usb摄像头排在电脑摄像头前面,所以应该使用cap = cv2.VideoCapture(0)(我是这样理解的),以前也这样试过,但是usb摄像头打开稍微要比电脑摄像头慢一会,以前还没等usb摄像头打开就认为它打不开了,就把程序停止了,哎,太急躁了,太蠢了,哈哈哈,顺带说下这个时候 通过cap = cv2.VideoCapture(1)打开电脑摄像头。

    展开全文
  • python+opencv打开USB摄像头存储MP4文件

    千次阅读 2022-02-22 16:33:36
    USB摄像头存储MP4文件

    USB摄像头存储MP4文件

    import cv2
    import os
    import time
    
    
    "打开摄像头,设置分辨率"
    my_camera = cv2.VideoCapture(0)
    my_camera.set(cv2.CAP_PROP_FRAME_WIDTH, 640)
    my_camera.set(cv2.CAP_PROP_FRAME_HEIGHT, 320)
    
    "设置视频格式"
    write_ok = False
    frame_size = (int(my_camera.get(cv2.CAP_PROP_FRAME_WIDTH)), int(my_camera.get(cv2.CAP_PROP_FRAME_HEIGHT)))
    frame_fps = 30
    video_format = cv2.VideoWriter_fourcc('m', 'p', '4', 'v')
    
    "设置录制的视频文件名"
    video_file_fp = cv2.VideoWriter()
    video_file_fp.open('camera_video.mp4', video_format, frame_fps, frame_size, True)
    
    start_time = time.time()
    video_time_length = 100
    print('Start to record video')
    
    "循环录制视频文件,并给视频加上时间戳"
    while(True):
        sucess, video_frame=my_camera.read()
        time_str=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
        cv2.putText(video_frame,time_str, (5,340), cv2.FONT_HERSHEY_SIMPLEX, 1, (255,255,255), 2)
        video_file_fp.write(video_frame)
        cv2.imshow('frame', video_frame)
    
        cur_time = time.time()      #录制10秒后自动结束或者按ESC键退出
        if cur_time-start_time>video_time_length:
            print('End the video with '+str(video_time_length)+' s')
            break
        if cv2.waitKey(1) &0xff == 27:   #esc key
            break
    
    "关闭录制"
    video_file_fp.release()
    my_camera.release()
    cv2.destroyAllWindows()
    
    "显示录制的视频文件大小"
    mp4_file_size=os.path.getsize('camera_video.mp4')
    print(int(mp4_file_size/1024), 'KBytes')
    
    
    
    
    
    展开全文
  • Python开发多路显示USB摄像头 一、项目准备 1.环境准备:Python3.6+pycharm2018专业版+PyQt5 5.6.0 2.硬件:两到三个USB摄像头 二、设计界面布局和按钮功能 1.利用pycharm打开QT Designer设计工具的界面布局。 2....
  • 代码实现功能:调用USB接口的摄像头;读取其中一帧内容并保存本地。 程序如下: import cv2def read_show(): cap = cv2.VideoCapture(0, cv2.CAP_DSHOW) fourcc = cv2.VideoWriter_fourcc(*'XVID') out = cv2....
  • 设备索引号就是在指定要使用的摄像头。一般的笔记本电脑都有内置摄像头。所以参数就是 0。你可以通过设置成 1 或者其他的来选择别的摄像头。之后,你就可以一帧一帧的捕获视频了。但是最后,别忘了停止捕获视频。使用 ...
  • 树莓派python3+opencv调用usb摄像头显示并保存直接上代码运行指令运行结果 直接上代码 camera.py import cv2 import numpy as np name = 0 cap = cv2.VideoCapture(0) cap.set(3,640) cap.set(4,480) ret, frame...
  • 使用opencv-python打开USB或者笔记本前置摄像头代码:效果: 代码: 其中video_index是摄像头编号,一般前置摄像头为0,USB摄像头为1或2. import cv2 def catch_video(name='my_video', video_index=0): # cv2....
  • 在树莓派自带得python IDE Thonny中写如下代码,并在树莓派上插上usb摄像头 import cv2 cap=cv2.VideoCapture(0) #调用摄像头‘0'一般是打开电脑自带摄像头,‘1'是打开外部摄像头(只有一个摄像头的情况) width=...
  • 例如:读取内置摄像头Python- OpenCV代码 import cv2 #引入库 cap = cv2.VideoCapture(0) while True: ret, frame = cap.read() cv2.imshow("Video", frame) #读取内容 if cv2.waitKey(10) == ord("q"): ...
  • python3 使用 Opencv 打开 USB摄像头,配置1080P分辨率

    万次阅读 热门讨论 2018-09-04 14:16:25
    import cv2 import time cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080) cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter.fourcc('M', 'J', 'P', ....
  • 欢迎来访交流 ~~首先 看效果先是安装 一个小工具 叫 fswebcamsudo apt-get install fswebcam安装好了就可以拍照 实时监控了拍照 使用 (树莓派上)fswebcam 10 test.jpg执行后会 延时10帧 拍摄 (给个准备时间)产生...
  • 因为RK3399pro+fadora系统的/dev/video0口被占用,使用python3+opencv无法读取摄像头数据,所以使用过 v4l2调用USB摄像头
  • C++部分`#include<opencv2/opencv.hpp> #include<stdlib.h> using namespace cv;... //打开摄像头 if (!cap.isOpened())//如果视频不能正常打开则返回 return; cvWaitKey(30); int fp
  • python 获取本地USB介绍WMIAForge开启虚拟摄像头OBSpyvirtualcam其他 介绍 最近想写IM聊天室,需要了解一些基础,顺便打算把以前挖的坑给填了。 在去年有水一篇:《Python Opencv暴力获取所有相机》 这份代码是我...
  • 本文实例为大家分享了python OpenCV来表示USB摄像头画面的具体代码,供大家参考,具体内容如下确认Python版本$ pythonPython 2.7.13 (default, Jan 19 2019, 14:48:08)[GCC 6.3.0 20170124] on Linux2Type "help", ...
  • 用过USB摄像头的都知道,你需要使用鼠标来操作它,比如截个图,录个像什么的,要点N次鼠标,对于我们那些不喜欢多次点击鼠标的人来说,这是一件很boring的事情,所以,本文将教你如何使用Python来操作摄像头。...
  • Python+Opencv读取高帧率USB摄像头问题

    千次阅读 2019-11-19 08:47:26
    前几次使用Python+Opencv,对网络摄像头,USB摄像头进行数据采集,基本流程已经炮筒,没什么大问题。最近项目中使用了一款120fps/s的USB摄像头,但是调试好代码运行后,问题来了。 遇到的问题 120fps,每次只能读取...
  • Opencv打开电脑自带USB摄像头,并调用模板匹配
  • python3调用USB高帧率摄像头

    千次阅读 2019-04-18 11:16:59
    1.v4l2调用高帧率摄像头 python2.x版本的v4l2capture很简单,源码在这里 执行:./setup.py build 执行:sudo ./setup.py install python3.x版本的v4l2capture,需要将.c里面的#include <Python.h>改成当前...
  • 每次调用capture读取video的时候,还回的像素都是640x480,不管是笔记本的摄像头还是USB摄像头,明明我的摄像头是支持130万读取的功能的呀。 问题分析 一番查找,关于用opencv 设置摄像头读分辨率问题的若干说明,...
  • 项目中使用opencv调用usb摄像头,运行过程中,会出现摄像头掉线的情况。猜测掉线原因是硬件相关,可能是摄像头,也可能是usb线和端口。 这里主要介绍两种掉线情况以及代码重连摄像头的方式。 1.第一种情况,设备...
  • opencv python 打开双目摄像头

    千次阅读 2018-12-24 22:57:59
    双目摄像头通过一根usb与电脑连接,如果直接这样会报错。但是调用摄像头0和1(电脑摄像头和双目左)或0和2(电脑摄像头和双目右)都是可以的。 cap1 = cv2.VideoCapture(1 + cv2.CAP_DSHOW) cap2 = cv2....
  • python 双目摄像头拍照

    2020-04-12 17:42:48
    一个非常简单的拍照程序可以通过按键来是先拍照和保存照片,没有什么可以讲解的,相信大加很容易看明白。希望能给大家带来一定的帮助。谢谢

空空如也

空空如也

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

python打开usb摄像头