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

图像:

相关推荐
做萤石二次开发的哈哈6 小时前
连锁门店、园区、交通枢纽的视频如何统一汇集?应用模板的接入与分权管理详解
人工智能·物联网·音视频·二次开发·视频监控·蓝海aiot一站式工作台·萤石云开放平台
老金带你玩AI7 小时前
全程拿着手机,我让dot准备了一场AI分享
人工智能
nvd117 小时前
Flink 批处理驱动的湖仓 AI 财务研报流水线:从双流广播汇聚到 Agent 智能决策与原生 Iceberg 落盘全景实战
大数据·人工智能·flink
snhna7 小时前
向量数据库深度实战:从 HNSW 到 pgvector、Milvus 选型与 RAG 落地
数据库·人工智能·python·postgresql·milvus
架构技术专栏7 小时前
Agent 工具调用:从工具声明到执行反馈
前端·人工智能·后端
点云-激光雷达-Slam-三维牙齿7 小时前
100,000 Records CSV File - India Traffic Accident Analysis Dataset.7z
人工智能·数据集
TechWayfarer7 小时前
精度极限的突破:AI与IPv6如何重塑高精度IP查询
人工智能·网络协议·tcp/ip·transformer
七十二时9568 小时前
视频掉帧怎么用AI补帧
人工智能
可达智灵8 小时前
信创适配|织灵 Coda Loom 2.0 完成银河麒麟服务器操作系统 V10、V11 适配认证
人工智能·可达智灵
Wx-bishekaifayuan8 小时前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游