社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

python抠图(去水印)开源库lama-cleaner

小白学视觉 • 1 月前 • 84 次点击  
点击上方小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达

1. 关于 Lama Cleaner
Lama Cleaner 是由 SOTA AI 模型提供支持的免费开源图像修复工具。可以从图片中移除任何不需要的物体、缺陷和人,或者擦除并替换(powered by stable diffusion)图片上的任何东西。

特征:
完全免费开源,完全自托管,支持CPU & GPU & M1/2
Windows 一键安装程序
本机 macOS 应用程序
多种SOTA AI模型
擦除模型:LaMa/LDM/ZITS/MAT/FcF/Manga
擦除和替换模型:稳定扩散/绘制示例
后期处理插件:
RemoveBG:删除图像背景
RealESRGAN:超分辨率
GFPGAN:面部恢复
RestoreFormer:面部修复
分割任何东西:准确快速的交互式对象分割
文件管理器:方便地浏览您的图片并将它们直接保存到输出目录。

插件
在图像清洗的后处理中,除了擦除之外,还经常使用面部修复或超分辨率等算法。现在您可以直接在 Lama Cleaner 中使用它们。启动Lama Cleaner服务时,您可以通过命令行参数启用插件。启用的插件将在左上角显示。

2. 擦除模型
Lama Cleaner默认擦除模型为LaMa,开源地址为:https://github.com/advimman/lama 。
LaMa 图像修复,采用傅立叶卷积的分辨率鲁棒大型掩模修复,WACV 2022
现代图像修复系统尽管取得了显着的进步,但常常难以应对大面积缺失区域、复杂的几何结构和高分辨率图像。我们发现造成这种情况的主要原因之一是修复网络和损失函数都缺乏有效的感受野。为了缓解这个问题,我们提出了一种称为大掩模修复(LaMa)的新方法。LaMa 基于:
一种新的修复网络架构,使用快速傅立叶卷积,具有图像范围的感受野
高感受野感知损失;
大型训练掩码(masks),释放前两个组件的潜力。
我们的修复网络提高了一系列数据集的最新技术,即使在具有挑战性的场景(例如完成周期性结构)中也能实现出色的性能。我们的模型出人意料地很好地概括了比训练时所见的分辨率更高的分辨率,并且以比竞争基准更低的参数和计算成本实现了这一点。

其中,模型中FFC结构如下:

3. 安装 Lama Cleaner
很遗憾,我的电脑没有GPU,具体环境如下:
Windows 10专业版
处理器:Intel® Core™ i5-9400 CPU @ 2.90GHz 2.90 GHz
内存(RAM):32.0 GB(31.8 GB可用)
显卡:Intel® UHD Graphics 630
安装Lama Cleaner最简单的方法是通过pip安装(支持python 3.7 ~ 3.10)。
关于GPU安装,官方说明如下:

安装完成后,可以通过lama-cleaner命令启动服务器,第一次使用时会下载模型文件(建议确保网络畅通)。
GPU启动命令如下:lama-cleaner --model=lama --device=cuda --port=8080

4. 启动

启动命令如下:
工具的使用是基于浏览器的,我安装在本机,使用默认端口8080,打开浏览器使用如下地址:http://127.0.0.1:8080。

5. 去水印抠图操作

如下图所示,从左到右操作,中间图分两块涂抹需要清除的标记,最后按下方的橡皮檫,形成最右边的图像。

其中,标记多块需要清除点时,需要使用手动修复模式。默认情况下,Lama Cleaner 将在绘制笔划后运行修复。您可以在设置中启用手动修复模式。

6. 其他擦除模型对比举例

LDM 与 LaMa 模型擦除效果对比:


👍 可能得到比 LaMa 更好、更详细的结果
👍 通过调整步骤可以达到时间和质量的平衡
😐 比 LaMa 模型慢得多(3080 12it/s)
😐 需要更多GPU内存(512x512 5.8G)

7. 最后

如果要取得好的图像效果,是需要GPU的。

下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/177263
 
84 次点击