- This repository provides code for "High-Precision Dichotomous Image Segmentation with Frequency and Scale Awareness", TNNLS 2024
- π Paper download from IEEE
- π Paper download from this repo
Dichotomous Image Segmentation (DIS) with rich fine-grained details within a single image is a challenging task. Despite the plausible results achieved by deep learning-based methods, most of them fail to segment generic objects when the boundary is cluttered with the background. In fact, the gradual decrease in feature map resolution during the encoding stage and the misleading texture clue may be the main issues. To handle these issues, we devise a novel frequency- and scale-aware deep neural network (FSANet) for high-precision DIS. The core of our proposed FSANet is twofold. First, a multi-modality fusion (MF) module that integrates the information in spatial and frequency domains is adopted to enhance the representation capability of image features. Second, a collaborative scale fusion module (CSFM), which deviates from the traditional serial structures, is introduced to maintain high resolution during the entire feature encoding stage. On the decoder side, we introduce hierarchical context fusion (HCF) and selective feature fusion (SFF) modules to infer the segmentation results from the output features of the CSFM module. We conduct extensive experiments on several benchmark datasets and compare our proposed method with existing SOTA methods. The experimental results demonstrate that our FSANet achieves superior performance both qualitatively and quantitatively.
Experimental Setup: The training and testing experiments are conducted using PyTorch with double 3090 GPU of 24 GB Memory.
# Clone the repository
git clone https://github.com/chasecjg/FSANet.git
cd FSANet
# Create and activate a virtual environment
conda create -n FSANet python=3.12
conda activate FSANet
# Install dependencies
pip install -r requirements.txt| Data Type | Target Path | Download Links |
|---|---|---|
| π Training/Testing Dataset | ./data/ |
Google Drive |
| π¦ PVT-v2 Pre-trained Weight | ./FSANet/pvt_v2_b2.pth |
Google Drive, ηΎεΊ¦η½η |
| π¦ FSANet Pre-trained Weight | ./checkpoints/FSANet/FSANet-100.pth |
Google Drive, ηΎεΊ¦η½η |
β οΈ Attention: Ensure the file names and paths are strictly consistent with the above to avoid runtime errors.
βοΈ Key Operation: Modify custom path parameters in train.py, including:
--train_save: Path to save training checkpoints and logs
--train_path: Path to the training dataset directory
π§ͺ Execution Steps:
Prepare the pre-trained model and testing dataset
Replace the
--pth_pathparameter intest.pywith your trained model directoryRun the test script to generate prediction maps:
python test.py --pth_path "path/to/your/trained/model"π Visualization Data: We provide visualization images of our model that you can download from:
Evaluation Tool: One-key evaluation is written in Python code (revised from link)
@ARTICLE{JinguangchengFSANet,
author={Jiang, Qiuping and Cheng, Jinguang and Wu, Zongwei and Cong, Runmin and Timofte, Radu},
journal={IEEE Transactions on Neural Networks and Learning Systems},
title={High-Precision Dichotomous Image Segmentation With Frequency and Scale Awareness},
year={2025},
volume={36},
number={5},
pages={8619-8631},
doi={10.1109/TNNLS.2024.3426529}}
