You need to agree to share your contact information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Log in or Sign Up to review the conditions and access this model content.

3D-AGOS insertion policies

Five trained diffusion policies for Franka plug/socket insertion, with the original checkpoints and the sensing calibration needed by the AGOS variants. Code: Devon018/Insertion-RL. See the code repository's docs/RELEASE.md for runtime setup, scan generation and source lineage.

Models

Bundle directory Inputs Gripper Formal training run
depth_agos_tactile wrist depth + AGOS + tactile GelSight-Mini tactile_agos_pcsim4/depth_tactile_cnn_unet_agos/20260927_010716
depth_agos_gelsight wrist depth + AGOS GelSight-Mini tactile_agos_pcsim4_notactile/depth_cnn_unet_agos/20260929_075123
depth_tactile wrist depth + tactile GelSight-Mini tactile_base_v5_minmax/depth_tactile_cnn_unet/20260908_000723
depth_agos_stock wrist depth + AGOS stock Franka stock_agos_pcsim4_noforce/depth_cnn_unet_agos/20261001_003908
depth_agos_wrench wrist depth + AGOS + 6-D wrist wrench stock Franka wrench_stock_agos_pcsim4_mdb012/depth_wrench_cnn_unet_agos/20260930_135438

These are the baseline policies; no RECAP-improved checkpoint is included. All five are the original checkpoints/last.pt at global step 145000, with training.ema.enabled=true. The repository loader chooses the EMA state used by the benchmark. best_fixed_noise.pt is a different checkpoint and is not substituted.

Each model directory contains checkpoints/last.pt, resolved_config.yaml, normalization_stats.json, normalization_stats.npz, summary.json and git_state.json. Checkpoints preserve the complete original schema, including the raw model, EMA, optimizer state, config and embedded normalization statistics. manifest.json records source runs, training commits, SHA-256, sizes, input shapes and CPU loading checks. Training paths in configs identify source datasets; those paths are not required for inference.

Inputs and architecture

All models use one observation step and predict a chunk of ten 9-D actions: EEF-frame translation plus rot6d. Depth is [B,1,1,480,640]; AGOS image is [B,1,2,80,80]. Tactile sensors are ordered [left,right], with depth, normal and two shear channels on a 20x25 grid. Wrench is [B,1,6] (force + moment). Shapes, normalization and history alignment are defined by each checkpoint. Use the saved normalizer and observation-history adapter before prediction.

Depth and AGOS use separate ResNet-18 encoders. Tactile uses a shared small CNN with sensor embeddings; wrench uses an MLP. Features concatenate and project to a 512-D global condition. A 1-D action UNet receives that condition through FiLM; DDIM uses 20 inference steps, epsilon prediction and eta 0. The AGOS image has plug and socket occupancy channels; the readout vector is produced by the estimator but these released policies encode its image branch.

The wrench model consumes the joint-space wrist_wrench_observer in the stock Franka environment. Its moment components use a 0.012 N m deadband before normalization; force components are retained. This setting is in the checkpoint's saved data config and is applied by the existing loader/live capture helpers.

Download and load

Activate the code repository's Python environment. Choose MODEL_ROOT on a volume with at least 4 GB available, and run from the cloned code repository root:

hf download Devon018/3D-AGOS-Model --local-dir "$MODEL_ROOT"
mkdir -p tmp/model_weights outputs/agos_plug_scans/sim_mv
cp "$MODEL_ROOT/pretrained/resnet18-f37072fd.pth" tmp/model_weights/
cp "$MODEL_ROOT/calibration/plug_scans/"*.npz outputs/agos_plug_scans/sim_mv/

The common pretrained ResNet file satisfies the stored initialization path when constructing the model; the trained checkpoint then strictly replaces its weights. Calibration scans are only needed for models that use AGOS.

import torch
from policy.frozen_base import load_frozen_multimodal_base

base = load_frozen_multimodal_base(
    run_dir="/path/to/model_root/depth_agos_tactile",
    checkpoint="checkpoints/last.pt",
    device=torch.device("cpu"),
)
print(base.describe())

For Isaac Gym evaluation, use scripts/eval_visuo_tactile_policy.sh with the selected bundle directory and asset ID. Set GRIPPER=stock for depth_agos_stock and depth_agos_wrench; the other three use GRIPPER=gelsight. Simulator evaluation needs the TacSL Isaac Gym runtime and consistent camera GPU routing. The existing Isaac Lab evaluator supports the GelSight robot; merging that port does not add a stock-gripper or wrist-wrench Isaac Lab evaluator.

Plug-scan calibration

calibration/plug_scans/ contains 54 existing 700xxx multiview scans. AGOS v4 (plug_scan=sim) expects them at outputs/agos_plug_scans/sim_mv/asset_<id>.npz in the code checkout. Each file contains surface points_plug [N,3] in metres and unit normals_plug [N,3] in the plug frame.

They are acquired by scripts/scan_plug_multiview.sh / isaacgymenvs/scan_plug_multiview.py: one bottom view and eight azimuths at each of three elevations (25 views), a 640x480 depth camera, 60-degree FOV, 8 cm distance, and 0.3 mm voxel subsampling. Simulated segmentation identifies plug pixels, and the known simulated plug pose registers them to the plug frame. OBJ surface sampling only audits coverage/error. Online point-to-plane ICP tracks the scanned plug against wrist depth, including in-hand slip/rotation. Real deployment requires measured depth, segmentation and object-frame registration for its own calibration.

The code release also bundles 900xxx connector geometry. These checkpoints and scans target the existing 700xxx assets; no 900xxx calibration or new connector policy-quality result is supplied.

Validation and scope

Preparation verified the five checkpoint schemas and normalizer checksums, byte-identical copies, strict EMA loading, finite synthetic CPU predictions with shape [1,10,9], and deterministic state-reload agreement. These are loading checks, not new closed-loop success measurements. No new GPU rollout or sim-to-real result was produced for this release. Training summaries preserve the original metrics.

Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading