Skip to content

hehesjtu/FLIDE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FLIDE: Fick Diffusion Law Inspired Single Image Detail Enhancement

This is the source code of paper named "Fick Diffusion Law Inspired Single Image Detail Enhancement". This paper is submitted to IEEE Transactions on Neural Networks and Learning Systems.

Introduction

This repository contains the MATLAB implementation of the FLIDE algorithm proposed in the paper:

"[Fick Diffusion Law Inspired Single Image Detail Enhancement]"

Authors:[He Jiang {Member, IEEE}], [Jiahe Jiang]

Abstract: Single image detail enhancement algorithms based on residual learning often employ greedy search strategies, which renders the system prone to falling into local optima. To address this issue, this study proposes a single image detail enhancement algorithm inspired by Fick Diffusion Law, named FLIDE.

The algorithm models the image patch matching problem as a diffusion transport process of molecules within non-uniform concentration and potential energy fields:

Initialization Stage (Concentration Gradient): The algorithm utilizes the non-uniformity of the solution population in spatial distribution to construct a macroscopic “concentration gradient”. The resulting substantial diffusion flux provides the search agents with momentum for long-distance cross-region migration, enabling them to spontaneously escape the constraints of local extrema akin to physical diffusion. Guidance Mechanism (Potential Energy): Subsequently, a potential energy guidance mechanism is introduced to map matching errors to “potential energy.” By leveraging local and global potential energy gradients to dynamically adjust the search step size, the algorithm drives the molecules to transition smoothly from high-flux exploration to low-flux steady-state locking.

Results: Experimental results demonstrate that FLIDE outperforms existing algorithms on multiple public datasets such as RealSRSet, BSDS200, and T91. Specifically, under $2\times$ upscaling on the BSDS200 dataset, compared with the currently popular method QWLS, the PSNR improves by 4.13 dB and SSIM by 0.0451, fully highlighting the advantages of the proposed algorithm in detail restoration capability.

System Requirements

The code has been tested and verified on the following platform:

  • MATLAB Version: R2025a or later
  • Operating System: Windows 10/11, Linux, or macOS

Required Toolboxes

To run the code successfully, the following MATLAB toolboxes are required:

  • Image Processing Toolbox (Required for image I/O, resizing, and metric calculation)
  • Parallel Computing Toolbox (Required for the parpool acceleration used in the core algorithm)

Installation

Download or clone this repository to your local machine. bash git clone [https://github.com/hehesjtu/FLIDE-Implementation.git](https://github.com/hehesjtu/FLIDE-Implementation.git)

Project Structure

The following directory hierarchy outlines the organization of the repository:

FLIDE/
├── data/               # Sample images for testing purposes
│   ├── example1.png
│   └── example2.png
│   └── ...
├── results/                # Enhanced results generated by FLIDE
│   ├── example1_enhanced.png
│   └── example2_enhanced.png
│   └── ...
├── FLIDE.p                 # Pre-compiled core algorithm (P-code)
├── main.m                  # Main entry script with GUI
├── README.md               # Project documentation
└── requirements.txt        # List of MATLAB toolboxes and dependencies

This implementation provides a user-friendly GUI for testing the algorithm on custom images.

  1. Open MATLAB and navigate to the repository folder.
  2. In the MATLAB Command Window, type the following command to launch the interface:
       main
  3. GUI Operations: Click "Load Image" to select an input image (supports .png, .jpg, .bmp, .tif). Adjust the "Enhance Factor" if necessary (Default is 4.0). Click "Run FLIDE" to process the image. The status bar will indicate the progress. Upon completion, the PSNR and SSIM metrics will be displayed in the interface. Click "Save Result" to export the enhanced image.

File Description

main.m: The main entry point script containing the GUI implementation and interaction logic.

FLIDE.p: The pre-compiled binary file of the core FLIDE algorithm. Note: The core algorithm is provided as a P-code file for copyright protection. It is functionally identical to the source code described in the paper.

data/: (Optional) Contains sample images for testing.

results/: Stores the corresponding enhanced images processed by the FLIDE algorithm, serving as a quality reference.

About

FLIDE: Fick Diffusion Law Inspired Single Image Detail Enhancement

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages