How alphaalimamy/famafuse works
FAMAFuse is a PyTorch research implementation for multimodal medical-image fusion, specifically SPECT–MRI and PET–MRI. Its main workflow pairs modality images, trains a fusion network, saves weights, then evaluates the network to produce fused images; PET/SPECT evaluation restores the anatomical image’s color channels. The model combines inter-modal feature fusion, multiscale attention and spatial attention, while training uses similarity and mutual-information losses. The README identifies the paper but documents few operational details; this map follows the sampled Python source and omits uncertain wiring.
Main entry points: train.py Training loop · model.py FAMAFuse model · evaluate.py Evaluation runner · plots_main.py Image comparison plots
Components 18
Image data
- Training patches
dataset.py - Test images
dataset.py
Fusion network
- FAMAFuse model
model.py - Inter-modal fusion
model.py - Multiscale attention
model.py - Spatial attention
model.py - Fused image tensor
model.py
Training
- Training loop
train.py - Fusion losses
losses.py - Adam optimizer
train.py - Saved model weights
train.py
Evaluation and results
- Evaluation runner
evaluate.py - Color restoration
evaluate.py - Fused image files
evaluate.py - Image comparison plots
plots_main.py - Comparison figures
plots_main.py
Other components
- Researcher
- Paired modality images
Connections 20
- Researcher → Training loop: starts training
- Researcher → Evaluation runner: runs evaluation
- Paired modality images → Training patches: reads pairs
- Paired modality images → Test images: reads pairs
- Training loop → Training patches: loads batches
- Training loop → FAMAFuse model: calls model
- FAMAFuse model → Inter-modal fusion: calls
- FAMAFuse model → Multiscale attention: calls
- FAMAFuse model → Spatial attention: calls
- FAMAFuse model → Fused image tensor: returns
- Training loop → Fusion losses: computes loss
- Training loop → Adam optimizer: updates weights
- Training loop → Saved model weights: saves best weights
- Evaluation runner → Test images: loads batches
- Evaluation runner → Saved model weights: loads weights
- Evaluation runner → FAMAFuse model: calls model
- Evaluation runner → Color restoration: restores channels
- Color restoration → Fused image files: writes images
- Fused image files → Image comparison plots: reads images
- Image comparison plots → Comparison figures: saves figures