resolution-robust large mask inpainting with fourier convolutions

news2025/1/17 0:57:51

Resolution-robust Large Mask Inpainting with Fourier Convolutions(2021)_studyeboy的博客-CSDN博客_分辨率稳健的大掩膜修复[Paper] Resolution-robust Large Mask Inpainting with Fourier Convolutions(2021)[Code]saic-mdal/lama基于傅里叶卷积的分辨率稳健的大型掩码修复现在的图像修复系统,尽管取得了重大进展,但经常与大面积缺失区域、复杂几何结构和高分辨率图像做斗争。我们发现造成这种情况的主要原因之一是修复网络和损失函数都缺乏有效的感受野。为缓解这个问题,我们提出了一种称为大蒙版修复(LaMa)的新方法。LaMa基于:1)新的修复https://blog.csdn.net/studyeboy/article/details/120985842Lama:《Resolution-robust Large Mask Inpainting with Fourier Convolutions》解读及实操 - 知乎最近任务需求跟图像inpainting相关,因此调研使用了多个较新的开源模型,例如crfill、RePaint、Lama等。综合比较之下Lama的速度、效果都是最佳的,并且支持自定义输入尺寸进行推理(而非必须固定输入尺寸)。因此…https://zhuanlan.zhihu.com/p/573505798图像修复算是非常实用的技术,之前公司上线过这个接口。修复/擦除/超分类似的任务和抠图分割还有些不同,抠图分割用监督任务还是比较多的,但是修复擦除超分几乎都是自监督的架构,配合gan,都会增加gan损失,都是偏向于使用生成的方法来增加保真度,早期的可能用l2损失unet架构的比较多,类似于去水印这种,拿到原图自己随机增加水印。lama架构上是encoder-decoder的自监督的架构,文章有三点:1.首先在结构上它使用了傅里叶卷积,傅里叶卷积覆盖整个图像范围的感受野,允许生成器从早期考虑全局上下文,除此之外,傅里叶卷积能够捕捉人造环境中常见的周期型结构。2.损失函数,高感受野感知损失和对抗损失组合。3.训练中的大掩膜的动态生成。

1.网络结构

对输入原图,先获取一个二进制掩膜进行遮罩,也就是要给一个输入的去除区域,形成一个四通道的输入tensor,(x*m,m),前向网络是一个生成器,以全卷积的方法获取一个三通道的彩色图像。

先看一下网络结构,左侧是模型结构,右侧是快速傅里叶卷积,快速傅里叶卷积实际上有两部分,一部分是local,一部分是global,local侧是普通卷积,global侧融合傅里叶卷积。网络整体是一个encoder-decoder结构。不同于gan结构,gan结构中有生成器和判别器两部分,此处的encoder-decoder结构对应的是生成器,如果不引入gan损失,只用l1/l2就退化成了分割任务。作者说一个好的架构应该在网络中具有尽可能广泛感受野,resnet的感受野增长缓慢,卷积核通常很小,感受野在早期可能不足,对于高分辨率图像效果不好,傅里叶卷积是完全可微的,是传统卷积的替代品,由于覆盖整个图像的感受野,傅里叶卷积允许生成器网络从早期开始考虑全局上下文,并且能够很好的捕获非常常见的周期性结构,比如砖,梯子,窗户等,在所有频率上共享相同的卷积会使模型朝着尺度协方差方向移动。

2.损失函数

2.1 高感受野感知损失

HRFPL是通过预训练的基础网络对输入图像x和生成图像x'进行特征相似的计算,具体来说是使用空洞卷卷或傅里叶卷积构建的HRF进行逐像素计算,这块我看源码就是每一层的两个特征都进行mse loss的计算,最终再计算个均值。选择一个合适的预训练网络很重要。

2.2 对抗损失

作者定义了一个在局部patch级别的鉴别器,用来区分真假patch,只有与掩膜相交的生成图像上patch才会获得假标签,真实图像上的相应区域则标记为真标签。

