OpenCV中超分辨率(Super Resolution)模块类cv::dnn_superres::DnnSuperResImpl

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

算法描述

OpenCV中超分辨率(Super Resolution)模块的一个内部实现类。它属于dnn_superres模块,用于加载和运行基于深度学习的图像超分辨率模型。

这个类是 OpenCV 中用于执行 深度学习超分辨率推理 的主要类。你可以用它来加载预训练的超分辨率模型(如 EDSR、ESPCN、FSRCNN、LapSRN 等),并对图像进行放大。

使用步骤

  1. 创建 DnnSuperRes 对象
cpp 复制代码
#include <opencv2/dnn_superres.hpp>
cv::dnn_superres::DnnSuperResImpl sr;

或者使用智能指针方式:

cpp 复制代码
Ptr<cv::dnn_superres::DnnSuperResImpl> sr = makePtr<cv::dnn_superres::DnnSuperResImpl>();
  1. 加载模型

OpenCV 的超分辨率模块支持以下模型架构:

  • edsr
  • espcn
  • fsrcnn
  • lapsrn

示例代码:

cpp 复制代码
sr.readModel("EDSR_x3.pb"); // 替换为你的模型路径
sr.setModel("edsr", 3);     // 指定模型类型和放大倍数
  1. 超分推理
cpp 复制代码
Mat img = imread("input.jpg");
Mat result;

sr.upsample(img, result);

imwrite("output.jpg", result);

示例代码

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

int main()
{
    using namespace cv;
    using namespace cv::dnn_superres;

    // 创建超分辨率对象
    DnnSuperResImpl sr;

    // 加载模型
    sr.readModel( "FSRCNN_x3.pb" );
    sr.setModel( "fsrcnn", 3 );

    // 读取图像
    Mat img = imread( "/media/dingxin/data/study/OpenCV/sources/images/Lenna.png" );
    if ( img.empty() )
    {
        std::cerr << "Failed to load image!" << std::endl;
        return -1;
    }

    // 超分辨率推理
    Mat result;
    sr.upsample( img, result );

    // 保存结果
    imwrite( "output.jpg", result );

    imshow( "Original", img );
    imshow( "Super Resolved", result );
    waitKey( 0 );

    return 0;
}

运行结果

图像确实变得很大,清晰度也没变

代码中模型文件下载地址:https://download.csdn.net/download/jndingxin/91263821

相关推荐
林澈在路上18 分钟前
2026 主流 AI 写歌 APP 全面测评|零基础原创歌曲工具选购指南
大数据·人工智能·aigc·音视频·音频
lancyu19 分钟前
零基础AI应用编程开发入门 | 吴恩达Prompt工程极简通关指南:新手从零学会工业级提示词开发(可直接复用代码)
人工智能·深度学习·机器学习
科研小刘带你玩学术22 分钟前
AI Agent正在改变人工智能应用模式:从工具助手走向自主智能系统
人工智能·大语言模型·未来趋势·智能体·智能系统
阿文和她的Key24 分钟前
一个失控的AI智能体在4.5天内完成了17,600次攻击:从这次事件看AI安全治理的四层裂痕
人工智能·安全
东方小月34 分钟前
从零开发一个 Coding Agent(五):使用 TypeBox 校验工具参数
前端·人工智能·后端
做前端的娜娜子37 分钟前
TRAE-Work-周报自动化实战
人工智能·设计
LaughingZhu40 分钟前
Product Hunt 每日热榜 | 2026-08-03
人工智能·经验分享·深度学习·神经网络·产品运营
大龄码农有梦想41 分钟前
AI Agent 目前最大的瓶颈是什么?
人工智能·机器学习·ai agent·智能体·ai工作流·智能体平台
m4Rk_1 小时前
【论文阅读】Agent 记忆机制(28):MEM1——将记忆压缩融入推理,实现近似恒定上下文的长程智能体
论文阅读·人工智能·学习·开源·github
光锥智能1 小时前
荣耀将阿莱电影工作流融入机器人手机
人工智能·智能手机·机器人