--- license: apache-2.0 pipeline_tag: image-classification tags: - remote-sensing - mamba - mixture-of-experts - cnn --- # AFM-Net: Hierarchical Fusion of Local and Global Visual Features with Mixture-of-Experts for Remote Sensing Image Scene Classification This repository contains the pre-trained model weights for **AFM-Net**, presented in the paper [Hierarchical Fusion of Local and Global Visual Features with Mixture-of-Experts for Remote Sensing Image Scene Classification](https://huggingface.co/papers/2510.27155). AFM-Net is a parallel heterogeneous framework that synergizes CNN-based local texture extraction with Mamba-based global sequence modeling. It utilizes a hierarchical fusion module to integrate features across different semantic levels and an adaptive Mixture-of-Experts (MoE) classifier head for fine-grained scene recognition. ## 🔍 Introduction Remote sensing scene classification of high-resolution images remains a challenging task due to complex spatial structures and high intra-class variance. We propose a parallel heterogeneous framework that: - **Synergizes Local and Global Visual Encoder**: Coupling CNN-based local texture extraction with Mamba-based global sequence modeling to ensure robust co-representation. - **Hierarchical Fusion Strategy**: Employs a hierarchical fusion module to densely integrate heterogeneous features across different semantic levels. - **Adaptive MoE Classifier**: Uses a Mixture-of-Experts (MoE) head to dynamically select optimal features, balancing performance with efficiency. Extensive experiments show our model achieves state-of-the-art performance on AID, NWPU-RESISC45, and UC Merced datasets. ## ⚙️ Installation ### 1. Clone this repository: ```bash git clone https://huggingface.co/Jamtang/classification cd classification ``` ### 2. Create a Python virtual environment and install dependencies: ```bash conda create -n class python=3.8 -y conda activate class pip install -r requirements.txt ``` ## 🚀 Usage ### Inference / Application To run the provided application: ```bash python app.py ``` ### Training To train the model on a specific dataset (e.g., AID): ```bash python train.py --dataset AID --batch_size 32 --epochs 500 ``` ## 🔥 Performance | Dataset | F1 Score | | :--- | :---: | | UC Merced | 96.81 | | AID | 93.71 | | NWPU-RESISC45 | 95.52 | ## Links - **Paper**: [https://huggingface.co/papers/2510.27155](https://huggingface.co/papers/2510.27155) - **Code**: [https://github.com/tangyuanhao-qhu/AFM-Net](https://github.com/tangyuanhao-qhu/AFM-Net) ## Citation If you find this work helpful or inspiring, please consider citing it: ```bibtex @article{tang2025hierarchical, title={Hierarchical Fusion of Local and Global Visual Features with Mixture-of-Experts for Remote Sensing Image Scene Classification}, author={Tang, Yuanhao and Zou, Xuechao and Hu, Zhengpei and Xing, Junliang and Zhang, Chengkun and Huang, Jianqiang}, journal={arXiv preprint arXiv:2510.27155}, year={2025} } ```