基于matlab的数字图像增强处理,数字图像处理matlab实验图像增强
【图像增强】基于深度学习的超分辨率图像增强包含Matlab源代码_ Matlab仿真博客的技术博客_博客
引言数字时代已经到来,图像作为信息传递的主要媒介,已经广泛应用于各种场景。在许多领域,人们对图像质量有很高的要求,如医学图像领域、卫星遥感领域等。因此,对于飞速发展的信息时代,低分辨率图像已经难以满足特定场景的需求。超分辨率图像重建技术是通过某种算法将一幅或多幅低分辨率图像重建成一幅高分辨率图像。提出的基于卷积神经网络的图像超分辨率算法,解决了传统图像超分辨率重建算法鲁棒性弱、计算复杂的问题,但重建后仍存在参数多、图像不清晰,对细节丰富的图像存在重建能力差、视觉效果差的问题。针对上述问题,本文深入研究了卷积神经网络在图像超分辨率领域深度学习的应用效果。
2部分代码%======================================================
超分辨率卷积神经网络(SRCNN)的%测试代码
%=========================================================================
全部关闭;
全部清除;
%%读取地面真实图像
im=im read( set 5 \ butterfly _ gt . BMP );
% im=im read( set 14 \ zebra . BMP );
%%设置参数
up _ scale=3;
model= model \ 9-5-5(ImageNet)\ x3 . mat ;
% up _ scale=3;
% model= model \ 9-3-5(ImageNet)\ x3 . mat ;
% up _ scale=3;
% model=model\9-1-5(91张图片)\ x3 . mat ;
% up _ scale=2;
% model= model \ 9-5-5(ImageNet)\ x2 . mat ;
% up _ scale=4;
% model= model \ 9-5-5(ImageNet)\ x4 . mat ;
%%仅在照度下工作
如果大小(im,3) 1
im=RGB 2 ycbcr(im);
im=im(:1);
目标
im_gnd=modcrop(im,up _ scale);
im _ gnd=single(im _ gnd)/255;
%%双三次插值
im_l=imresize(im_gnd,1/up_scale,双三次);
im_b=imresize(im_l,up_scale,双三次);
%% SRCNN
im_h=SRCNN(型号,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(双三次插值的PSNR:% f dB \ n ,PSNR _ BIC);
fprintf( Sr CNN重建的PSNR:% f dB \ n ,PSNR _ Sr CNN);
图,im show(im _ b);标题(双三次插值);
图,im show(im _ h);标题( SRCNN重构);
%imwrite(im_b,[双三次插值 。BMP ]);
%imwrite(im_h,[SRCNN重建 。BMP ]);3模拟结果
4参考文献[1]王慧云。基于深度学习的图像超分辨率重建[D]。电子科技大学,2020。
[2]黄思维。基于深度学习的超分辨率图像重建算法研究[D].太原理工大学。
博主:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等领域的Matlab仿真。相关的matlab代码问题可以私信交流。有些理论引用自网络文献。如有侵权,联系博主删除。
原创作品来自matlab研究助手,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。