An Edge-Guided Image Interpolation Algorithm via Directional Filtering and Data Fusion【翻译】
基于定向滤波和数据融合的边缘引导图像插值算法
http://ieeexplore.ieee.org/document/1658087/
摘要:
保留边缘结构对于从低分辨率对应物重建高分辨率图像的图像插值算法是一个挑战。我们提出了一种新的边缘引导非线性插值技术,通过定向滤波和数据融合。对于要内插的像素,在两个正交方向上定义两个观测组,并且每个集合产生像素值的估计。通过线性最小均方误差估计(LMMSE)技术将这些模型化为缺失像素的不同噪声测量值的这些方向估计值使用两个观测组的统计量融合成更鲁棒的估计。我们还提出了基于LMMSE的插值算法的简化版本,以降低计算成本,而不会牺牲插值性能。
第一节
介绍
数字图像的许多用户希望提高成像硬件提供的原始分辨率。图像插值旨在从相关的低分辨率(LR)捕获重建更高分辨率(HR)图像。它在医学成像,遥感和数字照片应用[3] - [4] [5]等许多图像插值方法已被开发[1] ,[2] ,[5] ,[6] ,[8] - [9] [10] [11] [12] [13] [14] [15] [16]。虽然通常使用的线性方法,如像素复制,双线性插值和双三次卷积插值在简单性和快速实现方面具有优势[7],但它们受到一些固有缺陷的影响,包括边缘效应,模糊细节和环形伪影。随着廉价和相对LR数字成像设备的普及以及越来越多的计算能力,对高质量图像插值算法的兴趣和需求也在增加。
人类视觉系统对边缘结构非常敏感,这些结构传达了大量的图像语义,因此图像插值算法的关键要求是忠实地重建原始场景中的边缘。传统的线性插值方法[1] - [2] [3],[5],[6]在边缘保留标准下不能很好地工作。近年来提出了一些非线性插值技术[8] - [9] [10] [11] [12] [13] [14] [15],以保持边缘锐度。Jensen和Anastassiou的插值方案[8]检测边缘并通过一些模板来适应它们,以改善放大图像的视觉感知。Li和Orchard [9]使用LR图像的协方差来估计HR图像协方差,其在一定程度上代表边缘方向信息,并提出了维纳滤波像插值方案。由于该方法需要相对较大的窗口来计算每个缺失样本的协方差矩阵,所以由于样本统计变化以及协方差的不正确估计,它可能在局部结构中引入一些伪像。Carrato和Tenze [10]的图像插值器首先复制像素,然后通过使用一些预设3 ,×3边缘模式并优化运算符中的参数。Muresan [15]以对角线和非对角方向检测边缘,然后通过使用一维(1-D)多项式插值,沿检测方向恢复丢失的样本。
一些非线性插值方法尝试通过从其LR对应物预测HR图像中的精细结构来放大图像。为此,需要对图像进行多分辨率表示。Takahashi和Taguchi [11]通过拉普拉斯金字塔代表了一个图像,并用两个经验确定的参数,从LR拉普拉斯细节信号估计未知的高频分量。在过去二十年中,小波变换(WT)理论[17]得到了很好的发展,为信号表现提供了一个很好的多分辨率框架。WT将信号分解成若干尺度,信号尖锐边缘具有一定的相关性。Carey等人 [12]利用小波尺度锐利边缘的Lipschitz属性。他们使用粗尺度的模量最大值信息来预测最佳尺度的未知小波系数。然后,HR图像由逆WT构建。Muresan和Parks [14]通过使用小波尺度空间中的尖锐边缘的整个锥体影响而不是仅最大值来扩展了该策略,以通过最优恢复理论来估计最佳尺度系数。Zhu等人的基于小波的插值方法 [13]使用参数离散时间模型来表征重要边缘。利用该模型,在小波域中,通过线性最小均方误差估计(LMMSE)恢复最佳尺度的丢失边缘信息。上述方案在算法开发中隐含或明确地采用孤立的尖锐边缘模型,例如理想或平滑的阶梯边缘。然而,对于真实图像,尖锐边缘的小波系数可能受到相邻边缘的干扰。一般来说,非线性插值方法在边缘保留方面比线性方法更好。在[16]中,Malgouyres和Guichard在理论和实验上分析了一些线性和非线性图像放大方法。
与1-D信号的不连续性相比,二维(2-D)图像中的边缘具有一个方向:在线性插值方法中,在水平和垂直方向上交替进行1-D滤波,而不注意局部边缘结构。如果在边缘方向上插补缺少样本而不是边缘方向,则存在尖锐边缘,将引入大的和视觉上令人不安的伪像。避免最严重伪像的保守策略是使用各向同性的2-D滤波器。然而,这降低了边缘锐度。更为“自信”的方法是在估计的边缘方向进行内插。后者的问题是,如果估计的边缘方向错误,则对图像质量的惩罚很高,
本文提出了一种新的平衡方法来解决问题。缺少的样本在不是一个但是两个相互正交的方向内插。将两个插值结果视为样本的两个估计,并使用本地窗口的统计量进行自适应融合。具体来说,我们将每个缺失样本的邻域划分为两个正交方向的子集。希望两个观测组将显示不同的统计,因为缺失的样本与边缘方向上的邻居具有较高的相关性。每个定向子集产生缺失像素的估计。通过在LMMSE的原理中组合两个方向估计,最终内插像素。这个过程可以根据它们与缺失样本的一致性来区分两个子集,并且使得与边缘方向垂直的子集对于丢失样本的LMMSE估计贡献较小。通过适应内插到局部图像梯度,上述新方法比线性插值方法明显优于保持边缘锐度同时抑制伪像。所提出的插值方法的缺点是其相对较高的计算复杂度。我们还开发了一种简化的插值算法,大大降低了计算量,但没有明显的性能下降。所提出的插值方法的缺点是其相对较高的计算复杂度。我们还开发了一种简化的插值算法,大大降低了计算量,但没有明显的性能下降。所提出的插值方法的缺点是其相对较高的计算复杂度。我们还开发了一种简化的插值算法,大大降低了计算量,但没有明显的性能下降。
本文的结构如下。
第二节描述了边缘引导的LMMSE型图像插值算法。
第三节介绍了该算法的简化版本,力求实现快速实用。
第四节报告了实验结果。
第五节总结。
边缘引导的基于LMMSE的插值
像许多以前的论文中,我们假设一个LR图像 Il 从相关的人力资源图像直接下采样 Ih 通过 Il(n,m)=Ih(2n−1,2m−1), 1≤n≤N, 1≤m≤M。参考图1,黑点表示可用的样本Il白点代表缺失的样本 Ih。插值问题是估计HR图像中缺少的样本Ih,其大小是 2N×2M,从LR图像中的样本 Il,其大小是 N×M。
。
图像插值的中心问题是如何推断和利用隐藏在相邻像素中的丢失样本的信息。如果LR图像的下采样信号超过奈奎斯特采样限制,则基于卷积的插值方法将在重建HR图像时遇到混叠问题。这是人为因素,例如内插图像中的振铃效应,这是线性插值方法所共有的。鉴于人类视觉系统对边缘特别是在其空间位置高度敏感,因此在保持边缘锐度和几何形状的同时抑制插值假象是至关重要的。
边缘方向是插值过程最重要的信息。为了提取和使用这些信息,我们将每个丢失的样本的相邻像素分成两个彼此正交的方向子集。从每个子集中,进行方向插值,然后将两个内插值融合以得到缺失样本的LMMSE估计。我们恢复人力资源形象一世H在两个步骤。首先,那些缺少的样本一世H(2 Ñ ,2 米)在由四个LR样本包围的中心位置进行插值。其次,其他缺少的样本一世H(2 Ñ - 1 ,2 米) 和 一世H(2 Ñ ,2 米- 1 )在已经恢复的样品的帮助下进行插值 一世H(2 Ñ ,2 米)。
A.样本插值 一世H(2 Ñ ,2 米)
参考图2,我们可以插值丢失的HR样本一世H(2 Ñ ,2 米)沿着两个正交方向:45°对角线和135°对角线。表示一世^45(2 Ñ ,2 米) 和 一世^135(2 Ñ ,2 米)通过一些线性方法,例如双线性插值,双三次卷积或样条插值[2] - [2] [3] [4] [5]。考虑方向插值输出作为丢失的HR样本的噪声测量
查看来源其中随机噪声变量 υ45 和 υ135 表示相应方向的插补误差。
要融合两个方向测量 一世^45 和 一世^135进入更强大的估计,我们将(2-1)重写为矩阵形式
查看来源哪里
查看来源现在,插值问题是估计未知样本 一世H 从嘈杂的观察 ÿ。该估计可以在最小均方误差方面进行优化。获得最小均方误差估计(MMSE)一世H,即, 一世^H= E[ 我H| ÿ] = ∫一世Hp (IH/ Y)d一世H我们需要知道概率密度函数 p (IH/ Y)。但实际上,很难得到这个先前的信息p (IH/ Y)根本无法估计。因此,在实际应用中,通常采用LMMSE而不是MMSE。要实现LMMSE,只需要一阶和二阶统计一世H 和 ÿ 需要,这可以自适应地估计。
An Edge-Guided Image Interpolation Algorithm via Directional Filtering and Data Fusion【翻译】的更多相关文章
- paper 15 :整理的CV代码合集
这篇blog,原来是西弗吉利亚大学的Li xin整理的,CV代码相当的全,不知道要经过多长时间的积累才会有这么丰富的资源,在此谢谢LI Xin .我现在分享给大家,希望可以共同进步!还有,我需要说一下 ...
- Computer Vision_33_SIFT:SAR-SIFT: A SIFT-LIKE ALGORITHM FOR SAR IMAGES——2015
此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...
- list scheduling algorithm 指令调度 —— 笔记
作者:Yaong 出处:https://www.cnblogs.com/yaongtime/articles/14033444.html 版权:本文版权归作者和博客园共有 转载:欢迎转载,但未经作者同 ...
- machine learning model(algorithm model) .vs. statistical model
https://www.analyticsvidhya.com/blog/2015/07/difference-machine-learning-statistical-modeling/ http: ...
- Nagle's algorithm
w41字节的数据包只有1字节的可用信息.以减少数据包发送量来提高TCP/IP网络性能. https://en.wikipedia.org/wiki/Nagle's_algorithm https:// ...
- Nagle's algorithm 封包 网络游戏协议封包需注意点 封包挂
w41字节的数据包只有1字节的可用信息.以减少数据包发送量来提高TCP/IP网络性能. https://en.wikipedia.org/wiki/Nagle's_algorithm https:// ...
- {ICIP2014}{收录论文列表}
This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...
- 计算机视觉code与软件
Research Code A rational methodology for lossy compression - REWIC is a software-based implementatio ...
- cvpr2015papers
@http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...
随机推荐
- 【剑指offer】面试题30:最小的K个数
import random def partition(data, start, end): if end <= start: return start index = random.randi ...
- DropDownList 添加“请选择”
this.DDLUsers.Items.Insert(0, new ListItem("", ""));
- machine_learning-knn算法具体解释(近邻算法)
近邻算法是机器学习算法中的入门算法,该算法用于针对已有数据集对未知数据进行分类. 该算法核心思想是通过计算预測数据与已有数据的相似度猜測结果. 举例: 如果有例如以下一组数据(在下面我们统一把该数据作 ...
- mydate97时间插件集成jquery插件
1.初始化JS: //把mydate97时间插件集成jquery插件 (function ($) { $.fn.mydatePicker = function (options) { return t ...
- Swift 3.1 的一些新特性
Swift 3.1 的一些新特性 推荐序 本文来自泊学的投稿,介绍了 Swift 3.1 的新特性,感谢泊学授权发表.以下为文章正文. 正文 Apple 终于发布了Xcode 8.3以及Swift ...
- glibc中malloc()的空间overhead
在linux下调用malloc()分配内存的时候,实际占用的内存与请求的内存尺寸的关系是什么呢,这个需要研究一下glibc中malloc()的实现.现在常见linux发行版中带的glibc中采用的都是 ...
- 【已解决】vbox + ubuntu 设置 1366x768 分辨率
1. 打开VBOX(Oracle VM VirtualBox),启动Ubuntu 2. 点击"设备>安装增强功能" 3. 进入Ubuntu打开文件管理器,如下图 4. 输入r ...
- Ubuntu 16.04安装有道词典
以前用Ubuntu 14.04 的时候,直接下载有道词典官方deb安装包,就安装好了,现在换成Ubuntu 16.04因为有些依赖问题就无法安装成功.于是Google之,成功解决,也顺便熟悉了一下dp ...
- 记一次线上MySQL数据库死锁问题
最近线上项目报了一个MySQL死锁(DealLock)错误,虽说对业务上是没有什么影响的,由于自己对数据库锁这块了解不是很多,之前也没怎么的在线上碰到过.这次刚好遇到了,便在此记录一下 ...
- vs2015开发so动态库linux
#include <stdio.h> #include <dlfcn.h> typedef int(*fn_max)(int a, int b); int main() { p ...