Lama Cleaner 图像修复工具 污点擦除研究笔记(去水印有奇效)

《Lama Cleaner 图像修复工具 污点擦除研究笔记(去水印有奇效)》
//安装 Lama Cleaner 最简单的方法是通过(支持 python 3.7 ~ 3.10)安装pip
#pip3 install lama-cleaner

说明3.7以上的版本api接口比较复杂
3.6以下的api接口刚刚好!!不要问我是怎么知道的🤣
pip3.7 install lama-cleaner
pip3.6 install lama-cleaner

//因为是指定版本安装的,需要重链路径
ln -s /usr/local/python3.7/bin/lama-cleaner  /usr/local/bin/lama-cleaner

//gpu模式
lama-cleaner --model=lama --device=cuda --CUDA_VISIBLE_DEVICES=0 --port=8080 --host='192.168.0.80'

//cpu模式
lama-cleaner --model=lama --device=cpu --port=8080

–Model详解

//位置:/root/.cache/torch/hub/checkpoints
LaMa :标准的擦除模式
LDM: 具有潜在扩散模型的高分辨率图像合成
     可能得到比 LaMa 更好更详细的结果
     比 LaMa 模型慢很多(3080 12it/s)
     需要更多 GPU 内存(512x512 5.8G)
ZITS: 增量变压器结构增强图像修复与掩蔽位置编码
MAT: 用于大孔图像修复的 Mask-Aware
FcF: 更好的结构和纹理生成,只支持固定大小(512x512)的输入
Manga: Manga 模型比 LaMa 模型在高分辨率的漫画图像上效果更好
Stable Diffusion: 您可以使用 Stable Diffusion 根据文本提示替换图片中的对象。
                  擦除对象 (例图中的小女生背后的绿衣妇女就是用这个方式擦除的)
Paint by Example:转入一个新的物件(图像),与擦除相反
InstructPix2Pix:类似于滤镜,1.把鸭子变成蓝色,梵高的风格,2.让她的头发变黑,3.冬天变成为夏天
《Lama Cleaner 图像修复工具 污点擦除研究笔记(去水印有奇效)》

Api调用

官网:https://lama-cleaner-docs.vercel.app/install/try_online
访问:http://192.168.0.80:8080/

//后台运行 lama-cleaner --model=lama --device=cuda --port=8080 --host='192.168.0.80' > /dev/null 2>&1 &
调用:
post:http://192.168.0.80:8080/inpaint
form-data:
image:源图
mask:黑底白印(图片)
ldmSteps:50  //精度
ldmSampler:plms  //模式
hdStrategy:Resize   //拉伸
    Resize:将图像的长边调整为特定的大小(保持比例),然后对调整后的图像进行修补。
    original:使用图片的原始分辨率,适用于2K以下的图片尺寸。如果在高分辨率图像上没有得到很好的结果,请尝试调整大小策略。
    Crop:从原始图像中裁剪掩蔽区域以进行修补,并将结果粘贴回来。主要是由于高分辨率图像的性能和内存原因。

hdStrategyCropMargin:128  //边界
hdStrategyCropTrigerSize:2048 //限制
hdStrategyResizeLimit:2048 //限制
sizeLimit:1587 //限制

引入其他插件:RealESRGAN

RealESRGAN:RealESRGAN是一个做图像超分辨率的库
#pip3.7 install realesrgan
//启用 RealESRGAN 的命令行参数:
--enable-realesrgan --realesrgan-model RealESRGAN_x4plus --realesrgan-device cuda
可用模型:
RealESRGAN_x4plus:用于一般场景
RealESRGAN_x4plus_anime_6B:针对模型尺寸小得多的动漫图像进行了优化。
realesr-general-x4v3:用于一般场景的微型模型

lama-cleaner --model=lama --device=cuda --port=8080 --host="192.168.0.80" --enable-realesrgan --realesrgan-model RealESRGAN_x4plus --realesrgan-device cuda & > /dev/null 2>&1 
《Lama Cleaner 图像修复工具 污点擦除研究笔记(去水印有奇效)》

