原来仅处理了Y通道,输出的灰度图像。

Super-Resolution/ESPCN at master · wangxuewen99/Super-Resolution · GitHub https://github.com/wangxuewen99/Super-Resolution/tree/master/ESPCN

改为处理彩色图像,就简单加了几行代码。

YCbCr分别处理,只对Y进行输入,另两个通道双三插值。

预先不进行降采样了。直接SR。

三倍放大。

sr_demo.m

% =========================================================================
% 描述: 一个使用训练好的网络进行超分辨率的应用demo(使用caffe的matlab接口)
%
% 参考文献:
% Shi W, Caballero J, Huszar F, et al. Real-Time Single Image and Video
% Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network[C]
%
% 王学文
% wangxuewen@yy.com
% =========================================================================
%% settings
model = './espcn_mat.prototxt';
weights = './snapshot/espcn_iter_10000.caffemodel';
batch = ;
up_scale = ;
%% read data
input = imread('../data/test/set14/zebra.bmp');
% input=imread('Infrared/12.bmp');
% if size(input,)>
input2 = rgb2ycbcr(input);
input = input2(:,:, );
im_l_cb = input2(:,:, );
im_l_cr = input2(:,:, );
% end;
input = single(input)/;
% input = imresize(input, /up_scale, 'bicubic');
[height, width, channel] = size(input); %% use gpu mode
caffe.reset_all();
caffe.set_mode_cpu();
% caffe.set_mode_gpu();
% caffe.set_device(); % image_new=zeros(height, width, ); %% load model using mat_caffe net = caffe.Net(model,weights,'test');
net.blobs('data').reshape([height width channel batch]); % reshape blob 'data'
net.reshape();
net.blobs('data').set_data(input);
net.forward_prefilled();
output = net.blobs('conv3').get_data();
[output_height, output_width, output_channel] = size(output);
scaled_height = up_scale * output_height;
scaled_width = up_scale * output_width;
im_h = zeros(scaled_height, scaled_width); for m = : up_scale
for n = : up_scale
im_h(m:up_scale:scaled_height+m-up_scale,n:up_scale:scaled_width+n-up_scale) = output(:,:,(m-)*up_scale+n);
end
end
im_h = im_h * ;
[nrow, ncol] = size(im_h);
im_h_cb = imresize(im_l_cb, [nrow, ncol], 'bicubic');
im_h_cr = imresize(im_l_cr, [nrow, ncol], 'bicubic'); im_h_ycbcr = zeros([nrow, ncol, ]);
im_h_ycbcr(:, :, ) = im_h;
im_h_ycbcr(:, :, ) = im_h_cb;
im_h_ycbcr(:, :, ) = im_h_cr;
im_h = ycbcr2rgb(uint8(im_h_ycbcr)); % im_h = uint8(im_h * ); imwrite(im_h,'13_espcn_caffe.bmp');

