{"id":17349621,"url":"https://github.com/murufeng/fuir","last_synced_at":"2025-04-09T16:08:35.854Z","repository":{"id":38404867,"uuid":"492843584","full_name":"murufeng/FUIR","owner":"murufeng","description":"A Flexible and Unified Image Restoration Framework (PyTorch), including state-of-the-art image restoration model. Such as NAFNet, Restormer, MPRNet, MIMO-UNet, SCUNet, SwinIR, HINet, etc. ⭐⭐⭐⭐⭐⭐","archived":false,"fork":false,"pushed_at":"2022-05-24T16:24:07.000Z","size":3502,"stargazers_count":313,"open_issues_count":3,"forks_count":34,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-09T16:08:25.113Z","etag":null,"topics":["image-deblurring","image-denoising","image-deraining","image-restoration","image-super-resolution"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/murufeng.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-16T13:18:37.000Z","updated_at":"2025-04-03T02:41:25.000Z","dependencies_parsed_at":"2022-07-12T17:28:52.286Z","dependency_job_id":null,"html_url":"https://github.com/murufeng/FUIR","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/murufeng%2FFUIR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/murufeng%2FFUIR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/murufeng%2FFUIR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/murufeng%2FFUIR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/murufeng","download_url":"https://codeload.github.com/murufeng/FUIR/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248065284,"owners_count":21041871,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["image-deblurring","image-denoising","image-deraining","image-restoration","image-super-resolution"],"created_at":"2024-10-15T16:56:23.812Z","updated_at":"2025-04-09T16:08:35.827Z","avatar_url":"https://github.com/murufeng.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/simple-baselines-for-image-restoration/image-deblurring-on-gopro)](https://paperswithcode.com/sota/image-deblurring-on-gopro?p=simple-baselines-for-image-restoration)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/simple-baselines-for-image-restoration/image-denoising-on-sidd)](https://paperswithcode.com/sota/image-denoising-on-sidd?p=simple-baselines-for-image-restoration)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/maxim-multi-axis-mlp-for-image-processing/deblurring-on-hide-trained-on-gopro)](https://paperswithcode.com/sota/deblurring-on-hide-trained-on-gopro?p=maxim-multi-axis-mlp-for-image-processing)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/vrt-a-video-restoration-transformer/deblurring-on-reds)](https://paperswithcode.com/sota/deblurring-on-reds?p=vrt-a-video-restoration-transformer)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/restormer-efficient-transformer-for-high/single-image-deraining-on-rain100h)](https://paperswithcode.com/sota/single-image-deraining-on-rain100h?p=restormer-efficient-transformer-for-high)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/restormer-efficient-transformer-for-high/single-image-deraining-on-rain100l)](https://paperswithcode.com/sota/single-image-deraining-on-rain100l?p=restormer-efficient-transformer-for-high)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/restormer-efficient-transformer-for-high/single-image-deraining-on-test100)](https://paperswithcode.com/sota/single-image-deraining-on-test100?p=restormer-efficient-transformer-for-high)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/restormer-efficient-transformer-for-high/single-image-deraining-on-test1200)](https://paperswithcode.com/sota/single-image-deraining-on-test1200?p=restormer-efficient-transformer-for-high)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/restormer-efficient-transformer-for-high/single-image-deraining-on-test2800)](https://paperswithcode.com/sota/single-image-deraining-on-test2800?p=restormer-efficient-transformer-for-high)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-flickr1024-1)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-flickr1024-1?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-flickr1024-2)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-flickr1024-2?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-kitti2012-2x-1)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-kitti2012-2x-1?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-kitti2012-4x)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-kitti2012-4x?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-kitti2015-2x)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-kitti2015-2x?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-kitti2015-4x)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-kitti2015-4x?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-middlebury-1)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-middlebury-1?p=nafssr-stereo-image-super-resolution-using)\n[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/nafssr-stereo-image-super-resolution-using/stereo-image-super-resolution-on-middlebury)](https://paperswithcode.com/sota/stereo-image-super-resolution-on-middlebury?p=nafssr-stereo-image-super-resolution-using)\n\n# A Flexible and Unified Image Restoration Framework. \n\n[![GitHub stars](https://img.shields.io/github/stars/murufeng/FUIR.svg?style=social\u0026label=Stars)](https://github.com/murufeng/FUIR)\n[![GitHub forks](https://img.shields.io/github/forks/murufeng/FUIR.svg?style=social\u0026label=Forks)](https://github.com/murufeng/FUIR)\n[![download](https://img.shields.io/github/downloads/murufeng/FUIR/total.svg)](https://github.com/murufeng/FUIR/releases) \n![visitors](https://visitor-badge.glitch.me/badge?page_id=murufeng/FUIR)\n\n\u003e 当前，对于Low-level-Vision中的图像恢复任务（Image Super-resolution, Image Denoising, Image Deblurring等) 已经出现了很多优秀实用的工具包。 \n\u003e但是，对于去年出现的一系列Transformer网络架构还没有一个统一的项目将它集成起来，本项目主要在具体图像恢复任务的数据处理和网络训练配置上将当前主流的CNN网络和基于Transformer的网络架构集成了起来。本项目将作为图像恢复任务的一个灵活统一的工具。利用本项目可以快速实现图像去噪，图像/视频去模糊，图像去雨等一系列经典任务的训练。 \n\u003e本项目提供在GOPRO、SIDD、REDS、Rain13K数据集上的数据预处理以及网络架构训练教程，后续我们将持续更新。希望本项目既能让图像处理初学者快速入门，又能服务科研和工业社区。\n\n### Installation\n\nSee [INSTALL.md](https://github.com/murufeng/FUIR/blob/main/INSTALL.md) for the installation of dependencies required to run [FUIR](https://github.com/murufeng/FUIR).\n\n\n### News\n * *2022-5-17* Update the State-of-the-Art models, such as NAFNet, Restormer, MPRNet, HINet, MIMO-UNet\n\n### Model Zoo\n\n\u003cdetails\u003e\n\u003csummary\u003eNAFNet\u003c/summary\u003e \n  \n网络模块结构如下所示：\n  \n![](./figures/NAFNet_block.jpg)\n\n模块设计如下：\n\n![](./figures/nafnet_fig_1.jpg)\n\n两大经典图像恢复实验结果如下：\n1. Image Denoising （在SIDD数据集实现SOTA):\n\n![](./figures/nafnet_tab_1.jpg)\n\n2. Image Deblurring （在GoPro数据集实现SOTA):\n\n![](./figures/nafnet_tab_2.jpg)\n\n[模型训练配置](./docs)\n\n[模型训练代码](./options/train)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eRestormer\u003c/summary\u003e \n\n网络模块结构如下所示：\n![](./figures/restormer_block.jpg)\n\n三大图像恢复实验结果对比图：\n![](./figures/restormer_fig_1.jpg)\n\n1. Image Deraining(目前保持SOTA):\n\n![](./figures/restormer_tab_1.jpg)\n![](./figures/restormer_vis_1.jpg)\n\n2. Image Deblurring:\n\n![](./figures/restormer_tab_2.jpg)\n\n3. Image Denoising:\n\n![](./figures/restormer_tab_3.jpg)\n\n[模型训练配置](./docs)\n\n[模型训练代码](./options/train)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eHINet\u003c/summary\u003e \n\n网络模块结构如下所示：\n![](./figures/HINet.jpg)\n![](./figures/HINet_block.jpg)\n\n#### 三大图像恢复实验结果：\n1. Image Denoising:\n\n![](./figures/hinet_tab_1.jpg)\n\n2. Image Deblurring:\n\n![](./figures/hinet_tab_2.jpg)\n\n3. Image Deraining:\n\n![](./figures/hinet_tab_3.jpg)\n\n[模型训练配置](./docs)\n\n[模型训练代码](./options/train)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eMPRNet\u003c/summary\u003e \n\n网络模块结构如下所示：\n![](./figures/mprnet.jpg)\n\n#### 三大图像恢复实验结果：\n\n1. Image Deraining:\n![](./figures/mprnet_tab_1.jpg)\n![](./figures/mprnet_derain.jpg)\n2. Image Deblurring:\n![](./figures/mprnet_tab_2.jpg)\n3. Image Denoising:\n![](./figures/mprnet_tab_3.jpg)\n\n[模型训练配置](./docs)\n\n[模型训练代码](./options/train)\n\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003eMIMONet\u003c/summary\u003e \n\n网络模块结构如下所示：\n\n![](./figures/mimo_unet.jpg)\n\n图像去模糊实验结果与可视化图：\n\n![](./figures/mimo_unet_tab_1.jpg)\n\n![](./figures/mimo_unet_fig_1.jpg)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eMIRNet\u003c/summary\u003e \n\n网络模块结构如下所示：\n![](./figures/mirnet_network.jpg)\n\n![](./figures/mirnet_att.jpg)\n\n![](./figures/mirnet_skff.jpg)\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eSCUNet\u003c/summary\u003e \n\n网络模块结构如下所示：\n\n![](./figures/SCUNet.jpg)\n\n部分实验结果如下：\n![](./figures/scunet_tab_2.jpg)\n\n![](./figures/SCUNet_vis.jpg)\n\n![](./figures/scunet_vis_2.jpg)\n\n\u003c/details\u003e\n\n\n### Experiments \n\n### Image Restoration Tasks \n\n| Task                                 | Dataset | Train/Test Instructions                                                \n| :----------------------------------- | :------ | :---------------------- | \n| Image Deblurring                     | GoPro   | [link](./docs/GoPro.md) | \n| Image Denoising                      | SIDD    | [link](./docs/SIDD.md)  | \n| Image Deblurring with JPEG artifacts | REDS    | [link](./docs/REDS.md)  | \n| Image Derain                         | Rain13K    | [link](./docs/Rain.md)  |\n| Stereo Image Super-Resolution | Flickr1024+Middlebury    | [link](./docs/StereoSR.md) \n\n### Citations\nIf you find this project is useful, please give me a star and fork!\n\n### Contact\n\nIf you have any questions, please contact me. 2394849504@qq.com\n\n---\n\n## Acknowledgment\n\nThis implementation based on [BasicSR](https://github.com/xinntao/BasicSR) and [NAFNet](https://github.com/megvii-model/NAFNet).\n\n\n\u003cdetails\u003e\n\u003csummary\u003estatistics\u003c/summary\u003e \n\n![visitors](https://visitor-badge.glitch.me/badge?page_id=murufeng/FUIR)\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmurufeng%2Ffuir","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmurufeng%2Ffuir","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmurufeng%2Ffuir/lists"}