Fix Grad-CAM crash in shared encoder mode
Access model.image_encoder instead of model.drone_encoder/sat_encoder when shared_encoder=True. Caused AttributeError at eval epoch 4. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -200,8 +200,11 @@ def generate_gradcam_samples(
|
|||||||
save_dir.mkdir(parents=True, exist_ok=True)
|
save_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
model.eval()
|
model.eval()
|
||||||
cam_drone = DINOv3GradCAM(model.drone_encoder, target_layer_idx=-1)
|
# Shared encoder mode uses single image_encoder for both branches.
|
||||||
cam_sat = DINOv3GradCAM(model.sat_encoder, target_layer_idx=-1)
|
drone_enc = model.image_encoder if model.shared_encoder else model.drone_encoder
|
||||||
|
sat_enc = model.image_encoder if model.shared_encoder else model.sat_encoder
|
||||||
|
cam_drone = DINOv3GradCAM(drone_enc, target_layer_idx=-1)
|
||||||
|
cam_sat = DINOv3GradCAM(sat_enc, target_layer_idx=-1)
|
||||||
|
|
||||||
overlays = []
|
overlays = []
|
||||||
batch = next(iter(dataloader))
|
batch = next(iter(dataloader))
|
||||||
|
|||||||
Reference in New Issue
Block a user