OpenCV视频I/O(6)检查视频捕获对象是否已成功打开的函数isOpened()的使用

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

如果视频捕获已经初始化,则返回 true。

如果之前调用 VideoCapture 构造函数或 VideoCapture::open() 成功,则该方法返回 true。

isOpened 函数是 OpenCV 中 VideoCapture 类的一个成员函数,用于检查视频捕获对象是否已成功打开并准备好进行读取或捕获操作。

函数原型

cpp 复制代码
virtual bool cv::VideoCapture::isOpened	()	const

参数

此函数不接受任何参数

返回值

类型:bool

描述:返回值指示视频捕获对象是否已成功打开。如果返回 true,则表示对象已成功打开;如果返回 false,则表示对象尚未打开或已关闭。

代码示例

cpp 复制代码
#include <iostream>
#include <opencv2/opencv.hpp>

int main()
{
    // 使用默认摄像头(索引为 0),并指定使用默认后端
    cv::VideoCapture cap( 0 );

    // 检查是否成功打开了摄像头
    if ( !cap.isOpened() )
    {
        std::cout << "Error opening video stream or file" << std::endl;
        return -1;
    }

    // 循环读取并显示视频帧
    while ( true )
    {
        // 从视频流中读取下一帧
        cv::Mat frame;
        cap >> frame;  // 或者使用 cap.read(frame);

        // 如果没有读取到帧,则退出循环
        if ( frame.empty() )
        {
            std::cout << "No frame grabbed." << std::endl;
            break;
        }

        // 显示视频帧
        cv::imshow( "Camera Stream", frame );

        // 按 'q' 键退出循环
        if ( cv::waitKey( 1 ) == 'q' )
        {
            break;
        }
    }

    // 释放资源
    cap.release();
    cv::destroyAllWindows();

    return 0;
}

运行结果

输出的是一个实时视频窗口:

相关推荐
程序员JerrySUN3 分钟前
驱动开发硬核特训 · Day 30(下篇): 深入解析 lm48100q I2C 音频编解码器驱动模型(基于 i.MX8MP)
linux·驱动开发·架构·音视频
nenchoumi311920 分钟前
LLM 论文精读(四)LLM Post-Training: A Deep Dive into Reasoning Large Language Models
人工智能·语言模型·自然语言处理
鸿蒙布道师28 分钟前
英伟达开源Llama-Nemotron系列模型:14万H100小时训练细节全解析
深度学习·神经网络·opencv·机器学习·自然语言处理·数据挖掘·llama
Qdgr_1 小时前
电厂数据库未来趋势:时序数据库 + AI 驱动的自优化系统
数据库·人工智能·时序数据库
知舟不叙2 小时前
基于OpenCV的人脸识别:LBPH算法
人工智能·opencv·人脸检测·lbph算法
乌恩大侠2 小时前
【东枫科技】使用LabVIEW进行NVIDIA CUDA GPU 开发
人工智能·科技·labview·nvidia·usrp
Silence4Allen2 小时前
RagFlow 完全指南(一):从零搭建开源大模型应用平台(Ollama、VLLM本地模型接入实战)
人工智能·大模型·rag·ragflow
music&movie2 小时前
手写系列——transformer网络完成加法和字符转译任务
网络·人工智能·transformer
白熊1883 小时前
【计算机视觉】OpenCV实战项目:FunnyMirrors:基于OpenCV的实时哈哈镜效果实现技术解析
人工智能·opencv·计算机视觉
Joern-Lee3 小时前
机器学习极简入门:从基础概念到行业应用
人工智能·机器学习