概述
图像分辨率放大器(Image Resolution Enhancer)能够将像素化的图像放大 4 倍,同时生成照片级真实感的细节。这个神经网络的主干是 生成式对抗网络 (GAN),已根据 OpenImages V4 数据集中的 600,000 张图像对该网络进行了训练。
GAN 基于 SRGAN-tensorflow GitHub 代码库和这篇研究论文。
模型元数据
领域 | 应用 | 行业 | 框架 | 训练数据 | 输入数据格式 |
---|---|---|---|---|---|
视觉 | 超分辨率 | 普通 | TensorFlow | OpenImages V4 | 图像 (RGB/HWC) |
基准
Set5 | 作者的 SRGAN | 此 SRGAN |
---|---|---|
PSNR | 29.40 | 29.56 |
SSIM | 0.85 | 0.85 |
Set14 | 作者的 SRGAN | 此 SRGAN |
---|---|---|
PSNR | 26.02 | 26.25 |
SSIM | 0.74 | 0.72 |
BSD100 | 作者的 SRGAN | 此 SRGAN |
---|---|---|
PSNR | 25.16 | 24.4 |
SSIM | 0.67 | 0.67 |
已根据以下三个数据集评估了这种实现的性能:Set5、Set14 和 BSD100。
尽管本文讨论了 MOS(平均意见得分)作为最有利的指标,但仍评估了 PSNR(峰值信噪比) 和 SSIM(结构相似度指数)指标。从本质上讲,SRGAN 实现用更好的 PSNR 或 SSIM 得分换取了更吸睛的结果。由此生成的输出图像集合将具有更清晰、更逼真的细节。
注意:本文中的 SRGAN 已根据 35 万个 ImageNet 样本进行了训练,而此 SRGAN 已根据 60 万张 OpenImages V4 图片进行了训练。
参考资料
- C.Ledig、L. Theis、F. Huszar、J. Caballero、A. Cunningham、A. Acosta、A. Aitken、A. Tejani、J. Totz、Z. Wang 和 W. Shi,Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network,出自 ArXiv(2017 年)。
- SRGAN-tensorflow(模型代码源)
- tensorflow-SRGAN
许可
组件 | 许可 | 链接 |
---|---|---|
模型 GitHub 代码库 | Apache 2.0 | 许可 |
模型权重 | Apache 2.0 | 许可 |
模型代码(第三方) | MIT | 许可 |
测试资产 | CC BY 2.0 | 样本 README 文件 |
CC0 | 样本 README 文件 |
此模型的可用部署选项
可以使用以下方式来部署此模型:
通过 Dockerhub 进行部署:
docker run -it -p 5000:5000 codait/max-image-resolution-enhancer
在 Red Hat OpenShift 上部署:
遵循本教程中有关 OpenShift Web 控制台或 OpenShift Container Platform CLI 的操作说明,并指定
codait/max-image-resolution-enhancer
作为镜像名称。在 Kubernetes 上部署:
kubectl apply -f https://raw.githubusercontent.com/IBM/MAX-Image-Resolution-Enhancer/master/max-image-resolution-enhancer.yaml
本地部署:遵循 GitHub 上的模型 README文件中的操作说明
用法示例
您可以使用 cURL 来测试或使用此模型
使用 cURL 测试模型
使用 model/predict
端点来加载测试图像(可使用 assets/test_examples/low_resolution
文件夹中的某个测试图像),以便返回高分辨率的输出图像。
在部署模型后,可以在命令行中测试该模型。例如:
curl -F "image=@samples/test_examples/low_resolution/food.png" -XPOST http://localhost:5000/model/predict > food_high_res.png
以上命令会将低分辨率的 food.png
文件发送到该模型,并将高分辨率的输出图像保存到根目录下的 food_high_res.png
文件中。
理想的输入图像是 PNG 文件,其分辨率在 100×100 到 500×500 之间,最好是没有任何捕获后处理和鲜艳的颜色。此模型能够根据像素化图像(低 DPI)来生成细节,但无法校正“模糊”图像。
左:输入图像 (128×80)。右:输出图像 (512×320)
资源与贡献
如果您有兴趣为 Model Asset Exchange 项目做出贡献或有任何疑问,遵循此处的操作说明。
本文翻译自:Image Resolution Enhancer(2019-03-29)