FPGA: Fast Patch-Free Global Learning Framework for Fully End-to-End Hyperspectral Image Classification

Overview

PWC

PWC

PWC

License: GPL v3

FPGA & FreeNet

Fast Patch-Free Global Learning Framework for Fully End-to-End Hyperspectral Image Classification
by Zhuo Zheng, Yanfei Zhong, Ailong Ma and Liangpei Zhang


This is an official implementation of FPGA framework and FreeNet in our TGRS 2020 paper "FPGA: Fast Patch-Free Global Learning Framework for Fully End-to-End Hyperspectral Image Classification".

We hope the FPGA framework can become a stronger and cleaner baseline for hyperspectral image classification research in the future.

News

  1. 2020/05/28, We release the code of FreeNet and FPGA framework.

Features

  1. Patch-free training and inference
  2. Fully end-to-end (w/o preprocess technologies, such as dimension reduction)

Citation

If you use FPGA framework or FreeNet in your research, please cite the following paper:

@article{zheng2020fpga,
  title={FPGA: Fast Patch-Free Global Learning Framework for Fully End-to-End Hyperspectral Image Classification},
  author={Zheng, Zhuo and Zhong, Yanfei and Ma, Ailong and Zhang, Liangpei},
  journal={IEEE Transactions on Geoscience and Remote Sensing},
  year={2020},
  publisher={IEEE},
  note={doi: {10.1109/TGRS.2020.2967821}}
}

Getting Started

1. Install SimpleCV

pip install --upgrade git+https://github.com/Z-Zheng/SimpleCV.git

2. Prepare datasets

It is recommended to symlink the dataset root to $FreeNet.

The project should be organized as:

FreeNet
├── configs     // configure files
├── data        // dataset and dataloader class
├── module      // network arch.
├── scripts 
├── pavia       // data 1
│   ├── PaviaU.mat
│   ├── PaviaU_gt.mat
├── salinas     // data 2
│   ├── Salinas_corrected.mat
│   ├── Salinas_gt.mat
├── GRSS2013    // data 3
│   ├── 2013_IEEE_GRSS_DF_Contest_CASI.tif
│   ├── train_roi.tif
│   ├── val_roi.tif

3. run experiments

1. PaviaU

bash scripts/freenet_1_0_pavia.sh

2. Salinas

bash scripts/freenet_1_0_salinas.sh

3. GRSS2013

bash scripts/freenet_1_0_grss.sh

License

This source code is released under GPLv3 license.

For commercial use, please contact Prof. Zhong ([email protected]).

Projects using FPGA/FreeNet

Welcome to pull request if you use this repo as your codebase.

You might also like...
End-to-End Object Detection with Fully Convolutional Network
End-to-End Object Detection with Fully Convolutional Network

This project provides an implementation for "End-to-End Object Detection with Fully Convolutional Network" on PyTorch.

KE-Dialogue: Injecting knowledge graph into a fully end-to-end dialogue system.
KE-Dialogue: Injecting knowledge graph into a fully end-to-end dialogue system.

Learning Knowledge Bases with Parameters for Task-Oriented Dialogue Systems This is the implementation of the paper: Learning Knowledge Bases with Par

Graph Regularized Residual Subspace Clustering Network for hyperspectral image clustering
Graph Regularized Residual Subspace Clustering Network for hyperspectral image clustering

Graph Regularized Residual Subspace Clustering Network for hyperspectral image clustering

Global Filter Networks for Image Classification
Global Filter Networks for Image Classification

Global Filter Networks for Image Classification Created by Yongming Rao, Wenliang Zhao, Zheng Zhu, Jiwen Lu, Jie Zhou This repository contains PyTorch

FuseDream: Training-Free Text-to-Image Generationwith Improved CLIP+GAN Space OptimizationFuseDream: Training-Free Text-to-Image Generationwith Improved CLIP+GAN Space Optimization
FuseDream: Training-Free Text-to-Image Generationwith Improved CLIP+GAN Space OptimizationFuseDream: Training-Free Text-to-Image Generationwith Improved CLIP+GAN Space Optimization

FuseDream This repo contains code for our paper (paper link): FuseDream: Training-Free Text-to-Image Generation with Improved CLIP+GAN Space Optimizat