引入其他插件:GFPGAN

GFPGAN(在新标签页中打开)是一个做人脸修复的库。
#pip3 install gfpgan
//启用 GFPGAN 的命令行参数:
--enable-gfpgan --gfpgan-device cuda
《Lama Cleaner 图像修复工具 污点擦除研究笔记(去水印有奇效)》

所有命令行参数

usage: main.py [-h] [--host HOST] [--port PORT] [--config-installer] [--load-installer-config] [--installer-config INSTALLER_CONFIG] [--model {lama,ldm,zits,mat,fcf,sd1.5,cv2,manga,sd2,paint_by_example,instruct_pix2pix}] [--no-half]
               [--cpu-offload] [--disable-nsfw] [--sd-cpu-textencoder] [--local-files-only] [--enable-xformers] [--device {cuda,cpu,mps}] [--gui] [--no-gui-auto-close] [--gui-size GUI_SIZE GUI_SIZE] [--input INPUT]
               [--output-dir OUTPUT_DIR] [--model-dir MODEL_DIR] [--disable-model-switch]
 
optional arguments:
  -h, --help            显示此帮助消息并退出
  --host HOST
  --port PORT
  --config-installer    打开配置网页,主要用于windows安装程序(默认值:False)
  --load-installer-config
                        从安装程序配置文件加载所有cmd参数(默认值:False)
  --installer-config INSTALLER_CONFIG
                        windows安装程序的配置文件(默认值:无)
  --model {lama,ldm,zits,mat,fcf,sd1.5,cv2,manga,sd2,paint_by_example,instruct_pix2pix}
  --no-half             使用全精度模型。如果您生成的结果总是黑色或绿色,请使用此参数。(sd/paint_by_exmaple)(默认:False)
  --cpu-offload         卸载所有型号的CPU,显著降低vRAM使用量。(sd/paint_by_example)(默认:False)
  --disable-nsfw        禁用NSFW检查器。(sd/paint_by_example)(默认:False)
  --sd-cpu-textencoder  在CPU上运行稳定的广播文本编码器模型,以节省GPU内存。(默认为False)
  --local-files-only    仅使用本地文件,不连接到 Hugging Face 服务器。 (sd/paint_by_example)(默认值:False)
  --enable-xformers     要求已安装 xformers 包。 请参阅:https://github.com/facebookresearch/xformers (sd/paint_by_example)(默认值:False)
  --device {cuda,cpu,mps}
  --gui                 将 Lama Cleaner 作为桌面应用程序启动(默认值:False)
  --no-gui-auto-close   防止 GUI 窗口关闭后后端自动关闭。 (默认值:假)
  --gui-size GUI_SIZE GUI_SIZE
                        S设置 GUI 的窗口大小(默认值:[1600, 1000])
  --input INPUT         如果输入是图片,默认加载。 如果输入是目录,则可以在文件管理器中浏览并选择图像。 (默认值:无)
  --output-dir 输出目录
                         结果图像将自动保存到输出目录,无需确认。 (默认值:无)
  --model-dir MODEL_DIR
                         模型下载目录(通过设置XDG_CACHE_HOME环境变量),默认模型下载到~/.cache(默认:/root/.cache)
  --disable-model-switch
                        在前端禁用模型开关(默认值:False)

以系统方式启动(启动服务)

cat>/lib/systemd/system/lama.service<<EOF
[Unit]
Description=lama cleaner

[Service]
Type=forking
PIDFile=/usr/local/lama.pid
ExecStart=/usr/local/bin/lama-cleaner --model=lama --device=cpu --port=8081 --host="192.168.0.110"
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=false
TimeoutSec=0

[Install]
WantedBy=multi-user.target
EOF

  chmod 745 /lib/systemd/system/lama.service
  chmod 745 /root/start_lama_cleaner.sh
  systemctl daemon-reload
  systemctl enable lama.service
  systemctl restart lama.service
点赞

发表评论

邮箱地址不会被公开。 必填项已用*标注