目录
🍓🍓1.效果
🍂🍂2.去雨功能实现
🍇2.1训练模型:
🍇2.2保存模型:
🙋🙋3.去雾功能实现
🐸🐸4.python代码实现可视化界面
🍋4.1完整代码
🍋4.2代码解释
1. 创建主窗口
2. 创建原始图像显示区域
3. 创建去雨后图像显示区域
4. 创建去雾后图像显示区域
5. 创建按钮
6. 存储原始图像数据
7. 运行主循环
🍋4.3代码逻辑总结
💖💖5.打包成exe文件
🍉5.1.安装 PyInstaller
🍉5.2 使用 PyInstaller 打包脚本
1. 基本命令
2. 常用选项
🍉5.3打包后的文件结构
🍉5.4 测试打包后的程序
🍉5.5示例命令
🍉5.6注意事项
整理不易,欢迎一键三连!!!
送你们一条美丽的--分割线--
🍓🍓1.效果
去雨去雾小工具的实现成果是一个exe的可执行文件,打开效果如下:
完整代码获取请私信留言。
🍂🍂2.去雨功能实现
去雨功能是选用深度学习网络进行实现,具体为Attentive-GAN-Derainnet,其网络结构如下:
使用 tensorflow 实现深度卷积生成对抗网络 ,训练好的去雨网络模型权重文件存储在文件夹 weights/,可以按照如下方式在经过训练的模型上测试单个图像
python tools/test_model.py --weights_path ./weights/derain_gan/derain_gan.ckpt-100000
--image_path ./data/test_data/test_1.png
去雨结果如下:
输入图像:
输出去雨后的图像:
整理训练示例。将所有雨图和干净图像放在两个单独的文件夹中,分别以 SOURCE_DATA_ROOT_DIR/rain_image 和 SOURCE_DATA_ROOT_DIR/clean_image 命名。其余准备工作将通过运行以下脚本完成
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#f0f6fc"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>cd PROJECT_ROOT_DIR
python data_provider/data_feed_pipline.py --dataset_dir SOURCE_DATA_ROOT_DIR
--tfrecords_dir TFRECORDS_SAVE_DIR
</code></span></span></span></span>
训练样本由两部分组成:一张没有雨滴标签的干净图像和一张被雨滴污染的原始图像。
所有训练图像将根据配置文件自动缩放为相同比例,并转换为 TensorFlow 记录,以实现高效的数据馈送管道。
🍇2.1训练模型:
在我的实验中,训练周期为 100010,批量大小为 1,初始化学习率为 0.002。有关训练参数,您可以查看 global_configuration/config.py 了解详情。你可以调用以下脚本来训练你自己的模型:
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#f0f6fc"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>cd REPO_ROOT_DIR
python tools/train_model.py --dataset_dir SOURCE_DATA_ROOT_DIR
</code></span></span></span></span>
还可以通过以下方式继续训练过程:
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#f0f6fc"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>cd REPO_ROOT_DIR
python tools/train_model.py --dataset_dir SOURCE_DATA_ROOT_DIR
--weights_path path/to/your/last/checkpoint</code></span></span></span></span>
🍇2.2保存模型:
训练好的模型可以转换为 tensorflow 保存的模型和 tensorflow js 模型以供网络使用。如果你想将 ckpt 模型转换为 tensorflow 保存的模型,你可以运行以下脚本
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#f0f6fc"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>cd PROJECT_ROOT_DIR
python tools/export_tf_saved_model.py --export_dir ./weights/derain_gan_saved_model
--ckpt_path ./weights/derain_gan/derain_gan.ckpt-100000
</code></span></span></span></span>
如果你想转换成 tensorflow js 模型,你可以修改 bash 脚本并运行它
<span style="background-color:var(-