This project implements a full pipeline for acoustic inversion using wave propagation, machine learning, and causal graph reasoning.
- Simulates acoustic wave propagation in heterogeneous 2D media
- Generates pressure field
p(t,x,y)and integrated hologram - Trains a direct model to simulate holograms from medium parameters
- Trains an inverse model to reconstruct
c(x,y)andρ(x,y)from holograms - Builds causal and backtrace graphs from the wave tensor
- Validates medium reconstruction without ground truth
| File | Description |
|---|---|
TestVoln.py |
Simulates the wave using finite difference |
generate_dataset.py |
Generates synthetic data samples |
train_model_multisample.py |
Trains the direct CNN |
inverse_model_full.py |
Trains and infers the inverse model |
inference.py |
Runs inference without ground truth |
build_graph.py |
Builds full causal graph |
build_backtrace_graph.py |
Builds reduced backtrace graph |
*.pt |
Trained models |
*.png, *.gif |
Visualizations |
*.graphml |
Graph files viewable in Gephi |
wave_propagation.gif: Simulated wave animationtrain_results.png: Side-by-side ground truth and predictioninferred_fields.png: Inferredc(x,y)andρ(x,y)without GTbacktrace_graph.png: Final causal front
pip install torch numpy matplotlib networkx tqdm
License
MIT / CC-BY 4.0 — Open for academic and non-commercial use.