提高AI图像放大质量

我想使用AI技术提升图像分辨率,但Python支持的四种超分辨率模型的效果远不如在线网站。例如,这是原始图像:

enter image description here

使用以下代码的表现最佳的模型(EDSR)得到的结果如下:

sr = dnn_superres.DnnSuperResImpl_create()image = cv2.imread('Images/exported_image_76322.png')path = "EDSR_x3.pb"sr.readModel(path)sr.setModel("edsr", 3)result = sr.upsample(image)cv2.imwrite('ai_upscale.png', result)display_image_in_actual_size('ai_upscale.png')

enter image description here

像zyro.com这样的网站产生的效果要好得多:

enter image description here

我怎样才能提高我的结果,使其达到AI图像放大网站的质量水平?我希望自动化处理数百张图像的放大,因此仅仅使用网站是不现实的。


回答:

不同的选项:

  1. 如果你有原始高分辨率图像,你可以使用在线模型并在你的高分辨率图像上进行微调(即继续训练)。这是最佳解决方案,因为你的模型将在正确的数据分布上进行训练。

  2. 如果你无法访问原始高分辨率图像,但你认为zyro的质量足以满足你的需求,你可以使用zyro创建一个数据集,并在该数据集上对现有的超分辨率模型进行微调。

  3. 如果你有不属于你数据集的高分辨率图像,你可以降低它们的分辨率,并训练你的模型来恢复高分辨率,然后看看它是否能很好地泛化到你的数据集上。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

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