2.3 总体损失

对判别器进行梯度惩罚。

Ladv和Ldiscpl负责生成自然外观的局部细节,后者可以稳定训练,LHRFPL负责监督信号和全局结构的一致性。其实就是l2损失负责真正的去除,生成损失负责去除生成的保真度。

3.训练期间的掩膜生成

采用了积极的大型掩膜生成策略,该策略统一使用来自由高随机宽度和任意纵横比扩展的多边形的样本。

4.结果

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构之排序【归并排序和快排的顶级优化和快排的三种原理的实现及分析】 内含动态演示图

文章目录引言:1.归并排序(MergeSort)2.快速排序的优化(顶级优化)3.快速排序的三种思路的代码实现及分析4.归并排序和快排第3原理的测试引言: 刚刚去回顾了一下递归实现的几个小代码,感觉递归真的是很神奇的一个东西&a…

C# StringBuilder

StringBuilder位于命名空间System.Text下,使用前需引入 using System.Text; StringBuilder的构造 new StringBuilder(string value) StringBuilder sb1 new StringBuilder("www.abc.com"); 利用构造函数创建一个值为“www.abc.com”的StringBuilder…

解决Ubuntu不能上网以及无法远程连接Ubuntu

本文环境 物理机OS: Windows10 专业版 虚拟机平台: VMware Workstation 16 Pro 虚拟机OS: Ubuntu 20.04 相信大家在使用Ubuntu中也有遇到不能上网,我也是尝试了很多的方法都不行,终于找到了一种可行的方法。 步骤…

测试开发应该具备的六大能力

前言 前几天一个前同事找我聊了个问题:一个好的测试开发同学需要具备哪些能力?我思考了一下,给了他如下答复: 从我工作中接触到的测试开发,以及面试测试开发候选人时问的问题,我将自己对测试开发这个岗位…

Chrome插件开发

1.什么是 Chrome 插件 谷歌浏览器插件是一种小型的定制浏览器体验的程序,通过插件可以自定义浏览器的一些行为来适合个人的需求,例如上面的查看服务器状态插件。 在应用商店中下载下来的插件基本上都是以.crx 为文件后缀,该文件其实就是一个…

实验一 课本第三章MongoDB数据库操作3.1-3.7

一、实验目的: 掌握MongoDb的部署 熟悉数据库和集合操作 二、实验环境: 一台运行的计算机 Linux平台 SecureCRT平台 三、实验内容: 3.1MongoDB部署 1.MongonDb部署(windows平台) (1)下载Mongo…

Node环境安装

Node的版本管理工具工具介绍gnvm官网指出特色的地方安装验证配置与使用配置文件内容命令使用nvm安装脚本命令下载请求文件下载验证配置文件使用n安装使用Fast Node Manager (fnm)安装使用工具介绍 本文介绍四款 Node 版本管理工具,用于下载和切换对应的 Node 与 Npm…

【金猿人物展】极盾科技CEO丁杨:让数据安全回归场景、业务和价值

‍丁杨本文由极盾科技CEO丁杨撰写并投递参与“数据猿年度金猿策划活动——2022大数据产业趋势人物榜单及奖项”评选。‍数据智能产业创新服务媒体——聚焦数智 改变商业我们的数据安全,还是以前的安全么?传统数据安全方案依赖网络和数据库安全能力进行围…

2022年安徽建筑八大员(标准员)考试试题及答案

百分百题库提供建筑八大员(标准员)考试试题、建筑八大员(标准员)考试真题、建筑八大员(标准员)证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 22.某设计单位对承接…

Vue2.x + Echarts实现知识图谱数据渲染

代码案例数据写死了&#xff0c;后端Java可使用SpringBootNeo4j查询数据返回。 <template><div id"myChart"></div> </template><style> #myChart {width: 100%;height: 1000px; } </style> <script>export default {nam…

视频号小店是什么?如何开通视频号小店API?

