Rapid, Detail-Preserving Image Downscaling(快速的图像缩放技术)

该论文提出了一种基于卷积滤波器的算法,并确定滤波器的权值,使重要的细节保留在缩小比例的图像。更具体地说,它为更偏离局部图像邻域的像素分配更大的权重。

从信息论的角度来看,偏离中心像素的邻域的一些像素数据可能携带有价值的信息,也可能是噪声或超出奈奎斯特频率的信息。

根据Beghdadi等人[2013]的研究,人类视觉系统“近似于拉普拉斯边缘检测器和自适应低通滤波”。因此,一定程度的噪点和混叠是可以容忍的,而模糊会导致重要细节的丢失。

Kopf等人[2013]提出了一种基于联合双边滤波器的方法。对于每个输出像素,它们在输入图像中定义一个相应的区域。与纯分割相反,每个输入像素可能对输出像素的数量有加权贡献。

该论文算法首先计算原始图像的平滑、缩小版本作为引导图像。考虑到我们应专注于大图像的下采样尺度,基于box filter快速地完成。然后使用卷积滤波器从输入图像组装最终图像,该滤波器赋予与引导图像所表示的局部邻域不同的像素更多的权重。


算法步骤

前置步骤

1、原图$I$通过box filter,生成一个 box filterd,downscaled图降采样图$Id$,参数$d$表示降采样倍数;($Id$形成没有说明,这个是重点)

2、原图$I$中的像素$p$用$\Omega _{I}(p)$表示原图的矩形块像素映射到降采样图$Id$中;

3、暂定$d$是整数

4、$Id$用卷积公式处理得到$\tilde{I}$(模糊图),相当于对$I$做公式2滤波

这种近似比完全高斯近似快得多(特别是对于大d),并且给出非常相似的结果

5、

注:

1、box filter 与gaussian filter的结果图一些差别,gaussian filter结果图与文中的guidance image差别不大。

2、处理边缘像素,可以扩展

后续步骤

通过联合双边滤波器计算输出图像O。

8bit数据下,$Vmax = \sqrt{3*255^{2}}$,将RGB数值归一化。

方程2与常规联合双边滤波器有两大区别:

首先,距离核不减小,而是随着清晰度的增加而增大,即它更倾向于I帽的局部像素邻域的差异

其次,空间核不是高斯函数,是矩形函数,$\Omega _{I}(p)$内为1,在其他地方为0

参数讨论

1、$\lambda$参数影响讨论,指数函数内是归一化数据,用$\lambda$求幂,参数小于1增强,大于1减少

2、结果取决于自身像素和$\Omega _{I}(p)$内周围像素,通过$Kp$连接

3、当$λ= 0$时,所有像素被统一地(与它们的清晰度无关)赋值为1的范围核,权重$1/k_{p}=1/(d^{2})$,此时本文filter等同box filter。

4、λ= 0.5或者1


觉得本文对您有一点帮助,欢迎讨论、点赞、收藏,您的支持激励我多多创作。

我的个人博客主页,欢迎访问

我的CSDN主页,欢迎访问

我的GitHub主页,欢迎访问

我的知乎主页,欢迎访问

【阅读笔记】Rapid, Detail-Preserving Image Downscaling的更多相关文章

  1. 《Java编程思想》阅读笔记二

    Java编程思想 这是一个通过对<Java编程思想>(Think in java)进行阅读同时对java内容查漏补缺的系列.一些基础的知识不会被罗列出来,这里只会列出一些程序员经常会忽略或 ...

  2. 阅读笔记 1 火球 UML大战需求分析

    伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本   <火球 UML大战需求分析>,首先 ...

  3. [阅读笔记]Software optimization resources

    http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++   7. The efficiency of differe ...

  4. 《uml大战需求分析》阅读笔记05

    <uml大战需求分析>阅读笔记05 这次我主要阅读了这本书的第九十章,通过看这章的知识了解了不少的知识开发某系统的重要前提是:这个系统有谁在用?这些人通过这个系统能做什么事? 一般搞清楚这 ...

  5. <<UML大战需求分析>>阅读笔记(2)

    <<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...

  6. uml大战需求分析阅读笔记01

    <<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...

  7. Hadoop阅读笔记(七)——代理模式

    关于Hadoop已经小记了六篇,<Hadoop实战>也已经翻完7章.仔细想想,这么好的一个框架,不能只是流于应用层面,跑跑数据排序.单表链接等,想得其精髓,还需深入内部. 按照<Ha ...

  8. Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable

    酒,是个好东西,前提要适量.今天参加了公司的年会,主题就是吃.喝.吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个喷子!在大家推杯换盏之际,难免一些画面浮现脑 ...

  9. Hadoop阅读笔记(五)——重返Hadoop目录结构

    常言道:男人是视觉动物.我觉得不完全对,我的理解是范围再扩大点,不管男人女人都是视觉动物.某些场合(比如面试.初次见面等),别人没有那么多的闲暇时间听你诉说过往以塑立一个关于你的完整模型.所以,第一眼 ...

  10. Hadoop阅读笔记(四)——一幅图看透MapReduce机制

    时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样“有口无心”的学习方式是不奏效的,或者是收效甚微的.如果有幸能有大牛路过, ...

随机推荐

  1. 面试某大厂,被Channel给吊打了,这次一次性通关channel!

    目录 一 前言 面试题 然后我们进行一下扩展,玩转Channel! 二 解决面试题 1. 介绍一下Channel 2. Channel在go中起什么作用 3. Channel为什么需要两个队列实现 4 ...

  2. Java Stream常见用法汇总,开发效率大幅提升

    本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...

  3. 高阶函数_函数柯里化 以及 setState中动态key

     使用柯里化: 1 state = { 2 username: "", 3 password: "", 4 }; 5 render() { 6 return ( ...

  4. Python 列表的修改、添加和删除元素

    列表修改.添加和删除元素 大多数创建的列表都是动态的,随程序的运行增删元素 修改列表元素 指定列表名和要修改的元素的索引,再指定要修改元素的新值 # 修改列表元素案例 motorcycles = [' ...

  5. scrapy框架简介

    一.安装scrapy环境 -mac或linux:pip install scrapy -windows: 1.pip install wheel 2.pip install twinsted 3.pi ...

  6. C++ Primer 5th 阅读笔记:入门指南

    学习方法 The way to learn a new programming language is to write programs. 学习一门新编程语言的方式是编写程序. 函数(Functio ...

  7. Selenium - 元素定位(3) - CSS进阶

    Selenium - 元素定位 CSS 定位进阶 元素示例 属性定位 # css 通过id属性定位 driver.find_element_by_css_selector("#kw" ...

  8. import MySQLdb as Database ModuleNotFoundError: No module named ‘MySQLdb‘

    import MySQLdb as Database ModuleNotFoundError: No module named 'MySQLdb' import MySQLdb as Database ...

  9. 限速神器RateLimiter源码解析

    作者:京东科技 李玉亮 目录指引 限流场景 软件系统中一般有两种场景会用到限流: •场景一.高并发的用户端场景. 尤其是C端系统,经常面对海量用户请求,如不做限流,遇到瞬间高并发的场景,则可能压垮系统 ...

  10. L2-004 这是二叉搜索树吗? (25 分)

    1.题目描述: 一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点, 其左子树中所有结点的键值小于该结点的键值: 其右子树中所有结点的键值大于等于该结点的键值: 其左右子树都是二叉搜索树 ...