mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-22 16:51:13 +00:00
Update NetVLAD checkpoint paths and enhance .gitignore
ci/woodpecker/push/02-build-push Pipeline failed
ci/woodpecker/push/02-build-push Pipeline failed
- Changed paths in documentation and configuration files to reflect the new naming convention for the NetVLAD model, transitioning from `models/netvlad/netvlad.pt` to `models/net_vlad/net_vlad.pt`. - Updated the `.gitignore` to include additional file types and directories related to input data and locally-generated evidence frames. - Removed the old NetVLAD checkpoint file as part of the transition to the new naming scheme. These changes ensure consistency across the project and improve the management of generated files.
This commit is contained in:
@@ -44,22 +44,22 @@ The user was presented options A-E on 2026-05-29 and skipped the choice. Per "us
|
||||
|
||||
## Goal
|
||||
|
||||
Provision a NetVLAD-VGG16 `.pt` checkpoint at `models/netvlad/netvlad.pt` + matching `BackboneConfig` entry in `configs/operator_replay.yaml` so the AZ-839 fixture skip-gate clears and the AZ-840 orchestrator can compose c10 (+ c2_vpr) into a real pipeline run.
|
||||
Provision a NetVLAD-VGG16 `.pt` checkpoint at `models/net_vlad/net_vlad.pt` + matching `BackboneConfig` entry in `configs/operator_replay.yaml` so the AZ-839 fixture skip-gate clears and the AZ-840 orchestrator can compose c10 (+ c2_vpr) into a real pipeline run. File stem MUST equal `c2_vpr.net_vlad.MODEL_NAME == "net_vlad"` — the PyTorch FP16 runtime uses `path.stem` as the architecture-registry lookup key.
|
||||
|
||||
## Scope
|
||||
|
||||
1. **Write `scripts/mk_netvlad_checkpoint.py`** — generates a deterministic `.pt`:
|
||||
* Loads `torchvision.models.vgg16(weights="IMAGENET1K_V1")` features, slices `[:-2]` to match `_NetVladVgg16.encoder`.
|
||||
* Seeds `torch.manual_seed(0)`, instantiates `make_net_vlad_vgg16(num_clusters=64, encoder_dim=512, descriptor_dim=4096)`, overlays ImageNet features into `encoder.*` keys.
|
||||
* Saves to `models/netvlad/netvlad.pt`.
|
||||
* Saves to `models/net_vlad/net_vlad.pt`.
|
||||
* Prints SHA-256 + key composition.
|
||||
2. **Add `models/**/*.pt`, `*.onnx`, `*.engine` to `.gitattributes` for git-lfs**.
|
||||
3. **Commit `models/netvlad/netvlad.pt` via git-lfs**.
|
||||
3. **Commit `models/net_vlad/net_vlad.pt` via git-lfs**.
|
||||
4. **Update `configs/operator_replay.yaml`**:
|
||||
```yaml
|
||||
c2_vpr:
|
||||
strategy: net_vlad
|
||||
backbone_weights_path: /opt/models/netvlad/netvlad.pt
|
||||
backbone_weights_path: /opt/models/net_vlad/net_vlad.pt
|
||||
netvlad_descriptor_dim: 4096
|
||||
warn_top1_threshold: 0.30
|
||||
|
||||
@@ -67,7 +67,7 @@ Provision a NetVLAD-VGG16 `.pt` checkpoint at `models/netvlad/netvlad.pt` + matc
|
||||
workspace_mb: 4096
|
||||
backbones:
|
||||
- model_name: net_vlad
|
||||
onnx_path: /opt/models/netvlad/netvlad.pt
|
||||
onnx_path: /opt/models/net_vlad/net_vlad.pt
|
||||
expected_input_shape: [3, 480, 480]
|
||||
input_name: input
|
||||
```
|
||||
@@ -78,7 +78,7 @@ Provision a NetVLAD-VGG16 `.pt` checkpoint at `models/netvlad/netvlad.pt` + matc
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
* **AC-1**: `models/netvlad/netvlad.pt` exists in the repo (via git-lfs) with documented provenance + licence.
|
||||
* **AC-1**: `models/net_vlad/net_vlad.pt` exists in the repo (via git-lfs) with documented provenance + licence.
|
||||
* **AC-2**: `torch.load(path, weights_only=True)` + `load_state_dict(strict=True)` on `make_net_vlad_vgg16()` succeeds locally (round-trip verified before commit).
|
||||
* **AC-3**: `configs/operator_replay.yaml` declares the `net_vlad` backbone in `c10_provisioning.backbones` and the `c2_vpr` block with matching `backbone_weights_path`.
|
||||
* **AC-4**: `JETSON_SSH_ALIAS=<alias> bash scripts/run-tests-jetson.sh` no longer SKIPs `test_az840_e2e_real_flight_orchestration` with the empty-backbones message.
|
||||
|
||||
Reference in New Issue
Block a user