DeepTFUS: variant E (soft-argmax + Dice on −6 dB iso-volume)

A reproduction attempt of DeepTFUS, proposed by Srivastav et al. (arXiv:2505.12998).

Fine-tune of masonwang025/deeptfus-base that adds an orthogonal-mechanism Dice loss on top of variant C's recipe. Soft-argmax pulls the predicted centroid toward GT; Dice pulls the −6 dB iso-volume shape to match GT. Tests whether the two loss terms compose to fix focal_position_error_mm AND max_pressure_error AND focal-volume bloat simultaneously.

⭐ The only variant that beats paper on max_pressure_error (0.129 vs paper 0.199) and the only variant to tighten the predicted focal blob (3.06× → 2.70×), at the cost of ~0.2 mm of focal_mm vs C.

Modification (vs base, vs C)

loss.focal_weight       0   to 5e-5      (C's recipe; soft-argmax centroid pull)
loss.focal_temperature  :   to 0.03
loss.grad_weight        0.1 to 0.1       (anchor kept)
loss.dice_weight        0   to 3e-3      (NEW: Dice on −6 dB iso-volume)
loss.dice_threshold     :   to 0.5       (= half-max amplitude)
loss.dice_temperature   :   to 0.05      (sigmoid soft-mask sharpness)

Dice term: 1 − Dice(σ((pred−0.5)/0.05), σ((target−0.5)/0.05)). Penalizes pred for having voxels above half-peak amplitude where GT doesn't, and vice versa. Fine-tune ran 10 epochs from base ckpt at lr=3e-5; shipped ckpt is ckpt_epoch_005.pt (best balanced epoch by val_max_p + tied for val_total).

Test results (n = 597)

metric paper base E (this model) Δ vs base
relative_l2 mean ± std 0.414 ± 0.086 0.384 ± 0.078 0.401 ± 0.081 +0.017 (still in paper budget)
focal_position_error_mm mean ± std 2.89 ± 2.14 6.49 ± 4.58 5.32 ± 3.44 −1.17 mm; best std of any variant
focal_position_error_mm median 2.45 5.15 4.39 −0.76 mm (−15%)
max_pressure_error mean ± std 0.199 ± 0.158 0.225 ± 0.116 0.129 ± 0.095 −0.096 (−43%) beats paper
max_pressure_error median 0.166 0.217 0.110 −0.107 (−49%) beats paper
focal_pressure_error median : 0.528 0.421 −0.107
focal_iou_fwhm mean : 0.156 0.164 +0.008 (best of any variant)
inference_latency_s median : 0.233 0.232 unchanged

★ = project best on that metric.

Other variants and discussion

See the Collection for the other 5 variants, and the project page for the full reproduction story, interactive viewer, and discussion of trade-offs.

Usage

from huggingface_hub import hf_hub_download
import torch

ckpt = torch.load(
    hf_hub_download("masonwang025/deeptfus-ft-e-dice-anchored", "ckpt_best.pt"),
    map_location="cpu", weights_only=False,
)

Model code: github.com/masonwang025/deeptfus.

Citation & License

Paper: Srivastav et al., arXiv:2505.12998, 2025.

License: CC-BY-NC-ND-4.0, matching the TFUScapes dataset.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for masonwang025/deeptfus-ft-e-dice-anchored

Finetuned
(5)
this model

Dataset used to train masonwang025/deeptfus-ft-e-dice-anchored

Collection including masonwang025/deeptfus-ft-e-dice-anchored

Paper for masonwang025/deeptfus-ft-e-dice-anchored