Add safe ONNX viewer example video
Browse files- .gitattributes +1 -0
- README.md +9 -3
- checksums.sha256 +3 -2
- manifest.json +3 -1
- media/onnx_viewer_example.mp4 +3 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
media/onnx_viewer_example.mp4 filter=lfs diff=lfs merge=lfs -text
|
README.md
CHANGED
|
@@ -11,6 +11,11 @@ An asymmetric Microduck one-foot-balance policy trained using the new
|
|
| 11 |
decomposed **full exterior-shell collision model**. It keeps the right foot
|
| 12 |
lifted while using the left foot as support.
|
| 13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14 |
> [!IMPORTANT]
|
| 15 |
> The policy was observed to work only through the safe ONNX
|
| 16 |
> `scripts/infer_policy.py` deployment-rehearsal path, with randomization off.
|
|
@@ -57,9 +62,9 @@ an action-scale override when reproducing the observed case.
|
|
| 57 |
| `uv run play ... --viewer viser` | Did not reproduce the behavior |
|
| 58 |
| Real Microduck hardware | Never tested |
|
| 59 |
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
|
| 64 |
## Policy contract
|
| 65 |
|
|
@@ -109,6 +114,7 @@ and `config/` for the serialized environment and PPO configuration.
|
|
| 109 |
|
| 110 |
- `policy.onnx` β deployable policy with observation normalizer
|
| 111 |
- `manifest.json` β machine-readable contract and limitations
|
|
|
|
| 112 |
- `checkpoints/model_11500.pt` β resumable exported training checkpoint
|
| 113 |
- `checkpoints/resume_parent_model_8750.pt` β immediate resume parent
|
| 114 |
- `config/env.yaml`, `config/agent.yaml` β instantiated training configuration
|
|
|
|
| 11 |
decomposed **full exterior-shell collision model**. It keeps the right foot
|
| 12 |
lifted while using the left foot as support.
|
| 13 |
|
| 14 |
+
<video controls muted loop src="https://huggingface.co/Teethyfish/microduck-collision-flamingo-ii/resolve/main/media/onnx_viewer_example.mp4" style="max-width:640px;width:100%"></video>
|
| 15 |
+
|
| 16 |
+
The video above records the supported safe ONNX `scripts/infer_policy.py`
|
| 17 |
+
viewer with the full-shell collision model and nominal physics.
|
| 18 |
+
|
| 19 |
> [!IMPORTANT]
|
| 20 |
> The policy was observed to work only through the safe ONNX
|
| 21 |
> `scripts/infer_policy.py` deployment-rehearsal path, with randomization off.
|
|
|
|
| 62 |
| `uv run play ... --viewer viser` | Did not reproduce the behavior |
|
| 63 |
| Real Microduck hardware | Never tested |
|
| 64 |
|
| 65 |
+
The included example video records the supported nominal ONNX-viewer result.
|
| 66 |
+
No quantitative evaluation battery exists for this checkpoint, so the model
|
| 67 |
+
card does not convert that recording into an unsupported success-rate claim.
|
| 68 |
|
| 69 |
## Policy contract
|
| 70 |
|
|
|
|
| 114 |
|
| 115 |
- `policy.onnx` β deployable policy with observation normalizer
|
| 116 |
- `manifest.json` β machine-readable contract and limitations
|
| 117 |
+
- `media/onnx_viewer_example.mp4` β example from the supported safe ONNX viewer
|
| 118 |
- `checkpoints/model_11500.pt` β resumable exported training checkpoint
|
| 119 |
- `checkpoints/resume_parent_model_8750.pt` β immediate resume parent
|
| 120 |
- `config/env.yaml`, `config/agent.yaml` β instantiated training configuration
|
checksums.sha256
CHANGED
|
@@ -5,8 +5,9 @@ b93f6d9fcad26ee2c44b6b82349848759368e51a89421c91357b7509b6aaf6b4 policy.onnx
|
|
| 5 |
81c94b062937157b7a9307ff8b587f5dd09a8e22dda0c6fb42e6be260bf56cbb config/env.yaml
|
| 6 |
45f3476af2b5bba1c3199aadb8372ec1bb08496ca91b08dec78543addd5c8440 reproduction/pyproject.toml
|
| 7 |
2eeeb680025baa737e7ccf3a87da3695a9d49b228de0bb60d8af0c022ab5f1aa reproduction/uv.lock
|
| 8 |
-
|
| 9 |
-
|
|
|
|
| 10 |
b322fb842ead0a730fd0dd4973dc5a42c8f4ec136ad64ed76d442cf6ef7e9e84 reproduction/README.md
|
| 11 |
db8701d27ad43d9fd78f6e031cf9c119d1ab7429793d8a9e928ef1b9efb471c2 reproduction/source-overlay/src/mjlab_microduck/tasks/generated_tasks/one_leg_stand_no_ball.py
|
| 12 |
94b8a6d94913b4668652c7a86bd6b34cf5847316b62482fd4c72b784c33ce7e2 reproduction/source-overlay/src/mjlab_microduck/robot/microduck/robot_fullcollisions.xml
|
|
|
|
| 5 |
81c94b062937157b7a9307ff8b587f5dd09a8e22dda0c6fb42e6be260bf56cbb config/env.yaml
|
| 6 |
45f3476af2b5bba1c3199aadb8372ec1bb08496ca91b08dec78543addd5c8440 reproduction/pyproject.toml
|
| 7 |
2eeeb680025baa737e7ccf3a87da3695a9d49b228de0bb60d8af0c022ab5f1aa reproduction/uv.lock
|
| 8 |
+
de47b2b320ccc853c96fc24b04e03ea504715d9ab4838ef012944bad579b7f96 manifest.json
|
| 9 |
+
ab443c88793540da51ee6194f2247c82a964fa4a4f8b84733784f4b2254afcd5 README.md
|
| 10 |
+
e6b906f8a251e4cf902409ab317aa549c506d391f0a5febcd4ca1fd4f40bb591 media/onnx_viewer_example.mp4
|
| 11 |
b322fb842ead0a730fd0dd4973dc5a42c8f4ec136ad64ed76d442cf6ef7e9e84 reproduction/README.md
|
| 12 |
db8701d27ad43d9fd78f6e031cf9c119d1ab7429793d8a9e928ef1b9efb471c2 reproduction/source-overlay/src/mjlab_microduck/tasks/generated_tasks/one_leg_stand_no_ball.py
|
| 13 |
94b8a6d94913b4668652c7a86bd6b34cf5847316b62482fd4c72b784c33ce7e2 reproduction/source-overlay/src/mjlab_microduck/robot/microduck/robot_fullcollisions.xml
|
manifest.json
CHANGED
|
@@ -70,15 +70,17 @@
|
|
| 70 |
"validation": {
|
| 71 |
"supported_path": "scripts/infer_policy.py with --standing, --new-cmd-obs, --collision-model full_shell, and randomization disabled",
|
| 72 |
"observed_result": "Nominal one-foot standing worked in the safe ONNX deployment-rehearsal viewer.",
|
|
|
|
| 73 |
"unsupported_paths": [
|
| 74 |
"mjlab uv run play with the native viewer",
|
| 75 |
"mjlab uv run play with the Viser viewer",
|
| 76 |
"scripts/infer_policy.py with --training-randomization"
|
| 77 |
],
|
| 78 |
-
"known_limits": "The same behavior did not reproduce in the native/Viser checkpoint viewers. It has not been validated under training-style randomization or on hardware.
|
| 79 |
},
|
| 80 |
"files": {
|
| 81 |
"policy": "policy.onnx",
|
|
|
|
| 82 |
"training_checkpoint": "checkpoints/model_11500.pt",
|
| 83 |
"resume_parent_checkpoint": "checkpoints/resume_parent_model_8750.pt",
|
| 84 |
"environment_config": "config/env.yaml",
|
|
|
|
| 70 |
"validation": {
|
| 71 |
"supported_path": "scripts/infer_policy.py with --standing, --new-cmd-obs, --collision-model full_shell, and randomization disabled",
|
| 72 |
"observed_result": "Nominal one-foot standing worked in the safe ONNX deployment-rehearsal viewer.",
|
| 73 |
+
"example_video": "media/onnx_viewer_example.mp4",
|
| 74 |
"unsupported_paths": [
|
| 75 |
"mjlab uv run play with the native viewer",
|
| 76 |
"mjlab uv run play with the Viser viewer",
|
| 77 |
"scripts/infer_policy.py with --training-randomization"
|
| 78 |
],
|
| 79 |
+
"known_limits": "The same behavior did not reproduce in the native/Viser checkpoint viewers. It has not been validated under training-style randomization or on hardware. The example video shows the nominal safe ONNX-viewer result; no quantitative evaluation battery is available."
|
| 80 |
},
|
| 81 |
"files": {
|
| 82 |
"policy": "policy.onnx",
|
| 83 |
+
"example_video": "media/onnx_viewer_example.mp4",
|
| 84 |
"training_checkpoint": "checkpoints/model_11500.pt",
|
| 85 |
"resume_parent_checkpoint": "checkpoints/resume_parent_model_8750.pt",
|
| 86 |
"environment_config": "config/env.yaml",
|
media/onnx_viewer_example.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e6b906f8a251e4cf902409ab317aa549c506d391f0a5febcd4ca1fd4f40bb591
|
| 3 |
+
size 5130804
|