ONNX 模型库
返回模型

说明文档

NAFNet 房地产图像增强

一个经过微调的 NAFNet 模型,用于增强房地产摄影。基于 577 组前后对比图像对进行训练,以改善光照、色彩和整体图像质量。

模型详情

指标 数值
架构 NAFNet (width=32)
参数量 2920 万
模型大小 111 MB (FP32) / 56 MB (FP16)
训练时间 5 小时
训练图像 577 对
最终 PSNR 21.69 dB
最终 SSIM 0.8968

可用格式

格式 文件 大小 使用场景
PyTorch nafnet_realestate.pth 117 MB 训练、微调
ONNX nafnet_realestate.onnx 117 MB 跨平台部署
Core ML 从 ONNX 转换 ~56 MB iOS/macOS 应用

性能基准测试

在 100 张高分辨率房地产图像(平均 7.25 兆像素)上测试:

耗时

指标 数值
平均每张图像 4.0 秒
吞吐量 0.25 张图像/秒
兆像素/秒 1.81 MP/s

内存使用

资源 使用量
RAM 581 MB 总计
GPU 显存 8.3 GB 峰值

按分辨率扩展

分辨率 RAM GPU 时间
1080p (2.1 MP) 150-250 MB ~2.5 GB ~1.2s
1440p (3.7 MP) 250-400 MB ~4.3 GB ~2.0s
3K (7.3 MP) 500-800 MB ~8.3 GB ~4.0s
4K (8.3 MP) 600-900 MB ~9.5 GB ~4.6s

使用方法

PyTorch

import torch
from PIL import Image
import numpy as np

# 加载模型
model = NAFNet(img_channel=3, width=32, middle_blk_num=12,
               enc_blk_nums=[2, 2, 4, 8], dec_blk_nums=[2, 2, 2, 2])
checkpoint = torch.load("nafnet_realestate.pth", map_location="cpu")
model.load_state_dict(checkpoint["params"])
model.eval()

# 处理图像
img = Image.open("input.jpg")
img_tensor = torch.from_numpy(np.array(img)).permute(2, 0, 1).unsqueeze(0).float() / 255.0

with torch.no_grad():
    output = model(img_tensor)

output_img = (output.squeeze(0).permute(1, 2, 0).numpy() * 255).astype(np.uint8)
Image.fromarray(output_img).save("enhanced.jpg")

ONNX Runtime

import onnxruntime as ort
import numpy as np
from PIL import Image

sess = ort.InferenceSession("nafnet_realestate.onnx")
img = np.array(Image.open("input.jpg")).astype(np.float32) / 255.0
img = img.transpose(2, 0, 1)[np.newaxis, ...]

output = sess.run(None, {"input": img})[0]
output_img = (output[0].transpose(1, 2, 0) * 255).astype(np.uint8)
Image.fromarray(output_img).save("enhanced.jpg")

移动端部署 (iOS)

所有分辨率都适合典型的移动端内存预算(3-4 GB):

  1. 在 macOS 上将 ONNX 转换为 Core ML:
pip install coremltools
python convert_on_mac.py
  1. .mlpackage 添加到 Xcode 项目
  2. 使用 Vision 框架进行推理

训练

  • 框架:BasicSR + PyTorch
  • 基础模型:NAFNet-SIDD-width32(在去噪任务上预训练)
  • 损失函数:L1 + 感知损失 (VGG19)
  • 优化器:AdamW (lr=1e-3)
  • 迭代次数:12,000

许可证

Apache 2.0

引用

@article{chen2022simple,
  title={Simple Baselines for Image Restoration},
  author={Chen, Liangyu and Chu, Xiaojie and Zhang, Xiangyu and Sun, Jian},
  journal={arXiv preprint arXiv:2204.04676},
  year={2022}
}

链接

SebRincon/nafnet-realestate

作者 SebRincon

image-to-image pytorch
↓ 0 ♥ 0

创建时间: 2025-12-13 20:35:33+00:00

更新时间: 2025-12-14 16:13:09+00:00

在 Hugging Face 上查看

文件 (123)

