{"id":20377582,"url":"https://github.com/reshalfahsi/image-super-resolution","last_synced_at":"2025-03-04T21:44:27.412Z","repository":{"id":186930106,"uuid":"676005163","full_name":"reshalfahsi/image-super-resolution","owner":"reshalfahsi","description":"Image Super-Resolution Using ESRGAN","archived":false,"fork":false,"pushed_at":"2023-08-09T03:34:00.000Z","size":7738,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-15T07:14:45.398Z","etag":null,"topics":["esrgan","image-enhancement","image-processing","kornia","pytorch-lightning","super-resolution"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reshalfahsi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-08T08:08:38.000Z","updated_at":"2023-08-08T08:26:18.000Z","dependencies_parsed_at":"2025-01-15T06:37:51.136Z","dependency_job_id":"ca624eba-804c-464a-bcfe-e70f03fae5fb","html_url":"https://github.com/reshalfahsi/image-super-resolution","commit_stats":null,"previous_names":["reshalfahsi/image-super-resolution"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reshalfahsi%2Fimage-super-resolution","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reshalfahsi%2Fimage-super-resolution/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reshalfahsi%2Fimage-super-resolution/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reshalfahsi%2Fimage-super-resolution/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reshalfahsi","download_url":"https://codeload.github.com/reshalfahsi/image-super-resolution/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241928532,"owners_count":20043821,"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":["esrgan","image-enhancement","image-processing","kornia","pytorch-lightning","super-resolution"],"created_at":"2024-11-15T01:45:40.323Z","updated_at":"2025-03-04T21:44:27.389Z","avatar_url":"https://github.com/reshalfahsi.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Super-Resolution Using ESRGAN\n\n\n \u003cdiv align=\"center\"\u003e\n    \u003ca href=\"https://colab.research.google.com/github/reshalfahsi/image-super-resolution/blob/master/ImageSuperResolution.ipynb\"\u003e\u003cimg src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"colab\"\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n \u003c/div\u003e\n\nImage super-resolution attempts to produce pixels within the image to fill the lack of information due to its low-resolution nature. Hence, it yields a higher-resolution image. One approach to this problem is via generative networks, e.g., ESRGAN (Enhanced Super-Resolution Generative Adversarial Network). This type of GAN is built explicitly for image super-resolution by considering several losses, i.e., contextual loss (focus on the distribution of the feature), perceptual loss (pixel-wise loss), and adversarial loss. These three losses are utilized for the generator loss. On the contrary, the discriminator loss only takes into account the adversarial loss. There are two stages during training: (1) train only the generator on the perceptual loss, and (2) train the generator and discriminator based on those, as mentioned earlier. The model is trained and evaluated on the BSDS500 dataset. The final result of the predicted high-resolution image is subjected to the sharpening method by subtracting the image with the Laplacian of the image.\n\n\n## Experiment\n\n\nThis [link](https://github.com/reshalfahsi/image-super-resolution/blob/master/ImageSuperResolution.ipynb) provides the code for the experiments.\n\n\n## Result\n\n## Quantitative Result\n\nQuantitatively, the performance of ESRGAN after training with 420 epochs is presented as follows:\n\nMetrics | Test Dataset |\n------------ | ------------- |\nPSNR | 22.587 |\nSSIM | 0.586 |\nMAE | 0.049 |\n\n\n## Evaluation Metrics Curve\n\n\u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/reshalfahsi/image-super-resolution/blob/master/assets/loss_curve.png\" alt=\"loss_curve\" \u003e \u003cbr /\u003e Generator and discriminator loss curves on the train setss. \u003c/p\u003e\n\n\u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/reshalfahsi/image-super-resolution/blob/master/assets/psnr_curve.png\" alt=\"psnr_curve\" \u003e \u003cbr /\u003e PSNR curve on the train set and the validation set. \u003c/p\u003e\n\n\u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/reshalfahsi/image-super-resolution/blob/master/assets/ssim_curve.png\" alt=\"ssim_curve\" \u003e \u003cbr /\u003e SSIM curve on the train set and the validation set. \u003c/p\u003e\n\n\u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/reshalfahsi/image-super-resolution/blob/master/assets/mae_curve.png\" alt=\"mae_curve\" \u003e \u003cbr /\u003e MAE curve on the train set and the validation set. \u003c/p\u003e\n\n\n## Qualitative Result\n\nThe qualitative results of the model are shown below.\n\n\u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/reshalfahsi/image-super-resolution/blob/master/assets/qualitative_result.png\" alt=\"qualitative_result\"\u003e \u003cbr /\u003e Qualitative comparison between the reference high-resolution images (left column), high-resolution images via bicubic interpolation (middle column), and predicted high-resolution images through ESRGAN (right column). \u003c/p\u003e\n\n\n## Credit\n\n- [ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks](https://arxiv.org/pdf/1809.00219.pdf)\n- [Berkeley Segmentation Data Set and Benchmarks 500 (BSDS500)](https://github.com/BIDS/BSDS500)\n- [Image Super-Resolution using an Efficient Sub-Pixel CNN](https://keras.io/examples/vision/super_resolution_sub_pixel/)\n- [PyTorch-GAN](https://github.com/eriklindernoren/PyTorch-GAN)\n- [PyTorch Lightning](https://lightning.ai/docs/pytorch/latest/)\n- [Kornia](https://kornia.readthedocs.io/en/latest/index.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freshalfahsi%2Fimage-super-resolution","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freshalfahsi%2Fimage-super-resolution","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freshalfahsi%2Fimage-super-resolution/lists"}