LaMa-Dilated (ONNX)

LaMa-Dilated 是一个基于 LaMaLarge Mask Adversarial)思想、并使用 Dilated(空洞)卷积 作为 backbone 的图像修复(inpainting)模型。

本仓库提供的是 导出为 ONNX 格式 的权重,方便在 C++/Qt 客户端或 其他推理运行时(如 onnxruntime)里直接加载,无需 PyTorch。

原项目:https://github.com/advimman/lama 导出方:PyTorch pytorch 2.5.1 → ONNX(详见下方 Model card)

适用场景

  • 擦除图像中不需要的物体、文字、人物
  • 老照片划痕、污渍修复
  • 任意 mask 区域的语义合理填充

输入 / 输出

类型 名称 形状 dtype 说明
输入 image [1, 3, 512, 512] float32 RGB 图像,已经归一化到模型期望的输入范围(通常是 [-1, 1][0, 1],视导出约定)
输入 mask [1, 1, 512, 512] float32 待修复区域 mask,1 = 待修复,0 = 保留
输出 painted_image [1, 3, 512, 512] float32 修复后的 RGB 图像

处理尺寸

  • 模型训练时假设方形输入 512×512。
  • 非正方形或不同分辨率的输入请自行 resize / pad 到 512×512,再把输出 crop / resize 回原图。

Model card

  • ONNX opset:ai.onnx:20
  • ONNX IR version:9
  • Producer:pytorch 2.5.1
  • 模型文件(仓库总大小 174.48 MB):
    • model.onnx — 主版本(opset ai.onnx:20,IR 9),155.38 KB,推荐使用 onnxruntime ≥ 1.16
    • model.ort-win7-1.14.1.onnx — 兼容 onnxruntime 1.14.1 / Win7 部署 的版本(opset 18,IR 8),155.38 KB。原版 op_type 全部为 ai.onnx 域经典算子 (Add / BN / Concat / Conv / ConvTranspose / Mul / Pad / Relu / Sigmoid / Slice / Sub),仅 metadata 降级,未引入新算子。
    • model.data — 外部权重数据,174.18 MB。当前 model.onnx 实际未声明 external_data 引用,权重已内联于 .onnx 文件;model.data 保留以便 后续导出兼容。

使用示例(onnxruntime, Python)

import numpy as np
import onnxruntime as ort

# 主版本(推荐 ort >= 1.16)
sess = ort.InferenceSession("model.onnx",
                            providers=["CPUExecutionProvider"])

# ort 1.14.1 / Win7 部署专用
sess = ort.InferenceSession("model.ort-win7-1.14.1.onnx",
                            providers=["CPUExecutionProvider"])

image = np.random.rand(1, 3, 512, 512).astype(np.float32)  # 替换为真实图像
mask  = np.zeros((1, 1, 512, 512), dtype=np.float32)      # 1 = 待修复
mask[..., 100:200, 100:200] = 1.0

out = sess.run(["painted_image"],
               {"image": image, "mask": mask})[0]
# out.shape == (1, 3, 512, 512), float32

使用示例(onnxruntime, C++)

#include <onnxruntime_cxx_api.h>
// 构造 OrtEnv / SessionOptions / Session ...
// 读 image, mask 为 float32, 形状 {1,3,512,512} 和 {1,1,512,512}
// 运行 -> painted_image
// 详见 onnxruntime 官方示例。

引用

@inproceedings{suvorov2022lama,
  title     = {Resolution-Robust Large Mask Inpainting with Fourier Convolutions},
  author    = {Suvorov, Roman and Logacheva, Elizaveta and Mashikhin, Anton and Remizova, Anastasia and Ashukha, Arseniy and Silvestrov, Aleksei and Bogomolov, Evgeny and Kohli, Lala and Lempitsky, Victor},
  booktitle = {WACV},
  year      = {2022}
}

License

本仓库权重遵循原 LaMa 项目许可(Apache-2.0)。 任何商用、二次分发请遵守原作者条款:https://github.com/advimman/lama


Uploaded on 2026-07-10 via upload_lama_dilated_ort_win7.py.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support