【阅读笔记】Rapid, Detail-Preserving Image Downscaling

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

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

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

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

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

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


算法步骤

前置步骤

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

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

3、暂定 d d d是整数

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

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

5、

注:

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

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

后续步骤

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

8bit数据下, V m a x = 3 ∗ 25 5 2 Vmax = \sqrt{3*255^{2}} Vmax=32552 ,将RGB数值归一化。

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

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

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

参数讨论

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

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

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

4、λ= 0.5或者1


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

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

我的CSDN主页,欢迎访问

我的GitHub主页,欢迎访问

我的知乎主页,欢迎访问

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/23107.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IEEE WCCI-2020电动汽车路由问题进化计算竞赛的基准集

引言 交通一直是二氧化碳排放的主要贡献者。由于全球变暖、污染和气候变化,联邦快递、UPS、DHL和TNT等物流公司对环境变得更加敏感,他们正在投资于减少作为其日常运作的一部分而产生的二氧化碳排放的方法。毫无疑问,使用电动汽车(…

X86架构的Linux(Ubuntu版本)上离线安装CUnit来解决Could not find CUnit(missing:CUNIT_LIBRARY)问题

前言1 下载cunit压缩安装包:CUint-2.1-3.tar.bz2(为了安装成功请下载对应版本)2 解压安装压缩包3 sudo ./bootstrap --prefix/usr/local/cunit 生成可执行文件configure*4 sudo ./configure --prefix/usr/local/cunit5 sudo make . 编译 &…

记录--你知道Vue中的Scoped css原理么?

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 追忆Scoped 偶然想起了一次面试,二面整体都聊完了,该做的算法题都做出来了,该背的八股文也背的差不多了,面试官频频点头,似乎对我的基础和项…

常见的bug---4、在DataGrip上跑本地模式报return 2异常

文章目录 问题描述原因分析:解决方案: 问题描述 FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask 在DataGrip上设置了Hive的本地模式。虽然可以建表、但是无法对表进行插入数据 原因分析: 在插…

概率论的学习和整理15: 超几何分布,二项分布,泊松分布是如何趋近收敛的?

目录 1 问题: 2 结论 3 实验1 4 实验2 5 实验3 6 实验4 5 各种规律总结 5.1 1 5.2 2 5.3 3 5.4 4 6 超几何分布,二项分布,泊松分布,三者用EXCEL模拟 6.1 简单的扩展到泊松分布 6.2 比较整体的动态过程&…

【Linux】Linux下的项目自动化构建工具——make和makefile

❤️前言 大家好,好久不见!今天小狮子为大家带来的文章是一篇关于Linux下的项目自动化构建工具——make和makefile的博客,希望能帮助到大家。 正文 当我们进行涉及多文件的工程开发时,我们需要对很多不同类型、不同功能&#xff…

【批量将视频转为图像序列】

批量将视频转为图像序列 代码如下,代码中带有解释: # 导入所需要的库 import cv2 import os import numpy as np# 多个视频所在的路径 datasets_path ["/home/y/Code/数据集/1/007f.mp4","/home/y/Code/数据集/1/05f.mp4","/…

Android Java代码与JNI交互 JNI方法Java类字段 (六)

🔥 Android Studio 版本 🔥 🔥 Java 基础类型数据对应 Native层的字母 🔥 通过 jni 查找java某个类中相应字段对应的数据类型 , 需要使用到 jni 中的 GetFieldID() 函数 jfieldID GetFieldID(jclass clazz, const char* name, const char* sig){ return functions-…

可使用Linux 测试IP和端口是否能访问,查看返回状态码

一、 使用wget判断 wget是linux下的下载工具,需要先安装. 用法: wget ip:port wget ip:port连接存在的端口 二、使用telnet判断 telnet是windows标准服务,可以直接用;如果是linux机器,需要安装telnet. 用法: telnet ip port…

CNN从搭建到部署实战(pytorch+libtorch)

模型搭建 下面的代码搭建了CNN的开山之作LeNet的网络结构。 import torchclass LeNet(torch.nn.Module):def __init__(self):super(LeNet, self).__init__()self.conv torch.nn.Sequential(torch.nn.Conv2d(1, 6, 5), # in_channels, out_channels, kernel_sizetorch.nn.Sig…

windows搭建git服务器 无法识别 ‘git‘ 命令:exec: “git“: executable file not found in %PATH%

无法识别 git 命令:exec: "git": executable file not found in %PATH% 确保已经安装git,如下图配置环境变量即可。

Mysql查询

Mysql查询 一.DQL基础查询1.语法2.特点3.查询结果处理 二.单行函数(1)字符函数(2)逻辑处理(3)数学函数(4)日期函数 三.分组函数四.条件查询五.比较六.模糊查询七.UNION和UNION ALL(1)UNION(2)UNION ALL 八.排序九.数量限制十.分组查询 一.DQL基础查询 DQL(Data Que…