微信视频号于2022年7月正式推出“视频号小店“服务&#xff0c;为商家提供商品信息服务、商品交易&#xff0c;支持商家在视频号运营电商。目前视频号小店有个体工商户或企业资质的商家进行开店&#xff0c;企业店需要企业营业执照认证、个体工商户则需要个体工商户营业执照认证…

Android设计模式详解之模板方法模式

前言 定义&#xff1a;定义一个操作中的算法的框架&#xff0c;而将一些步骤延迟到子类中&#xff0c;使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤&#xff1b; 使用场景&#xff1a; 多个子类有公有的方法&#xff0c;并且逻辑基本相同时&#xff1b;…

Linux环境下挂载外接硬盘

一. 前言 调试ARTIK过程中&#xff0c;首次外接硬盘不会自动挂载&#xff0c;需要将硬盘挂载到系统文件夹下方能读取硬盘内容&#xff0c;因此对于Ubuntu系统下挂载硬盘和开机自动挂载外接硬盘配置的方法进行总结。 二. 挂载外接硬盘步骤 通过命令 fdisk -l 查看硬盘资源信息…

Hive+Spark离线数仓工业项目--ODS层及DWD层构建(2)

ODS层构建&#xff1a;代码导入 目标&#xff1a;实现Python项目代码的导入及配置 实施 Oracle本地驱动目录**&#xff1a;将提供的**instantclient_12_2**目录放入D盘的根目录下 PyHive本地连接配置&#xff1a;将提供的CMU目录放入C盘的根目录下 auto_create_hive_table包…

Java中的Map集合体系

Map集合体系Map集合的概述Map集合体系特点Map集合常用APIMap集合的遍历方式&#xff1a;方式一&#xff1a;键找值方式二&#xff1a;键值对方式三&#xff1a;lambda表达式Map集合的实现类HashMapMap集合的实现类TreeMap集合嵌套Map集合的概述 Map集合概述和使用&#xff1a;…

Java 基础:变量、操作符、代码块和控制流

目录 一、变量&#xff1a;Variables 1、基本数据类型 2、数组 二、操作符/运算符 Operators 三、表达式、语句和代码块 四、程序控制流 一、变量&#xff1a;Variables Java 定义了以下几种变量&#xff1a; 实例变量/成员变量&#xff08;非静态字段&#xff09;&…

Docker+NETCore系列文章(五、推送自制镜像到Docker Hub、阿里云镜像仓库)

推送镜像到Docker Hub镜像仓库 1、访问Docker Hub&#xff1a;https://hub.docker.com/&#xff0c;注册并登陆Docker。 2、使用docker pull hello-world命令拉取hello-workld镜像。 [rootVM-0-6-centos ~]# docker pull hello-world Using default tag: latest latest: Pul…

微服务架构 VS 单体架构

在软件行业&#xff0c;微服务架构是一种重要的发展趋势。这一趋势&#xff0c;不仅仅是对企业内的IT信息系统建设&#xff0c;甚至在企业向数字化转型方面&#xff0c;都有着深远的影响。微服务架构与传统的单体软件架构代表着IT产业处理软件开发方式的一个根本性转变&#xf…

【C++11】异常

&#x1f308;1.C语言传统处理错误的方式 在讲解C的异常机制之前我们先来复习一下传统的处理错误的方式。 传统的错误处理机制&#xff1a; 1.终止程序、如assert , 缺陷&#xff1a;用户难以接受。如发生内存错误&#xff0c;除0错误时就会终止程序。2.返回错误码、缺陷&…

Apache POI导入导出excel文件实战

文章目录前言技术栈1、引入依赖2、导入代码实现3、导出代码实现3.1、准备导出文件模板3.2、导出代码实现4、代码实现解释5、常见问题前言 这两天公司项目业务提出需求&#xff0c;要求在前端上传excel文件然后解析展示&#xff0c;因此写篇文章记录一下实现。 技术栈 spring…