How wangsuibao/dsfa works
DSFA turns labeled seismic volumes into per-section seismic-facies segmentations. The principal workflow is configured training (optionally adversarial), held-out section inference, and accuracy/confusion-matrix review. The graph also retains the documented alternative U-Net architectures and loss choices. Some testing, metrics, and model-saving details are documented but their implementation excerpts were not provided, so those links rely on the README rather than claims of source inspection.
Main entry points: train_U.py U-Net training · train_U_D.py Adversarial training · test_test.py Section inference · dataset.py Section loader
Components 19
Data preparation
- Seismic volumes
- Section splits
data/F3/splits/section_train.txt - Section loader
dataset.py - Split utilities
model/utils.py
Model training
- Hyperparameters
setting.py - U-Net training
train_U.py - Adversarial training
train_U_D.py - Segmentation losses
model/loss.py
Segmentation models
- Pix2pix U-Net
model/modelG.py - Deep U-Net variant
model/modelG8.py - Classic U-Net
model/base_model.py - U-Net experiments
model/U_model.py - Model blocks
model/ModelBlock.py
Inference and review
- Evaluation metrics
model/metrics.py - Section inference
test_test.py - Trained checkpoints
save_train_models - Test scores
result - Result visualization
show_result.py
Other components
- Researcher
Connections 25
- Researcher → Hyperparameters: sets parameters
README.md - Seismic volumes → Section loader: provides labeled data
README.md - Split utilities → Section splits: writes section splits
model/utils.py - U-Net training → Split utilities: creates splits
train_U.py - Adversarial training → Split utilities: creates splits
train_U_D.py - U-Net training → Hyperparameters: reads configuration
train_U.py - Adversarial training → Hyperparameters: reads configuration
train_U_D.py - U-Net training → Section loader: loads sections
train_U.py - Adversarial training → Section loader: loads sections
train_U_D.py - U-Net training → Segmentation losses: selects loss
train_U.py - U-Net training → Pix2pix U-Net: selects generator
train_U.py - Adversarial training → Pix2pix U-Net: uses generator
train_U_D.py - Adversarial training → Segmentation losses: computes pixel loss
train_U_D.py - Adversarial training → Trained checkpoints: saves checkpoints
README.md - U-Net training → Trained checkpoints: saves checkpoints
README.md - Researcher → U-Net training: trains baseline
README.md - Researcher → Adversarial training: trains DSFA
README.md - Trained checkpoints → Section inference: provides model
README.md - Section splits → Section inference: selects test sections
README.md - Section inference → Section loader: loads test data
README.md - Section inference → Evaluation metrics: calculates accuracy
README.md - Section inference → Test scores: writes scores
README.md - Test scores → Result visualization: reads scores
show_result.py - Researcher → Section inference: runs inference
README.md - Researcher → Result visualization: reviews results
README.md