OpenCV图像文件读写(1)检查 OpenCV 是否支持某种图像格式的读取功能函数haveImageReader()的使用

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

算法描述

haveImageReader 函数通常用于检查 OpenCV 是否支持某种图像格式的读取功能。在 OpenCV 中,haveImageReader 函数可以帮助确定是否可以成功读取特定格式的图像文件。这是一个非常实用的功能,特别是在需要处理多种图像格式时。

函数原型

cpp 复制代码
bool cv::haveImageReader
(
	const String & 	filename
)	

参数

  • 参数filename 要检查的图像文件的路劲。

返回值

如果支持读取该格式的图像文件,返回 true;否则返回 false。

代码示例

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

int main()
{
    // 检查是否支持读取特定格式的图像文件
    std::string filename = "/media/dingxin/data/study/OpenCV/sources/images/fruit_small.jpg";

    if ( cv::haveImageReader( filename ) )
    {
        std::cout << "Supports reading image: " << filename << std::endl;

        // 读取图像
        cv::Mat img = cv::imread( filename );

        if ( img.empty() )
        {
            std::cout << "Could not read the image." << std::endl;
            return -1;
        }

        // 显示图像
        cv::imshow( "Original Image", img );
        cv::waitKey( 0 );
    }
    else
    {
        std::cout << "Does not support reading image: " << filename << std::endl;
    }

    return 0;
}

运行结果

终端输出:

bash 复制代码
Supports reading image: /media/dingxin/data/study/OpenCV/sources/images/fruit_small.jpg

图像:

相关推荐
这token有力气1 小时前
Function Calling 格式漂移
人工智能
onething3651 小时前
Spring Boot + Spring AI 从入门到实战:7天转型计划 Day 5 —— SSE 流式输出 + 打字机效果
人工智能·后端·全栈
onething3652 小时前
Spring Boot + Spring AI 从入门到实战:7天转型计划 Day 6 —— 业务完善 + 会话消息预览
人工智能·后端·全栈
IT_陈寒2 小时前
SpringBoot自动配置的坑,我爬了三天才出来
前端·人工智能·后端
甲维斯4 小时前
笑抽了!DeepSeek识图,豆包完胜了!
人工智能·deepseek
Lei活在当下12 小时前
【AI手记系列-2026/6/18】iSparto & Harness,Caveman 以及AI时代的生存指南
人工智能·llm·openai
冬奇Lab13 小时前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
冬奇Lab13 小时前
Agent 系列(22):Context Engineering 深度——三种上下文管理策略的量化对比
人工智能·agent
hboot13 小时前
AI工程师第二课 - 数据处理
人工智能·python·数据分析
程序员cxuan14 小时前
DeepSeek 杀入多模态,识图功能正式上线!
人工智能·后端·程序员