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
Semi-Supervised Graph Prototypical Networks for Hyperspectral Image Classification, IGARSS, 2021.

Semi-Supervised Graph Prototypical Networks for Hyperspectral Image Classification, IGARSS, 2021. Bobo Xi, Jiaojiao Li, Yunsong Li and Qian Du. Code f

Bobo Xi 7 Nov 3, 2022
PyTorch implementation of our method for adversarial attacks and defenses in hyperspectral image classification.

Self-Attention Context Network for Hyperspectral Image Classification PyTorch implementation of our method for adversarial attacks and defenses in hyp

null 22 Dec 2, 2022
paper: Hyperspectral Remote Sensing Image Classification Using Deep Convolutional Capsule Network

DC-CapsNet This is a tensorflow and keras based implementation of DC-CapsNet for HSI in the Remote Sensing Letters R. Lei et al., "Hyperspectral Remot

LEI 7 Nov 29, 2022
Spectralformer: Rethinking hyperspectral image classification with transformers

The code in this toolbox implements the "Spectralformer: Rethinking hyperspectral image classification with transformers". More specifically, it is detailed as follow.

Danfeng Hong 104 Jan 4, 2023
Code for the CVPR2021 paper "Patch-NetVLAD: Multi-Scale Fusion of Locally-Global Descriptors for Place Recognition"

Patch-NetVLAD: Multi-Scale Fusion of Locally-Global Descriptors for Place Recognition This repository contains code for the CVPR2021 paper "Patch-NetV

QVPR 368 Jan 6, 2023
Deep learning toolbox based on PyTorch for hyperspectral data classification.

Deep learning toolbox based on PyTorch for hyperspectral data classification.

Nicolas 304 Dec 28, 2022
An end-to-end PyTorch framework for image and video classification

What's New: March 2021: Added RegNetZ models November 2020: Vision Transformers now available, with training recipes! 2020-11-20: Classy Vision v0.5 R

Facebook Research 1.5k Dec 31, 2022
🐤 Nix-TTS: An Incredibly Lightweight End-to-End Text-to-Speech Model via Non End-to-End Distillation

?? Nix-TTS An Incredibly Lightweight End-to-End Text-to-Speech Model via Non End-to-End Distillation Rendi Chevi, Radityo Eko Prasojo, Alham Fikri Aji

Rendi Chevi 156 Jan 9, 2023
Implementation of Transformer in Transformer, pixel level attention paired with patch level attention for image classification, in Pytorch

Transformer in Transformer Implementation of Transformer in Transformer, pixel level attention paired with patch level attention for image c

Phil Wang 272 Dec 23, 2022
BarcodeRattler - A Raspberry Pi Powered Barcode Reader to load a game on the Mister FPGA using MBC

Barcode Rattler A Raspberry Pi Powered Barcode Reader to load a game on the Mist

Chrissy 29 Oct 31, 2022