PyTorch implementation of Scale-Aware Triplet Networks
This repository contains code for Scale-Aware Triplet Networks based on Learning Deep Descriptors with Scale-Aware Triplet Networks implemented in PyTorch.
Args:
Input:
criterion = MixedContextLoss(theta_glo=1.15, delta=5, gamma=0.5, scale_aware=True)
y_a = model(input1)
y_p = model(input2)
loss = criterion(y_a, y_p, targets)
optimizer.zero_grad()
loss.backward()
optimizer.step()
Use scale-aware siamese loss:
python train.py --gamma 0 --scale-aware True
Use scale-aware triplet loss:
python train.py --gamma 1 --scale-aware True
Use scale-aware mixed context loss (gamma=0.5):
python train.py --gamma 0.5 --scale-aware True