如何跑通基于AOD-NET的去雾算法

Posted 羊斯基12123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何跑通基于AOD-NET的去雾算法相关的知识,希望对你有一定的参考价值。

如何跑通基于AOD-NET的去雾算法


文章目录


前言`

论文来源:

如果想要了解算法原理请看这篇文章https://blog.csdn.net/Flag_ing/article/details/108923617


一、环境配置

window10或window11系统
python3.7 ; pytorch0.4 ;使用Anaconda来管理编程环境;
python语言编程软件为pycharm

二、资源

论文地址:https://arxiv.org/pdf/1707.06543.pdf

相关代码:https://github.com/MayankSingal/PyTorch-Image-Dehazing

数据集下载:https://sites.google.com/site/boyilics/website-builder/project-pag

————————————————

三、代码使用方法

在给github下载完代码之后得到这个文件

将其解压缩后,文件中包含这些东西

在此未知新建文件夹命名为data

打开data,新建data和images文件夹,将在原作者网站中下载的两个数据数据集training images和original images的图片分别复制进data和images文件夹中。原作者的数据集可能需要翻墙进去下载,下载不了的我可以分享到评论区,外加其在GitHub中的代码。

该两个数据集分别如下:

使用pycharm打开项目工程文件


需要修改的代码部分:
1、dataloader.py 中的第27行中的代码:

image = image.split("/")[-1]             

改变后为:

image = image.split("/")[-1][5:]      

2、dehaze.py 中的第31行中的代码:

torchvision.utils.save_image(torch.cat((data_hazy, clean_image),0), "results/" + image_path.split("/")[-1]) 

改变后为:

torchvision.utils.save_image(torch.cat((data_hazy, clean_image), 0), "results/" + image_path.split("/")[-1][5:])

改变之后即可运行代码,在经过10个左右的周期后,网络模型即可形成。

四、运行

运行train.py,对网络进行训练

将有雾图像放到test_images中,运行dehaze.py,测试去雾效果。

去雾后的图片放在result文件夹中,去雾后的图片如下所示:



五、注明

使用代码和数据集时需说明原文,代码和数据集来源。

以上是关于如何跑通基于AOD-NET的去雾算法的主要内容,如果未能解决你的问题,请参考以下文章

图像去雾技术综述

图像去雾技术综述

毕设题目:Matlab图像评价

基于单幅图像的快速去雾算法实现

基于单幅图像的快速去雾算法实现

基于Retinex的图像去雾算法(MATLAB实现)