2021抖音和快手APP图像修复背后的核心技术,毫无ps痕迹(一)

简介: 2021抖音和快手APP图像修复背后的核心技术,毫无ps痕迹(一)

本文看完,相信你会对抖音和快手APP中使用的图像修复技术有一番了解和掌握。


大家好,我是对白。


由于CNN、GAN、Transformer等模型在CV与NLP领域都实现了很好的跨界,最近非常火热的Prompt也开始在多模态领域中有所应用了,因此我们有必要借鉴一些CV领域中Paper的idea,以拓宽自己的视野,那么今天就给大家分享一下图像修复(Image Inpainting)领域中值得一读的六篇顶会论文,希望能给大家带来一些不一样的灵感。


图像修复算法合集



20160906095841144.png


图像修复经典算法对比


06194319f19427a2791af6767383dbed.png

2dbbc95ec9d445d537a80c3d03f05125.png


图像修复经典论文


论文 1. Partial-conv



**P-conv:**Image Inpainting for Irregular Holes Using Partial Convolutions


Authors:NVIDIA Corporation ECCV 2018


优点:


1. 可以很好地处理任何形状、大小、位置或距离图像边界任何距离的空白。


2. 以前的深度学习方法主要集中在位于图像中心附近的矩形区域,并且通常需要依赖成本很高的后期处理。


3. 此模型能够很好地处理越来越大的空白区域。


**解决问题:**artifacts、color discrepancy、blurriness.


**适用于:**irregular masks、rectangular masks.


解决办法:将有效元素(unmask pixels)和缺失像素(mask pixels)区别对待,卷积层仅对满足条件有效像素进行卷积和规范操作,然后在根据Mask更新规则对Mask进行自动更新,直至 Mask中所有值均为 1。


网络结构:


**输入大小:**512×512 image + 512×512 mask


采用 U-net 的网络结构( 《 Globally and locally consistent image completion 》 ),将所有的卷积层替换为部分卷积层( partial convolutional layers ), 同时在decoder 部分上采样使用 nearest neighbor up-sampling,采用Skips links 连接encoder 中的feature map。在最后一个部分卷积层将输入图像(带缺失部分)和网络生成的图像结合,将网络生成的图像非缺失部分全部替换为输入图像的非缺失部分。


Partial Convolutional Layer (部分卷积):


1. Partial convolution operation


令 W 为卷积核的权重,X为当前卷积(滑动)窗口对应的特征(像素)值,M 为X相对应的二进制Mask。b为相对应的偏置值。在图像每个位置部分卷积。通过Mask和re-normalization 来保证卷积操作仅针对有效像素。


d8b9939f00ebf569045efa3c1af6dcef.png97a69ae4a920489dcea17d6709afa8b6.png




2. Mask update function


在进行部分卷积之后,进行Mask 的更新。


更新规则为:如果卷积(滑动)窗口对应的 Mask 值至少有一个对应的1,那么就更新卷积后对应 位置 Mask 为 1


mask 更新规则:


0b8b0bb9f7c0c75eba5356f2a06b6c75.png


待解决的问题:


1.Mask 更新策略为 hard-attention


2.无法解决user-guided image 问题(加入scratch)


3.invalid pixels 随着网络深度增加disappear


4.Channel 共享,可以看做 un-learnable single-channel feature hard-gating


论文 2. Deepfill V1



Deepfill V1:Generative Image Inpainting with Contextual Attention


Authors:JiaHui Yu CVPR 2018


**Coarse network:**一个编码器与解码器,在中间层运用了空洞卷积增大感受野


a6e61d5365d3907b898928becf856597.png


论文 3. Deepfill V2- Gated Conv



Deepfill V2: Free-Form Image Inpainting with Gated Convolution


Authors:Jiahui Yu, Zhe Lin, Jimei Yang, Xiaohui Shen, Xin Lu, Thomas Huang, ICCV 2019


Insight Partial Conv 回顾:


164a30e8d058d3ca8b686029c1e220e9.png


Partial Conv 缺点:


P-Conv 中Mask 更新的不合理:无论像素多少,只要存在至少一个,就将mask 设置为1;没有满足用户的意愿来进行修复(也就是没有使用 guidance);部分卷积网络的mask 在较深的层逐渐消失,并且消失的规则为只要存在一个像素为有效像素,则设置当前所对应的Mask 为1。


适用于:


irregular masks、rectangular masks、user sketch guidance.


解决办法:


提出gated convolution 来解决将所有元素都视为有效像素这一问题,通过在所有层的每个空间位置为每个通道提供一个可学习的动态特征选择机制,来扩展部分卷积。


Gated convolution :


门控卷积不是采用 hard-gating mask 的 Mask 更新规则,而是采用可学习的soft mask 更新规则。