⚡ Fast • 🪶 Lightweight • 0️⃣ Dependency • 🔌 Pluggable • 😈 TLS interception • 🔒 DNS-over-HTTPS • 🔥 Poor Man's VPN • ⏪ Reverse & ⏩ Forward • 👮🏿  WarpDrive: Extremely Fast End-to-End Deep Multi-Agent Reinforcement Learning on a GPU
WarpDrive: Extremely Fast End-to-End Deep Multi-Agent Reinforcement Learning on a GPU

WarpDrive is a flexible, lightweight, and easy-to-use open-source reinforcement learning (RL) framework that implements end-to-end multi-agent RL on a single GPU (Graphics Processing Unit).

Simple-Image-Classification - Simple Image Classification Code (PyTorch)
Simple-Image-Classification - Simple Image Classification Code (PyTorch)

Simple-Image-Classification Simple Image Classification Code (PyTorch) Yechan Kim This repository contains: Python3 / Pytorch code for multi-class ima

Image Classification - A research on image classification and auto insurance claim prediction, a systematic experiments on modeling techniques and approaches

A research on image classification and auto insurance claim prediction, a systematic experiments on modeling techniques and approaches

Comments
  • Some issues about the code.

    Some issues about the code.

    I try to run your code on the Pavia data set.

    Traceback (most recent call last): File "d:/FreeNet-master/train.py", line 63, in opts=args.opts) File "D:\software\anaconda\lib\site-packages\simplecv\dp_train.py", line 44, in run traindata_loader = make_dataloader(cfg['data']['train']) File "D:\software\anaconda\lib\site-packages\simplecv\data\data_loader.py", line 9, in make_dataloader raise ValueError('{} is not support now.'.format(dataloader_type)) ValueError: NewPaviaLoader is not support now.

    Looking forward to hearing from you!

    opened by zhe-meng 2
  • Test.py module

    Test.py module

    Hello!

    I really appreciate your paper and sharing the code for it. I wonder is there an option to make a test on the trainned network on another image? I saw test dict in config file, but I'm not sure it is implemented for now. Is there any plans for it or will you please suggest how can it be done better?

    Thanks!

    opened by valeriylo 0
  • 运行 train.py时报错

    运行 train.py时报错

    Traceback (most recent call last): File "D:/论文代码书/代码/高光谱影像分类/全卷积FCN/FreeNet-master/train.py", line 60, in train.run(config_path=args.config_path, File "D:\Anaconda\envs\Pytorch\lib\site-packages\simplecv-0.3.4-py3.8.egg\simplecv\dp_train.py", line 29, in run cfg = config.import_config(config_path) File "D:\Anaconda\envs\Pytorch\lib\site-packages\simplecv-0.3.4-py3.8.egg\simplecv\util\config.py", line 5, in import_config m = importlib.import_module(name='{}.{}'.format(prefix, config_name)) File "D:\Anaconda\envs\Pytorch\lib\importlib_init_.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1014, in _gcd_import File "", line 991, in _find_and_load File "", line 973, in _find_and_load_unlocked ModuleNotFoundError: No module named 'configs.None'

    opened by Zhengpu-L 1
  • 在安装simpleCV时出现报错

    在安装simpleCV时出现报错

    您好,我在终端安装simpleCV时出现了以下报错: ERROR: Could not find a version that satisfies the requirement tensorboardX==1.7 (from simplecv) (from versions: none) ERROR: No matching distribution found for tensorboardX==1.7 请问您知道如何解决吗,simpleCV是基于tensorflow框架的吗,但freenet好像是基于pytorch,很抱歉打扰您

    opened by wangk98 3
Releases(v1.2)
Owner
Zhuo Zheng
CV IN RS. Ph.D. Student.
Zhuo Zheng
DimReductionClustering - Dimensionality Reduction + Clustering + Unsupervised Score Metrics

Dimensionality Reduction + Clustering + Unsupervised Score Metrics Introduction

11 Nov 15, 2022
Implementation for paper: Self-Regulation for Semantic Segmentation

Self-Regulation for Semantic Segmentation This is the PyTorch implementation for paper Self-Regulation for Semantic Segmentation, ICCV 2021. Citing SR

Dong ZHANG 30 Nov 21, 2022
A trashy useless Latin programming language written in python.

Codigum! The first programming langage in latin! (please keep your eyes closed when if you read the source code) It is pretty useless though. Document

Bic 2 Oct 25, 2021
Animal Sound Classification (Cats Vrs Dogs Audio Sentiment Classification)

this is a simple artificial neural network model using deep learning and torch-audio to classify cats and dog sounds.

crispengari 3 Dec 05, 2022
The source code and dataset for the RecGURU paper (WSDM 2022)

RecGURU About The Project Source code and baselines for the RecGURU paper "RecGURU: Adversarial Learning of Generalized User Representations for Cross

Chenglin Li 17 Jan 07, 2023
Official repository for the paper, MidiBERT-Piano: Large-scale Pre-training for Symbolic Music Understanding.

MidiBERT-Piano Authors: Yi-Hui (Sophia) Chou, I-Chun (Bronwin) Chen Introduction This is the official repository for the paper, MidiBERT-Piano: Large-

137 Dec 15, 2022
ServiceX Transformer that converts flat ROOT ntuples into columnwise data

ServiceX_Uproot_Transformer ServiceX Transformer that converts flat ROOT ntuples into columnwise data Usage You can invoke the transformer from the co

Vis 0 Jan 20, 2022
PRTR: Pose Recognition with Cascade Transformers

PRTR: Pose Recognition with Cascade Transformers Introduction This repository is the official implementation for Pose Recognition with Cascade Transfo

mlpc-ucsd 133 Dec 30, 2022
Rust bindings for the C++ api of PyTorch.

tch-rs Rust bindings for the C++ api of PyTorch. The goal of the tch crate is to provide some thin wrappers around the C++ PyTorch api (a.k.a. libtorc

Laurent Mazare 2.3k Dec 30, 2022
Magisk module to enable hidden features on Android 12 Developer Preview 1.

Android 12 Extensions This is a Magisk module that enables hidden features on Android 12 Developer Preview 1. Features Scrolling screenshots Wallpaper

Danny Lin 384 Jan 06, 2023
A PyTorch-based library for fast prototyping and sharing of deep neural network models.

A PyTorch-based library for fast prototyping and sharing of deep neural network models.

78 Jan 03, 2023
Library for fast text representation and classification.

fastText fastText is a library for efficient learning of word representations and sentence classification. Table of contents Resources Models Suppleme

Facebook Research 24.1k Jan 01, 2023
"Graph Neural Controlled Differential Equations for Traffic Forecasting", AAAI 2022

Graph Neural Controlled Differential Equations for Traffic Forecasting Setup Python environment for STG-NCDE Install python environment $ conda env cr

Jeongwhan Choi 55 Dec 28, 2022
Keras-1D-ACGAN-Data-Augmentation

Keras-1D-ACGAN-Data-Augmentation What is the ACGAN(Auxiliary Classifier GANs) ? Related Paper : [Abstract : Synthesizing high resolution photorealisti

Jae-Hoon Shim 7 Dec 23, 2022
BC3407-Group-5-Project - BC3407 Group Project With Python

BC3407-Group-5-Project As the world struggles to contain the ever-changing varia

1 Jan 26, 2022
StarGAN v2-Tensorflow - Simple Tensorflow implementation of StarGAN v2

Official Tensorflow implementation Open ! - Clova AI StarGAN v2 — Un-official TensorFlow Implementation [Paper] [Pytorch] : Diverse Image Synthesis f

Junho Kim 110 Jul 02, 2022
Mini-hmc-jax - A simple implementation of Hamiltonian Monte Carlo in JAX

mini-hmc-jax This is a simple implementation of Hamiltonian Monte Carlo in JAX t

Martin Marek 6 Mar 03, 2022
PyTorch implementation of the Transformer in Post-LN (Post-LayerNorm) and Pre-LN (Pre-LayerNorm).

Transformer-PyTorch A PyTorch implementation of the Transformer from the paper Attention is All You Need in both Post-LN (Post-LayerNorm) and Pre-LN (

Jared Wang 22 Feb 27, 2022
Learning Visual Words for Weakly-Supervised Semantic Segmentation

[IJCAI 2021] Learning Visual Words for Weakly-Supervised Semantic Segmentation Implementation of IJCAI 2021 paper Learning Visual Words for Weakly-Sup

Lixiang Ru 24 Oct 05, 2022
Pytorch for Segmentation

Pytorch for Semantic Segmentation This repo has been deprecated currently and I will not maintain it. Meanwhile, I strongly recommend you can refer to

ycszen 411 Nov 22, 2022