ESPCN处理彩色图像代码的更多相关文章

  1. geotrellis使用(二十八)栅格数据色彩渲染(多波段真彩色)

    目录 前言 实现过程 总结 一.前言        上一篇文章介绍了如何使用Geotrellis渲染单波段的栅格数据,已然很是头疼,这几天不懈努力之后工作又进了一步,整清楚了如何使用Geotrelli ...

  2. HTML5 Canvas彩色小球碰撞运动特效

    脚本简介 HTML5 Canvas彩色小球碰撞运动特效是一款基于canvas加面向对象制作的运动小球动画特效.   效果展示 http://hovertree.com/texiao/html5/39/ ...

  3. .NET应用架构设计—面向对象分析与设计四色原型模式(彩色建模、领域无关模型)(概念版)

    阅读目录: 1.背景介绍 2.问自己,UML对你来说有意义吗?它帮助过你对系统进行分析.建模吗? 3.一直以来其实我们被一个缝隙隔开了,使我们对OOAD遥不可及 4.四色原型模式填补这个历史缝隙,让我 ...

  4. TabControl 显示彩色的图示 (XE6 Firemonkey)

    提示:Delphi 10 Seattle 透过 TImageList 来指定图标,就能显示原来图标的颜色. 下列方法只适用于 XE6 XE6 Firemonkey 里的 TabControl 可以将切 ...

  5. 【iOS】彩色TabBar切换动画实现

    无意间看到一个彩色TabBar切换的设计图,感觉很不错,有空就把他实现了. 环境信息 Mac OS X 10.10.4 Xcode 6.4 iOS 8.4 效果图: 效果图 源码下载地址: https ...

  6. jquery——彩色投票进度条

    一.需求 如下图 重点是要实现进度条. 二.分析 html5新增及删除标签一文中提到过html5新增了progress标签.但是肯定有兼容性问题.生成环境不适用,所以要模拟实现. 原理:动态设置< ...

  7. 本图片处理类功能非常之强大可以实现几乎所有WEB开发中对图像的处理功能都集成了,包括有缩放图像、切割图像、图像类型转换、彩色转黑白、文字水印、图片水印等功能

    import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphic ...

  8. 立体匹配:关于用OpenCV彩色化middlebury网站给定的视差

    #include "XYZ.h" void readPFM(Mat_<float> &disp, float &scale, string path) ...

  9. 彩色的Shell

    我常在命令行下工作,以前老被同事说"你整天在那个黑窗口上倒腾什么?" 现在这个问题变成了"你这个花花绿绿的窗口是什么东西?" 其实都是同一个东西:一个兼容于xterm的终端窗口,要么是PuTTY/Ki ...

随机推荐

  1. 利用jQuery中live为动态生成Dom添加datepicker效果

    利用Live属性,focus时重新绑定控件 $(".datepickerDom").live("focus", function () { $(this).da ...

  2. 【转】一篇文章读懂人力资源三支柱体系(COE・BP・SSC)

    通过人力资源转型,提升效率和效能   作者:Sharon Li,翰威特大中华区咨询总监. 杰克韦尔奇曾说过“人力资源负责人在任何企业中都应该是第二号人物”,但在中国,99%的企业都做不到.原因很简单, ...

  3. java中GZIPOutputStream 流的使用(EOFException)

    GZip流的使用非常多人都出现了以下的异常:java.io.EOFException: Unexpected end of ZLIB input stream.或者出现压缩后的数据不全的情况(就是压缩 ...

  4. 【嵌入式】——ads1.2的安装注意事项

    安装完ads的时候会出现错误,因为还要安装License Installation Wizard. 下一步会出现这个 然后点击Browse... 找到ads1.2下的CRACK(crack)文件夹的L ...

  5. SpringBoot2 启动报错 Failed to auto-configure a DataSource

    今天Spring Boot 2.0正式版发布,寻思着搭个小demo尝试一下Spring Boot的新特性,使用idea创建项目.在选择组件时添加了mysql.mybatis 然后在第一次启动的时候启动 ...

  6. CREATESTRUCT cs 结构体

    PreCreateWindow(CREATESTRUCT& cs) typedef struct tagCREATESTRUCT { LPVOID lpCreateParams; // 创建窗 ...

  7. node学习笔记3——文件操作fs

    文件操作关键字: http('fs') ——  请求 node 里面的 http 模块 readFile ——  读文件,参数包括 文件名,回调函数 writeFile ——  写文件,参数包括 文件 ...

  8. postgresql远程连接中断的处理

    在网络上连接远程服务器postgresql时,不活动时间稍长就会自动断开连接,不利于操作. 琢磨了一下,服务器上使用以下网络配置时,解决了这个问题.   #man 7 tcp   net.ipv4.t ...

  9. R语言-Paste函数

    该函数和excel中的&一样,可以将不同类型的数据放在一起. paste(....,sep="",collapse=NULL) ...表示要加在一起的数据类型,e.g ​p ...

  10. html5和css3实现的3D滚动特效

    今天给大家带来一款html5和css3实现的3D滚动特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="container"&g ...