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

图像:

相关推荐
Evand J11 小时前
【MATLAB例程|图像滤波降噪13】局部噪声方差自适应滤波(LNR)图像降噪与效果展示。附完整例程的下载链接
图像处理·计算机视觉·matlab·滤波·代码·降噪
小和尚同志11 小时前
小黑插图 Skill:从 11.7k star 的 Codex 专属,到 Claude Code 能用的平替
人工智能·aigc
高洁0111 小时前
孪生不止在工厂:能源、医疗与农业
人工智能·深度学习·transformer·知识图谱·tornado
外域速览11 小时前
智谱50亿美元押注AI自训练
大数据·人工智能
人工智能培训11 小时前
孪生不止在工厂:能源、医疗与农业
大数据·人工智能
米小虾12 小时前
让模型说"我不知道",比让它答对更难:放弃文本生成能换来什么
人工智能
新新学长搞科研12 小时前
【SPIE出版】2026年人工智能、新材料与新能源国际学术会议(AINMNE 2026)
人工智能·新能源·新材料
野生技术架构师12 小时前
2026 Java 面试全套总结,八股 + 场景 + AI 相关面试考点
java·人工智能·面试
米小虾12 小时前
不写出来的思考:把 Transformer 的层循环起来,是第三条 scaling 轴还是省错了地方?
人工智能
A.说学逗唱的Coke13 小时前
【大模型专题】别再用 HTTP 直连 Agent 了:用 Kafka 承载 A2A 协议,从 PoC 走到生产
人工智能·kafka·a2a