{"id":26787560,"url":"https://github.com/raoumer/isrrescnet","last_synced_at":"2025-04-19T19:50:43.820Z","repository":{"id":54554272,"uuid":"315923077","full_name":"RaoUmer/ISRResCNet","owner":"RaoUmer","description":"Code repo for \"Deep Iterative Residual Convolutional Network for Single Image Super-Resolution\" (ICPR 2020).","archived":false,"fork":false,"pushed_at":"2021-05-22T13:21:54.000Z","size":10676,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T12:30:38.371Z","etag":null,"topics":["convex-optimization","deep-neural-networks","icpr","iterative-methods","super-resolution"],"latest_commit_sha":null,"homepage":"https://beta.replicate.ai/RaoUmer/ISRResCNet","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RaoUmer.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":"2020-11-25T11:48:26.000Z","updated_at":"2023-09-11T00:00:40.000Z","dependencies_parsed_at":"2022-08-13T19:31:04.238Z","dependency_job_id":null,"html_url":"https://github.com/RaoUmer/ISRResCNet","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/RaoUmer%2FISRResCNet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaoUmer%2FISRResCNet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaoUmer%2FISRResCNet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaoUmer%2FISRResCNet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RaoUmer","download_url":"https://codeload.github.com/RaoUmer/ISRResCNet/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249785895,"owners_count":21325559,"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":["convex-optimization","deep-neural-networks","icpr","iterative-methods","super-resolution"],"created_at":"2025-03-29T12:25:47.312Z","updated_at":"2025-04-19T19:50:43.801Z","avatar_url":"https://github.com/RaoUmer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deep Iterative Residual Convolutional Network for Single Image Super-Resolution (ISRResCNet)\n![](https://img.shields.io/badge/pytorch-ISRResCNet-green)\n\nAn official PyTorch implementation of the [ISRResCNet](https://github.com/RaoUmer/ISRResCNet) network as described in the paper **[Deep Iterative Residual Convolutional Network for Single Image Super-Resolution](https://arxiv.org/abs/2009.04809)** which is published in the 25th International Conference of Pattern Recognition (ICPR), 2020.\n\n✨ _**Visual examples**_:\n\n[\u003cimg src=\"figs/vis_res1.PNG\" width=\"330px\"/\u003e](https://imgsli.com/NDg4ODY) [\u003cimg src=\"figs/vis_res2.PNG\" width=\"490px\"/\u003e](https://imgsli.com/NDg4ODc)\n___________\n\n* [Abstract](#abstract)\n* [Oral Presentation Video](#oral-presentation-video)\n* [Citation](#bibtex)\n* [Quick Test](#quick-test)\n* [ISRResCNet Architecture](#isrrescnet-architecture)\n* [Quantitative Results](#quantitative-results)\n* [Visual Results](#visual-results)\n* [Code Acknowledgement](#code-acknowledgement)\n\n#### Abstract\n\u003e Deep convolutional neural networks (CNNs) have recently achieved great success for single image super-resolution (SISR) task due to their powerful feature representation capabilities. The most recent deep learning based SISR methods focus on  designing deeper / wider models to learn the non-linear mapping between low-resolution (LR) inputs and high-resolution (HR) outputs. These existing SR methods do not take into account the image observation (physical) model and thus require a large number of network's trainable parameters with a great volume of training data. To address these issues, we propose a deep Iterative Super-Resolution Residual Convolutional Network (ISRResCNet) that exploits the powerful image regularization and large-scale optimization techniques by training the deep network in an iterative manner with a residual learning approach. Extensive experimental results on various super-resolution benchmarks demonstrate that our method with a few trainable parameters improves the results for different scaling factors in comparison with the state-of-art methods.\n\n#### Oral Presentation (Video)\n[![Video](https://img.youtube.com/vi/4TLjeIYuOyQ/hqdefault.jpg)](https://youtu.be/4TLjeIYuOyQ)\n\n#### BibTeX\n    @InProceedings{Umer_2020_ICPR,\n                   author = {Muhammad Umer, Rao and Luca Foresti, Gian and Micheloni, Christian},\n                   title = {Deep Iterative Residual Convolutional Network for Single Image Super-Resolution},\n                   booktitle = {Proceedings of the International Conference of Pattern Recognition (ICPR)},\n                   month = {January},\n                   year = {2021}\n                  }\n\n## Quick Test\n\nThis model can be run on arbitrary images with a Docker image hosted on Replicate: https://beta.replicate.ai/RaoUmer/ISRResCNet. Below are instructions for how to run the model without Docker:\n\n#### Dependencies\n- [Python 3.7](https://www.anaconda.com/distribution/) (version \u003e= 3.0)\n- [PyTorch \u003e= 1.0](https://pytorch.org/) (CUDA version \u003e= 8.0 if installing with CUDA.)\n- Python packages:  `pip install numpy opencv-python`\n\n#### Test models\n1. Clone this github repository as the following commands: \n```\ngit clone https://github.com/RaoUmer/ISRResCNet\ncd ISRResCNet\ncd isrrescnet_code_demo\n```\n2. Place your own **low-resolution images** in the `./isrrescnet_code_demo/LR` folder. (There are two sample images i.e. set5_img_butterfly_x4 and urban100_img_092_x4). \n3. Run the test by the provided script `test_isrrescnet.py`.\n```\npython test_isrrescnet.py       \n```\n4. The SR results are in the `./isrrescnet_code_demo/sr_results` folder.\n\n## ISRResCNet Architecture\n#### Overall Representative diagram\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"250\" src=\"figs/isrrescnet.gif\"\u003e\n\u003c/p\u003e\n\n#### ERD block\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"150\" src=\"figs/rescnet.png\"\u003e\n\u003c/p\u003e\n\n## Quantitative Results\nAverage PSNR/SSIM values for scale factors x2, x3, and x4 with the bicubic degradation model. The best performance is shown in **red** and the second best\nperformance is shown in **blue**.\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"200\" src=\"figs/quant_res.PNG\"\u003e\n\u003c/p\u003e\n\n## Visual Results\nVisual comparison of our method with other state-of-the-art methods on the x4 super-resolution over the SR benchmarks. For visual comparison on the benchmarks, you can download our results from the Google Drive: [ISRResCNet](https://drive.google.com/drive/folders/1IioErwfd1cjfBMBOjUzH1guWuI-iZzFm?usp=sharing). \n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"250\" src=\"figs/res1.png\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"250\" src=\"figs/res2.png\"\u003e\n\u003c/p\u003e\n\n## Code Acknowledgement\nThe training codes is based on [burst-photography](https://github.com/cig-skoltech/burst-cvpr-2019) and [deep_demosaick](https://github.com/cig-skoltech/deep_demosaick).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraoumer%2Fisrrescnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraoumer%2Fisrrescnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraoumer%2Fisrrescnet/lists"}