superresolution_v_2.0 Application超分辨率程序文档
SUPERRESOLUTION GRAPHICAL USER INTERFACE DOCUMENTATION
Contents
- 1.- How to use this application.
- 2.- What is Super-Resolution?
- 3.- Motion Estimation algorithms
- 4.- Reconstruction algorithms
- 5.- Results filenames format
- 6.- References
- 7.- License.
1.- How to use this application.
The aim of this application is :
- To discover the possibilities that Super Resolution (SR) offers, without any programming skills required
- To enable users to easily test and compare different SR techniques that exist today
- To offer a flexible project that anyone can modify to suit their needs, by adding new registration and reconstruction techniques (for a technical documentation on how the implementation was done, please refer to http://lcavwww.epfl.ch/software/superresolution/SRTechDoc.pdf )
1.1 Starting the GUI
To start the GUI, simply type 'superresolution' in the MATLAB console, after having set MATLAB's current directory to where the files 'superresolution.m' and 'superresolution.fig' are located.
Note: If you would like to change the GUI in any way, type 'GUIDE superrestolution' in the console. You will need to do this if you would like to add new algorithms to the list for instance.
1.2 Loading images into the GUI
To load a set of Low Resolution (LR) images into the GUI, you may choose to either:
- Load some of the test images that are provided with this package (located in the 'images' directory);
- Load any set of LR images you may have;
- Use the tool provided along with this GUI which can generate a number of LR images from a single, High Resolution (HR) image. This tool can be very useful when you want to artificially generate aliasing in you LR images, which can later be corrected by some Reconstruction Techniques.
In order to load a set of existing LR images, use the 'Add' button on the left side of the GUI. Once one or more images have been added, you may select one from the list in order to see a preview, along with some basic information. You can remove any selected image from the list by selecting it and clicking on the 'Remove' button. Use the 'Remove all images' button to clear the list completely.
If you prefer to create a set of LR images, use the 'Create LR images from a HR image' button. You will then be asked to provide a source image, the number of output LR images, and where to save them to if you want to keep them. After creation, and if you decided to automatically save the output LR images, they will automatically be loaded in the GUI for you.
1.3 Setting up the options and generating the HR image
Once you have loaded images into the GUI, you can choose the motion estimation algorithm that you want to use, and the reconstruction technique.
For the motion estimation, you can ask to estimate only the shifts, or both the shifts and the rotations. You may also choose to multiply each LR image with a Tukey Window, which will basically add a gradually-disapearing black border to it. This may be useful if the LR images were automatically generated using circular shifts for instance. Note that you can also choose to enter the motion parameters manually.
For the reconstruction techniques, you can specify the interpolation factor, and the percentage of the image that you want to process (starting from the middle of the image).
The last parameters are the Save Options. They enable you to automatically save the resulting HR image, either in the current directory, or in a specified directory. The image format used is uncompressed TIF, in order to avoid any unwanted compression artifacts.
For more details on the algorithms, see sections 3 and 4 of this document.
2.- What is Super-Resolution?
Super-Resolution (SR) is a process by which a number of LR images are combined into a single HR image, which has a greater resolving power. SR is not only useful to enhance the ersolving power of an image; it can also, to some extent, reduce the aliasing noticably.
3.- Motion Estimation algorithms
3.1 Vandewalle et al. (EPFL)
This method [1], developped at the EPFL, uses the property that a shift in the space domain is translated into a linear shift in the phase of the image's Fourrier Transform. Similarly, a rotation in the space domain is visible in the amplitude of the Fourrier Transform. Hence, the Vandewalle et al. motion estimation algorithm computes the images' Fourrier Transforms and determines the 1-D shifts in both their amplitudes and phases. One advantage of this method is that it discards high-frequency components, where aliasing may have occurred, in order to be more robust.
3.2 Marcel et al.
Similarly to the Vandewalle algorithm, the method of Marcel et al. [4] uses a frequency-domain analysis in order to determine the shift and rotation.
3.3 Lucchese et al.
Lucchese and Cortelazzo [3] developed a rotation estimation algorithm based on the property that the magnitude of the Fourier transformof an image and the mirrored version of the magnitude of the Fourier transform of a rotated image have a pair of orthogonal zero-crossing lines. The angle that these lines make with the axes is equal to half the rotation angle between the two images. The horizontal and vertical shifts are estimated afterwards using a standard phase correlation method.
3.4 Keren et al.
The motion estimation algorithm by Keren et al. [2] uses different, downsampled versions of the images to be analyzed in order to achieve its goal. First a 4x downsampled version of the images is used to perform an estimation of the shift and rotation using Taylor series. The same is done with 2x downsampling, but after correcting for the shifts and rotations estimated earlier. Finally, the same is done with the full-resolution images, in order to further fine-tune the estimates.
4.- Reconstruction algorithms
4.1 Interpolation This method simply aligns all the images' pixels on a High Resolution grid, and then applies a bicubic interpolation using Matlab's built-in griddata function.
4.2 Papoulis-Gerchberg The Papoulis-Gerchberg algorithm is a kind of POCS (Projection onto Convex Sets) method. It places the given pixels on a HR grid, goes into the frequency domain to "cut" the high frequencies, and repeats the process until convergence.
4.3 Iterated Back Projection The idea behind Iterated Back Projection [6] is to start with a rough estimation of the HR image, and iteratively add to it a "gradient" image, which is nothing else than the sum of the errors between each LR image and the estimated HR image that went through the appropriate transforms (given by the motion estimates).
4.4 Robust Super Resolution Robust Super Resolution [7] is a more robust version of the above Iterated Back Projection. The only difference resides in the computation of the gradient, which is not given by the sum of all errors, but by the median of all errors. This brings robustness against outliners in the LR images.
4.5 POCS This Projection Onto Convex Sets method is similar to the Papoulis-Gerchberg method, but instead of cutting the high frequencies, the image goes through a low-pass filter that approximates the camera's PSF (point spread function).
4.6 Structure-Adaptive Normalized Convolution This algorithm is an implementation of a paper by Tuan Q. Pham et al. [5]. It uses normalized convolution (NC) to reconstruct a HR image from several LR images. Two options can be enabled for this algorithm: * Noise robustness will analyze the images and determine which pixels are noisy in order not to use those. * A second pass can be perfomed in the correction, which will adapt the size and orientation of the gaussian filters used in the NC, resulting in a sharper HR image
5.- Results filenames format
The HR images that are automatically saved after processing are named according to which registration and reconstruction algorithm were used (result_xx_yy_n, where xx is the registration method, yy the reconstruction method, and n a number from 1 to 99):
Registration
- Man: manual
- VA: Vandewalle et al. (EPFL)
- MA: Marcel et al.
- LU: Lucchese et at.
- KE: Keren et al.
Reconstruction
- IN: Interpolation
- PG: Papoulis-Gerchberg
- BP: Iterated Back Projection
- RS: Robust Super-Resolution
- PO: POCS
- NCxy: Normalized Convolution, where x=1 if noise correction was done and y=1 if a second pass was done.
6.- References
- [1] P. Vandewalle, S. Süsstrunk and M. Vetterli, A Frequency Domain Approach to Registration of Aliased Images with Application to Super-Resolution, EURASIP Journal on Applied Signal Processing (special issue on Super-resolution), Vol. 2006, pp. Article ID 71459, 14 pages, 2006.
- [2] D. Keren, S. Peleg, and R. Brada, Image sequence enhancement using sub-pixel displacement, in Proceedings IEEE Conference on Computer Vision and Pattern Recognition, June 1988, pp. 742-746.
- [3] L. Lucchese and G. M. Cortelazzo, A noise-robust frequency domain technique for estimating planar roto-translations, IEEE Transactions on Signal Processing, vol. 48, no. 6, pp. 1769-1786, June 2000.
- [4] B. Marcel, M. Briot, and R. Murrieta, Calcul de Translation et Rotation par la Transformation de Fourier, Traitement du Signal, vol. 14, no. 2, pp. 135-149, 1997.
- [5] Tuan Q. Pham, Lucas J. van Vliet and Klamer Schutte, Robust Fusion of Irregularly Sampled Data Using Adaptive Normalized Convolution, EURASIP Journal on Applied Signal Processing, Vol. 2006, Article ID 83268, 12 pages, 2006.
- [6] M. Irani and S. Peleg, Improving resolution by image registration, Graphical Models and Image Processing, 53:231-239, 1991.
- [7] A. Zomet, A. Rav-Acha, and S. Peleg, Robust Super-Resolution, Proceedings international conference on computer vision and pattern recognition (CVPR), 2001.
7.- License.
Copyright (C) 2005-2006 Laboratory of Audiovisual Communications (LCAV), Ecole Polytechnique Federale de Lausanne (EPFL), CH-1015 Lausanne, Switzerland
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This software is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details (enclosed in the file GPL).
Developed by Patrick Vandewalle, Karim Krichane, Patrick Zbinden. Please send any comment or suggestion to superresolution@epfl.ch
Published with MATLAB® 7.2
superresolution_v_2.0 Application超分辨率程序文档的更多相关文章
- 『超分辨率重建』从SRCNN到WDSR
超分辨率重建技术(Super-Resolution)是指从观测到的低分辨率图像重建出相应的高分辨率图像.SR可分为两类: 1. 从多张低分辨率图像重建出高分辨率图像 2. 从单张低分辨率图 ...
- JPEG压缩图像超分辨率重建算法
压缩图像超分辨率重建算法学习 超分辨率重建是由一幅或多幅的低分辨率图像重构高分辨率图像,如由4幅1m分辨率的遥感图像重构分辨率0.25m分辨率图像.在军用/民用上都有非常大应用. 眼下的超分辨率重建方 ...
- 浅谈AI视频技术超分辨率
泛娱乐应用成为主流,社交与互动性强是共性,而具备这些特性的产品往往都集中在直播.短视频.图片分享社区等社交化娱乐产品,而在这些产品背后的黑科技持续成为关注重点,网易云信在网易MCtalk 泛娱乐创新峰 ...
- 【超分辨率】—(ESRGAN)增强型超分辨率生成对抗网络-解读与实现
一.文献解读 我们知道GAN 在图像修复时更容易得到符合视觉上效果更好的图像,今天要介绍的这篇文章——ESRGAN: Enhanced Super-Resolution Generative Adve ...
- Coarse-to-Fine超分辨率相关
1.A Coarse-to-Fine Subpixel Registration Method to Recover Local Perspective Deformation in the Appl ...
- Image Super-Resolution via Sparse Representation——基于稀疏表示的超分辨率重建
经典超分辨率重建论文,基于稀疏表示.下面首先介绍稀疏表示,然后介绍论文的基本思想和算法优化过程,最后使用python进行实验. 稀疏表示 稀疏表示是指,使用过完备字典中少量向量的线性组合来表示某个元素 ...
- 慢镜头变焦:视频超分辨率:CVPR2020论文解析
慢镜头变焦:视频超分辨率:CVPR2020论文解析 Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resol ...
- 小米造最强超分辨率算法 | Fast, Accurate and Lightweight Super-Resolution with Neural Architecture Search
本篇是基于 NAS 的图像超分辨率的文章,知名学术性自媒体 Paperweekly 在该文公布后迅速跟进,发表分析称「属于目前很火的 AutoML / Neural Architecture Sear ...
- Adobe超分辨率算法:SRNTT
论文:Image Super-Resolution by Neural Texture Transfer 论文链接:https://arxiv.org/abs/1903.00834 项目地址:http ...
随机推荐
- 转:简单通用的一则makefile .
在linux下面下写程序少不了写makefile,如果每个文件都按部就班的详细的写编译脚本,效率势必低下:makefile提供了自动化变量.模式规则等,稍加利用可以提高写makefile的效率.下面列 ...
- 【linux】Linux查看各类日志
Log位置: /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/ma ...
- react native window下的环境搭建和调试方案
这几天使用react native开发app,遇到一些坑,先记录下来,以后再继续补充 环境搭建 打开react native中文网,发现环境搭建特么也太复杂了,安装各种插件/软件,对于我们 编辑器+浏 ...
- Oracle 10g如何对用户姓名,按首字母排序、查询
首先介绍Oracle 9i新增加的一个系统自带的排序函数 1.按首字母排序 在oracle9i中新增了按照拼音.部首.笔画排序功能.设置NLS_SORT值 SCHINESE_RADICA ...
- Linux安装Scala步骤
1.到官方下载tgz的安装包. http://www.scala-lang.org/download/ 注意:在最下面的Other Resources中 2.下载后将压缩包放在/usr/local目录 ...
- Linux下使用DD命令测试磁盘读写速度
dd是Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换,所以可以用来测试硬盘的读写能力~ 几种常见的DD命令,先看一下区别~ dd bs=6 ...
- Atitit.软件仪表盘(2)--vm子系统--资源占用监测
Atitit.软件仪表盘(2)--vm子系统--资源占用监测 1. Jvisualvm.exe 2. jprofile 3. Heap //permgen monitor 作者::老哇的爪子At ...
- 基于FPGA的PCIe接口实现(具体讲解了数据流向)
时间:2014-12-09 来源:西安电子科技大学电子工程学院 作者:姜 宁,陈建春,王 沛,石 婷 摘要 PCI Express是一种高性能互连协议,被广泛应用于网络适配.图形加速器.网络存储.大数 ...
- PHP学习记录第一篇:Ubuntu14.04下LAMP环境的搭建
最近一段时间会学习一下PHP全栈开发,将会写一系列的文章来总结学习的过程,以自勉. 第一篇记录一下LAMP环境的安装 0. 安装Apache Web服务器 安装之前先更新一下系统 sudo apt-g ...
- Oracle:shared memory realm does not exist
1. 先描述一个连接Oracle 10g的错误:“shared memory realm does not exist” 如图所示Sqlplus连接时出现这个错误: 2. Oracle 服务器主要组件 ...