51f5dcf7264d0266cffc59d4a1450f61.png


Gated convolution (门控卷积)


学习了每个通道和每个空间位置的动态特征选择机制。中间门控值的可视化显示,它不仅能根据背景、mask 、草图来选择特征,还能考虑到某些通道的语义分割 。即使在深层,门控卷积也会学习在不同的通道中示突出显示 mask区域和草图信息,以更好地生成修复结果。


06f9c0074b83917eab0f7d18a2134071.png


网络结构:


  • 采用了简单的encoder-decoder network,而不是采用类似 partial conv 的U-net 结构。并且作者发现partial conv 中使用的skip connections 对于本论文提出的方法并没有帮助。这主要是因为对于Mask 区域的中心,这些跳跃连接的输入几乎为零,因此无法将详细的颜色或纹理信息传播到该区域的解码器。对于Hole 边界,由于编码器结构配备了门控卷积,足以产生无缝的结果。


  • 作者将所有的门控卷积替代了传统的卷积。这一做法存在的问题就是引入了额外的参数,为了保持与baseline model 相同的效率,作者将模型的宽度缩小了 25%,在数量和质量上都没有发现明显的性能下降。


b66321905ff47e625ca1680afe1bdbe2.png


论文4. Generative Image Inpainting with Adversarial Edge Learning



源码:


https://github.com/knazeri/edge-connect


创新点:


1.一种边缘生成器,给定已知的边缘和图像的灰度像素值,能够在缺失区域产生边缘。


2.一个图像补全网络,将缺失区域的边缘与剩余图像的颜色和纹理信息结合起来,以填充缺失区


域。


3.一个端到端可训练的网络,结合了边缘生成和图像补全,以填补缺失区域的细节。


a0b9549584e228c7866f4f41ad9d5587.png


边缘生成网络 + 图像补全网络


网络结构:


Edge generator 边缘生成网络:GAN 根据各种信息生成具有指导作用的 EdgeMap


d8878f04f10d6d9dd3d39f94a7d2f431.png07902ff7ecf46b43ba6c5e220fd9491c.png


结果:


能够进行图像拼接、移除和编辑。


98620c89e67ccc8910283a193d621570.png

相关文章
|
5月前
|
前端开发 Java 数据安全/隐私保护
计算机Java项目|基于Andriod技术“厕ce”APP
计算机Java项目|基于Andriod技术“厕ce”APP
|
10天前
|
机器学习/深度学习 监控 安全
量化合约对冲策略交易app系统开发技术规则
量化合约对冲策略交易APP系统开发技术规则涵盖系统架构设计、量化策略实现、交易管理、风险管理、用户界面设计及性能优化等方面。通过模块化设计、分布式架构、数据持久化、策略开发、算法交易、回测优化、订单管理、持仓监控、资金安全、风险控制、实时监控、安全审计、界面设计、反馈机制、多语言支持、响应速度、资源优化和兼容性等措施,确保系统的稳定、安全、高效和易用。
|
2月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
27天前
|
NoSQL PHP Redis
布谷语音app源码服务器环境配置及技术开发语言
布谷语音app源码服务器环境配置及技术语言研发。。
|
6月前
|
开发框架 前端开发 Android开发
专刊:随着技术进步,未来在线生成App将有更多可能性,为移动应用开发带来便利
【4月更文挑战第27天】在数字化时代,移动App变得不可或缺,而在线生成App的技术正逐渐兴起,为开发者提供快捷创建移动应用的途径。本文探讨了网页到App的转变过程,介绍了WebView嵌入、混合式开发框架和云端打包技术等方法,以及在线生成App的步骤、优势和挑战。虽然存在性能和功能限制,但随着技术进步,未来在线生成App将有更多可能性,为移动应用开发带来便利。
73 2
|
3月前
|
运维 Kubernetes 容器
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
|
4月前
|
存储 安全 数据安全/隐私保护
移动APP安全加固技术深度解析
【7月更文挑战第12天】移动APP安全加固技术是保障移动应用安全的重要手段。通过对Android和iOS两大主流平台的安全加固,可以有效防止逆向分析、动态调试、数据篡改等安全威胁。在实际应用中,我们需要结合静态层面、动态层面和数据层面的加固技术,全方位地提升APP的安全性。同时,随着技术的不断发展,我们也需要不断关注新的安全威胁和加固技术,确保移动应用的安全性和稳定性。
|
4月前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
|
5月前
|
存储 安全 前端开发
APP管理后台OSS技术改造
旨在记录之前使用的上传文件是放在服务器的现在改成了oss更加高效管理
|
4月前
|
小程序 API
跨端技术问题之哪些形态可以通过getApp()获取全局App实例
跨端技术问题之哪些形态可以通过getApp()获取全局App实例

热门文章

最新文章

下一篇
无影云桌面