actaug: simulator action-augmentation generation code, Table-2 eval protocol, raw dumps of the 256 prio episodes
bd08baf verified Download actaug/code/robocasa_coacd/compare_settle.py from Ronaldo-GOAT/transfer: direct link, hf CLI and curl.
- Browser
- Download file 1.81 kB
-
https://huggingface.co/Ronaldo-GOAT/transfer/resolve/main/actaug/code/robocasa_coacd/compare_settle.py
- Command line
-
hf download hf://Ronaldo-GOAT/transfer/actaug/code/robocasa_coacd/compare_settle.py
-
curl -L -o compare_settle.py https://huggingface.co/Ronaldo-GOAT/transfer/resolve/main/actaug/code/robocasa_coacd/compare_settle.py
1.81 kB
| """Stage-0 only comparison: for every test pair, build the swapped model with BOTH the | |
| baseline runner and the PRIO runner, place the object upright, settle 60 steps and record | |
| up_cos / bottom_err / verticality verdict. No policy, no rollout.""" | |
| import os, sys, json, math | |
| os.environ.setdefault("MUJOCO_GL","egl"); os.environ.setdefault("PYOPENGL_PLATFORM","egl") | |
| W="/lp-dev/jonghoon/actaug/robocasa_coacd" | |
| sys.path.insert(0,W); sys.path.insert(0,"/lp-dev/jonghoon/actaug"); sys.path.insert(0,"/lp-dev/jonghoon/mimicgen_augment") | |
| import numpy as np | |
| import actaug_runner_coacd as B, actaug_runner_coacd_prio as P | |
| from swap_and_render import swap_object_in_xml | |
| from constrained import inject_weld | |
| from actaug_core import load_episode, make_env, reset_episode | |
| pairs=[] | |
| for k in "ABCD": pairs += json.load(open(f"{W}/priotest/pairs_prio_{k}.json")) | |
| env=make_env(load_episode(B.DS,int(pairs[0]["ep"]))["env_args"]) | |
| out=[] | |
| for p in pairs: | |
| e,t,s0=int(p["ep"]),p["target"],int(p["seed0"]) | |
| row={"ep":e,"target":t,"seed0":s0} | |
| ep=load_episode(B.DS,e); base=B.remap(ep["xml"]) | |
| full=swap_object_in_xml(base,*t.split("/")) | |
| sjit=float(np.random.default_rng(s0).uniform(0.96,1.04)) | |
| row["s_jit"]=round(sjit,4) | |
| for tag,R in (("baseline",B),("prio",P)): | |
| vis=R.swap_full_to_sam3d(R.remap(full),t,sjit) | |
| xml=inject_weld(R.remap(vis),"0.005 1"); ep_a=dict(ep,xml=xml) | |
| reset_episode(env,ep_a) | |
| ok,up,err=R.place_upright(env,e,quiet=True) | |
| row[tag]={"vertical":int(ok),"up_cos":round(float(up),4),"bottom_err_cm":round(float(err)*100,2)} | |
| print(f" ep{e} {t} {tag}: vert={int(ok)} up_cos={up:.4f} bottom_err={err*100:.2f}cm",flush=True) | |
| out.append(row); json.dump(out,open(f"{W}/priotest/settle_compare.json","w"),indent=1) | |
| print("SETTLE_DONE",flush=True) | |