当前位置: 首页 > article >正文

影楼精修-AI衣服祛褶皱算法解析

注:为避免侵权,本文所用图像均为AIGC生成或无版权网站提供;

衣服祛褶皱功能,目前在像素蛋糕、美图云修、百度网盘AI修图、阿里云都有相关的功能支持,它的价值就是将不平整的衣服图像,变得整齐平整,去掉不美观的衣服褶皱等。

功能分析

我们以像素蛋糕为例,来分析衣服祛褶皱功能,像素蛋糕中该功能界面如下:

支持衣服细褶皱和粗褶皱分别祛除两个参数调节+整体程度参数调节;

效果举例如下:

 

算法方案

对于衣服祛褶皱功能,目前公开的算法资料:

Paper: ABPN: Adaptive Blend Pyramid Network for Real-Time Local Retouching of Ultra High-Resolution Photo

Code:https://www.modelscope.cn/models/iic/cv_unet_skin-retouching/

但这份开源代码是做人像美肤的代码,是论文算法的一个应用,并未提供衣服祛褶皱相关的模型;

算法流程图如下:

  • 自适应混合金字塔网络(ABPN),主要由上下文感知局部修饰层(LRL)和自适应混合金字塔层(BPL)组成。

  • LRL采用多任务架构,包括共享编码器、掩码预测分支(MPB)和局部修饰分支(LRB)。MPB通过跳连接和软掩码引导特征融合,LRB利用门控卷积(GConv)和局部注意力模块(LAM)实现高细节保真度的局部修饰。

  • BPL基于混合层概念,设计了自适应混合模块(ABM)及其反向版本(R-ABM),通过逐步上采样和细化混合层,将低分辨率结果扩展到原始尺寸。ABM通过可学习的参数和Hadamard积实现灵活的图像转换,R-ABM则用于生成混合层。

在论文中,作者也对比了在PS中使用中性灰+Softlight的效果,如下图所示:

在对比中,Softlight的效果较差,论文方法确实获得了不错的效果。

该论文方案可能也为当前市面上主流的几家提供了一些技术方案。

但是,个人看来,这个算法还是有一些提升空间的,比如:

1.网络输入图像可以处理5000×5000左右的大图,如果是更大分辨率的图,如何保证最终原图清晰度的信息问题,存在一定的疑问。尤其是影楼修图领域,5000×5000算是小图了。

2.资源消耗,网络输入分辨率越大,对应资源消耗越大:

针对上述问题,个人优化方案:

方案一

1.使用上述方案,但处理最小分辨率512×512,保证较小的资源消耗和较快的性能;假设原图S,resize小图为S_small上述方案的效果图为D;

2.根据D和S_small进行中性灰图层计算,注意,这里需要参考线性光图层混合,不可使用柔光图层混合,论文中对比Softlight效果,个人觉得是有问题的,可能做算法的小伙伴并不擅长PS修图。最终得到中性灰图层蒙版D_mask;

3.将D_mask还原回原图大小,得到图D_hd;

4.将D_hd与原图S做中性灰图层混合,得到最终衣服祛褶皱效果D;

举例如下:

方案二

1.构建衣服祛褶皱中性灰蒙版网络,输入512×512小图+对应的衣服区域mask,输出中性灰蒙版D_mask;

2.将D_mask还原回原图大小,得到图D_hd;

3.将D_hd与原图S做中性灰图层混合,得到最终衣服祛褶皱效果D;

这个方案最大的优势是可以将原图与效果图完全解耦,对于大分辨率的图,中性灰图层混合并不会影响原图本身其他区域的清晰度,同时,网络推理性能也可以得到兼顾;

上述方案仅是本人的一些个人见解,用来抛砖引玉,欢迎与大家沟通交流;

 

http://www.lryc.cn/news/2403111.html

相关文章:

  • Day46 Python打卡训练营
  • 信号电压高,传输稳定性变强,但是传输速率下降?
  • linux安全加固(非常详细)
  • 关于事务的简介
  • qt控制台程序与qt窗口程序在读取数据库中文字段的差异!!巨坑
  • 动手学深度学习12.7. 参数服务器-笔记练习(PyTorch)
  • 告别数据泥沼,拥抱智能中枢:King’s四位一体重塑科研生产力
  • 智绅科技 —— 智慧养老 + 数字健康,构筑银发时代安全防护网
  • Code Composer Studio CCS 工程设置,如何设置h文件查找路径?
  • Qt生成日志与以及捕获崩溃文件(mingw64位,winDbg)————附带详细解说
  • web前端开发如何适配各分辨率
  • 本机无法远程别的计算机的方法
  • 智能手表健康监测系统的PSRAM存储芯片CSS6404LS-LI—高带宽、耐高温、微尺寸的三重突破
  • 蓝桥杯国赛题2022
  • Pycharm中添加不了新建的Conda环境(此篇专门给Daidai写的)
  • 如何选择专业数据可视化开发工具?为您拆解捷码全功能和落地指南!
  • 关于如何使用VScode编译下载keil工程的步骤演示
  • 微信小程序动态效果实战指南:从悬浮云朵到丝滑列表加载
  • Redis底层数据结构之深入理解跳表(2)
  • 大模型编程助手-Cline
  • [蓝桥杯]兰顿蚂蚁
  • 使用 Python 构建并调用 ComfyUI 图像生成 API:完整实战指南
  • 嵌入式学习笔记-freeRTOS taskENTER_CRITICAL(_FROM_ISR)跟taskEXIT_CRITICAL(_FROM_ISR)函数解析
  • Unity基础-数学向量
  • 【华为云Astro-服务编排】服务编排中图元的使用与配置
  • 1panel面板中部署SpringBoot和Vue前后端分离系统 【图文教程】
  • C++.OpenGL (7/64)摄像机(Camera)
  • 使用xdocreport导出word
  • 青少年编程与数学 01-011 系统软件简介 05 macOS操作系统
  • Python打卡训练营学习记录Day43