.gitattributes
README.md
eval/colorft_3h_latest_val_triptychs/0000_0000.jpg
eval/colorft_3h_latest_val_triptychs/0001_0001.jpg
eval/colorft_3h_latest_val_triptychs/0002_0002.jpg
eval/colorft_3h_latest_val_triptychs/0003_0003.jpg
eval/colorft_3h_latest_val_triptychs/0004_0004.jpg
eval/colorft_3h_latest_val_triptychs/0005_0005.jpg
eval/colorft_3h_latest_val_triptychs/0006_0006.jpg
eval/colorft_3h_latest_val_triptychs/0007_0007.jpg
eval/colorft_3h_latest_val_triptychs/0008_0008.jpg
eval/colorft_3h_latest_val_triptychs/0009_0009.jpg
eval/colorft_3h_latest_val_triptychs/0010_0010.jpg
eval/colorft_3h_latest_val_triptychs/0011_0011.jpg
eval/colorft_3h_latest_val_triptychs/0012_0012.jpg
eval/colorft_3h_latest_val_triptychs/0013_0013.jpg
eval/colorft_3h_latest_val_triptychs/0014_0014.jpg
eval/colorft_3h_latest_val_triptychs/0015_0015.jpg
eval/colorft_3h_latest_val_triptychs/0016_0016.jpg
eval/colorft_3h_latest_val_triptychs/0017_0017.jpg
eval/colorft_3h_latest_val_triptychs/0018_0018.jpg
eval/colorft_3h_latest_val_triptychs/0019_0019.jpg
eval/colorft_3h_latest_val_triptychs/0020_0020.jpg
eval/colorft_3h_latest_val_triptychs/0021_0021.jpg
eval/colorft_3h_latest_val_triptychs/0022_0022.jpg
eval/colorft_3h_latest_val_triptychs/0023_0023.jpg
eval/colorft_3h_latest_val_triptychs/0024_0024.jpg
eval/colorft_3h_latest_val_triptychs/0025_0025.jpg
eval/colorft_3h_latest_val_triptychs/0026_0026.jpg
eval/colorft_3h_latest_val_triptychs/0027_0027.jpg
eval/colorft_3h_latest_val_triptychs/0028_0028.jpg
eval/colorft_3h_latest_val_triptychs/0029_0029.jpg
eval/colorft_3h_latest_val_triptychs/0030_0030.jpg
eval/colorft_3h_latest_val_triptychs/0031_0031.jpg
eval/colorft_3h_latest_val_triptychs/0032_0032.jpg
eval/colorft_3h_latest_val_triptychs/0033_0033.jpg
eval/colorft_3h_latest_val_triptychs/0034_0034.jpg
eval/colorft_3h_latest_val_triptychs/0035_0035.jpg
eval/colorft_3h_latest_val_triptychs/0036_0036.jpg
eval/colorft_3h_latest_val_triptychs/0037_0037.jpg
eval/colorft_3h_latest_val_triptychs/0038_0038.jpg
eval/colorft_3h_latest_val_triptychs/0039_0039.jpg
eval/colorft_3h_latest_val_triptychs/0040_0040.jpg
eval/colorft_3h_latest_val_triptychs/0041_0041.jpg
eval/colorft_3h_latest_val_triptychs/0042_0042.jpg
eval/colorft_3h_latest_val_triptychs/0043_0043.jpg
eval/colorft_3h_latest_val_triptychs/0044_0044.jpg
eval/colorft_3h_latest_val_triptychs/0045_0045.jpg
eval/colorft_3h_latest_val_triptychs/0046_0046.jpg
eval/colorft_3h_latest_val_triptychs/0047_0047.jpg
eval/colorft_3h_latest_val_triptychs/0048_0048.jpg
eval/colorft_3h_latest_val_triptychs/0049_0049.jpg
eval/colorft_3h_latest_val_triptychs/0050_0050.jpg
eval/colorft_3h_latest_val_triptychs/0051_0051.jpg
eval/colorft_3h_latest_val_triptychs/0052_0052.jpg
eval/colorft_3h_latest_val_triptychs/0053_0053.jpg
eval/colorft_3h_latest_val_triptychs/0054_0054.jpg
eval/colorft_3h_latest_val_triptychs/0055_0055.jpg
eval/colorft_3h_latest_val_triptychs/0056_0056.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0000_0000.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0001_0001.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0002_0002.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0003_0003.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0004_0004.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0005_0005.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0006_0006.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0007_0007.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0008_0008.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0009_0009.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0010_0010.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0011_0011.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0012_0012.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0013_0013.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0014_0014.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0015_0015.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0016_0016.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0017_0017.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0018_0018.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0019_0019.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0020_0020.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0021_0021.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0022_0022.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0023_0023.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0024_0024.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0025_0025.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0026_0026.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0027_0027.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0028_0028.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0029_0029.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0030_0030.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0031_0031.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0032_0032.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0033_0033.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0034_0034.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0035_0035.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0036_0036.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0037_0037.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0038_0038.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0039_0039.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0040_0040.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0041_0041.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0042_0042.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0043_0043.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0044_0044.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0045_0045.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0046_0046.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0047_0047.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0048_0048.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0049_0049.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0050_0050.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0051_0051.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0052_0052.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0053_0053.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0054_0054.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0055_0055.jpg
eval/quadtych_colorft_3h_latest_vs_baseline_val/0056_0056.jpg
nafnet_realestate.onnx ONNX
nafnet_realestate.pth
nafnet_realestate_colorft_3h.pth
nafnet_realestate_colorft_3h_fp16.onnx ONNX
nafnet_realestate_colorft_3h_fp16.onnx.data
nafnet_realestate_colorft_3h_fp32.onnx ONNX
nafnet_realestate_colorft_3h_fp32.onnx.data