栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

OpenCV API使用笔记 —— 1. 如何打开摄像头或视频文件

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

OpenCV API使用笔记 —— 1. 如何打开摄像头或视频文件

文章目录
  • 函数说明
    • 函数原型
      • VideoCapture ()
      • VideoCapture (const String &filename, int apiPreference=CAP_ANY)
      • VideoCapture (int index, int apiPreference=CAP_ANY)
  • 使用Python打开摄像头或者视频
  • 使用C++打开摄像头或者视频
  • 展现效果

函数说明

实现这个功能,主要依靠OpenCV的 VideoCapture ,它可以用于打开摄像头或者视频,如果你使用笔记本,并且带有摄像头的话,可以使用 0 打开摄像头。如果给定视频位置,则打开视频。

函数原型 VideoCapture ()

默认函数,通常我们不使用这个来构造VideoCapture对象。

VideoCapture (const String &filename, int apiPreference=CAP_ANY)

用来打开视频,也可以用来打开IP摄像头。

apiPreference 可以用来强制 OpenCV 使用某种方法对数据进行解码,可以用参数包括

  • cv::CAP_FFMPEG
  • cv::CAP_IMAGES
  • cv::CAP_DSHOW.
VideoCapture (int index, int apiPreference=CAP_ANY)

index指示的是打开什么视频设备,通常我们令index为0,打开默认的摄像头。

使用Python打开摄像头或者视频
    video = cv2.VideoCapture(0)
    cv2.namedWindow("frame")

    while video.isOpened():
        success, frame = video.read()
        
        if success and cv2.waitKey(1) & 0xFF != ord('q'):
            cv2.imshow('frame', frame)
        else:
            break
            
    cv2.destroyAllWindows()
    video.release()
使用C++打开摄像头或者视频
#include 
#include 
#include 

int main() {
    cv::VideoCapture video("sample.mp4");
    cv::namedWindow("frame");

    cv::Mat frame;
    while(video.isOpened()) {
        bool success = video.read(frame);

        if (success && cv::waitKey(1) != 'q') {
            cv::imshow("frame", frame);
        } else {
            break;
        }
    }


    cv::destroyAllWindows();
    video.release();

    return -1;
}
展现效果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/269409.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号