multimodalart HF Staff commited on
Commit
86debe2
·
verified ·
1 Parent(s): d8ed0eb

Upload models/dinov2_encoder.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. models/dinov2_encoder.py +2 -4
models/dinov2_encoder.py CHANGED
@@ -60,11 +60,9 @@ class Dinov2Encoder(nn.Module):
60
  """Forward through HF DINOv2, collecting per-layer features + final norm output."""
61
  features = {}
62
  model = self.encoder
63
- batch_size = x.shape[0]
64
 
65
- # HF DINOv2: patch_embeddings + CLS token + position embeddings
66
  embeddings = model.embeddings(x)
67
- embeddings = model.layernorm_pre(embeddings)
68
 
69
  # Forward through each encoder layer
70
  for i, layer in enumerate(model.encoder.layer):
@@ -76,7 +74,7 @@ class Dinov2Encoder(nn.Module):
76
  embeddings = outputs
77
  features[f'layer_{i}'] = embeddings[:, 1:] # Remove CLS token
78
 
79
- x_norm = model.layernorm(embeddings)
80
  return features, x_norm[:, 1:]
81
 
82
  def preprocess(self, lr: torch.Tensor) -> torch.Tensor:
 
60
  """Forward through HF DINOv2, collecting per-layer features + final norm output."""
61
  features = {}
62
  model = self.encoder
 
63
 
64
+ # HF DINOv2: embeddings (patch + CLS + pos) -> encoder layers -> norm
65
  embeddings = model.embeddings(x)
 
66
 
67
  # Forward through each encoder layer
68
  for i, layer in enumerate(model.encoder.layer):
 
74
  embeddings = outputs
75
  features[f'layer_{i}'] = embeddings[:, 1:] # Remove CLS token
76
 
77
+ x_norm = model.norm(embeddings)
78
  return features, x_norm[:, 1:]
79
 
80
  def preprocess(self, lr: torch.Tensor) -> torch.Tensor: