A package for SpachTransformer and related models
Project description
Spach Transformer: Spatial and Channel-wise Transformer Based on Local and Global Self-attentions for PET Image Denoising
Se-In Jang, Tinsu Pan, Gary Y. Li, Pedram Heidari, Junyu Chen, Quanzheng Li, and Kuang Gong
News
- Nov 2023: Accepted in IEEE Transactions on Medical Imaging! [Paper]
Brief Introduction
- The focus of this project is on handling 3D PET input data.
- It incorporates a 3D-based approach, utilizing both the Swin Transformer and Restormer architectures specifically adapted for 3D data processing.
Installation
See INSTALL.md for the installation of dependencies required to run Spach Transformer. Do the following for a newer GPU (after activating your conda)
pip install spach-transformer
pip install --upgrade torch torchvision torchaudio
Quick Run with a single sample
import torch
from models import SpachTransformer, Restormer, SwinTransformer
input = torch.rand(1, 1, 96, 96, 96)
model1 = SpachTransformer()
output = model1(input)
model2 = Restormer()
output = model2(input)
Quick Run with a training code
# if your input is about 48
python train.py --simulated_img_size 48 --num_epochs 25 --batch_size 1 --learning_rate 0.0001
# if your input is about 96
python train.py --simulated_img_size 96 --num_epochs 25 --batch_size 1 --learning_rate 0.0001
# if your input is about 128
python train.py --simulated_img_size 128 --num_epochs 25 --batch_size 1 --learning_rate 0.0001
Abstract: Position emission tomography (PET) is widely used in clinics and research due to its quantitative merits and high sensitivity, but suffers from low signal-to-noise ratio (SNR). Recently convolutional neural networks (CNNs) have been widely used to improve PET image quality. Though successful and efficient in local feature extraction, CNN cannot capture long-range dependencies well due to its limited receptive field. Global multi-head self-attention (MSA) is a popular approach to capture long-range information. However, the calculation of global MSA for 3D images has high computational costs. In this work, we proposed an efficient spatial and channel-wise encoder-decoder transformer, Spach Transformer, that can leverage spatial and channel information based on local and global MSAs. Experiments based on datasets of different PET tracers, i.e., 18F-FDG, 18F-ACBC, 18F-DCFPyL, and 68Ga-DOTATATE, were conducted to evaluate the proposed framework. Quantitative results show that the proposed Spach Transformer can achieve better performance than other reference methods.
Citation
If you use Spach Transformer, please consider citing:
@article{jang2022spach,
title={Spach Transformer: Spatial and channel-wise transformer based on local and global self-attentions for PET image denoising},
author={Jang, Se-In and Pan, Tinsu and Li, Ye and Heidari, Pedram and Chen, Junyu and Li, Quanzheng and Gong, Kuang},
journal={arXiv preprint arXiv:2209.03300},
year={2022} }
}
Contact
Should you have any question, please contact sein.jang@yale.edu
Acknowledgment: This code is based on the Restormer and Swin Transformer.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spach-transformer-0.1.1.tar.gz.
File metadata
- Download URL: spach-transformer-0.1.1.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1af244a1d0a23aaf03e8a1a979ef7b722ba33b1a9653fe57b7c8975f0a6e7923
|
|
| MD5 |
02d0812d8b236f55e9f34023a8bada2c
|
|
| BLAKE2b-256 |
d9b9b4d236456789ce983a0aee4c12420a9d64bd00f86bf756c3f32bc386287e
|
File details
Details for the file spach_transformer-0.1.1-py3-none-any.whl.
File metadata
- Download URL: spach_transformer-0.1.1-py3-none-any.whl
- Upload date:
- Size: 15.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28ee27991526d6fbc37d8e4fbaf0b0e4399452536330c28b618e9ccfea6e6cdf
|
|
| MD5 |
ca75e366433d4f02ba853a3798926e73
|
|
| BLAKE2b-256 |
26f4dc38807fa9631653d59670086055a25ee1b858db50ae7e1e525218126103
|