当前位置: 首页 > news >正文

MATLAB 实现 SRCNN 图像超分辨率重建

MATLAB代码实现,用于基于三层卷积神经网络的图像超分辨率重建。

1. MATLAB代码实现

% 超分辨率卷积神经网络(SRCNN)的测试代码
% 参考文献:Chao Dong, Chen Change Loy, Kaiming He, Xiaoou Tang.
% 学习深度卷积网络的图像超分辨率,欧洲计算机视觉会议记录,2014年% 清理环境
close all;
clear all;% 读取真实图像
im = imread('Set5\butterfly_GT.bmp'); % 替换为你的图像路径
% im = imread('Set14\zebra.bmp');% 设定参数
up_scale = 3; % 放大倍数
model = 'model\x3.mat'; % 替换为你的模型路径% 仅在照度方面工作
if size(im, 3) > 1im = rgb2ycbcr(im);im = im(:, :, 1);
end
im_gnd = modcrop(im, up_scale); % 裁剪图像以匹配放大倍数
im_gnd = double(im_gnd) / 255; % 归一化到[0, 1]% 双三次插值
im_l = imresize(im_gnd, 1 / up_scale, 'bicubic'); % 缩小
im_b = imresize(im_l, up_scale, 'bicubic'); % 再放大% SRCNN重建
im_h = SRCNN(model, im_b);% 删除边框
im_h = shave(uint8(im_h * 255), [up_scale, up_scale]);
im_gnd = shave(uint8(im_gnd * 255), [up_scale, up_scale]);
im_b = shave(uint8(im_b * 255), [up_scale, up_scale]);% 计算PSNR
psnr_bic = compute_psnr(im_gnd, im_b);
psnr_srcnn = compute_psnr(im_gnd, im_h);% 显示结果
fprintf('双三次插值的峰值信噪比: %f dB\n', psnr_bic);
fprintf('SRCNN重建的峰值信噪比: %f dB\n', psnr_srcnn);figure, imshow(im_b); title('双三次插值');
figure, imshow(im_h); title('SRCNN重建');% 保存结果
imwrite(im_b, ['双三次插值' '.bmp']);
imwrite(im_h, ['SRCNN重建' '.bmp']);

2. SRCNN函数实现

function im_h = SRCNN(model, im_b)% 加载预训练模型load(model);% 提取特征F1 = conv2(im_b, W1, 'same') + B1;F1 = max(0, F1); % ReLU激活函数% 非线性映射F2 = conv2(F1, W2, 'same') + B2;F2 = max(0, F2); % ReLU激活函数% 重建im_h = conv2(F2, W3, 'same') + B3;
end

3. 辅助函数

function im = modcrop(im, scale)% 裁剪图像以匹配放大倍数[h, w] = size(im);h = h - mod(h, scale);w = w - mod(w, scale);im = im(1:h, 1:w);
endfunction im = shave(im, border)% 删除边框im = im(border(1)+1:end-border(1), border(2)+1:end-border(2));
endfunction psnr = compute_psnr(im1, im2)% 计算PSNRmse = mean((im1(:) - im2(:)).^2);psnr = 10 * log10(255^2 / mse);
end

参考代码 MATLAB 实现 SRCNN 图像超分辨率重建 www.youwenfan.com/contentcnl/50734.html

通过代码,可以在MATLAB中实现基于SRCNN的图像超分辨率重建。该代码包括图像预处理、双三次插值、SRCNN重建以及结果评估等步骤。

http://www.jsqmd.com/news/35795/

相关文章:

  • 2025.11.03~2025.11.09
  • 2025年热门的安全检测检验公司综合排名
  • 详细介绍:Python 2025年10月最新:多平台域名/小程序封禁检测工具
  • 多快省力插件使用帮助说明
  • 人工势场法(APF)路径规划 MATLAB
  • MySQL--多表查询
  • ABC431 解题报告
  • 哈佛放屁都是香的?
  • 使用MATLAB实现平方倍频法对DSSS/BPSK信号进行载频估计
  • 详细介绍:推荐系统实战:python新能源汽车智能推荐(两种协同过滤+Django 全栈项目 源码)计算机专业✅
  • 深入解析:李宏毅2025春季机器学习作业ML2025_Spring_HW4在kaggle上的实操笔记
  • 完整教程:PostgreSQL + Redis + Elasticsearch 实时同步方案实践:从触发器到高性能搜索
  • 基于最小二乘法的五颗可见卫星伪距定位
  • new day
  • 2025 年 11 月冰水机厂家推荐排行榜,工业冰水机,冷却冰水机,制冷冰水机,低温冰水机公司精选
  • 2025 年 11 月工业冰水机厂家权威推荐榜:专业制冷与高效节能口碑之选,工业冰水机,工业冷水机,工业冷冻机公司推荐
  • 词根学习笔记 | Alter系列 - 详解
  • 图片加字,用我最爽
  • new day
  • How to do PhD work
  • 关于计算机语言的学习
  • 计算机视觉(opencv)——基于MediaPipe与机器学习的手势识别高效的系统
  • 2025年合肥品牌设计团队专业排行
  • 2025年国内品牌设计公司top5推荐:专业团队口碑榜单
  • 英语_中考作文_An Act of Kindness_待读
  • [题解]【MX-S10】梦熊 NOIP 2025 模拟赛 2 FeOI Round 4 T1~T2
  • 小聊一下 带圈的数字,以及罕用字的显示、字体文件的分割
  • CSP挂分记
  • 实用指南:Agent 的感知-决策-行动循环实现
  • Ubuntu 22.04 的镜像源列表