Buckets:
| # Where does object motion come from? — three layers, ground truth only, no masks | |
| Run on cached WAFT flow with the robot silhouette removed. **Exterior views only** (wrist Phi | |
| is camera ego-motion). No SAM, no semantic labels, no training. | |
| ## Layer 1 — global camera motion: prediction REFUTED | |
| A per-frame homography was fitted by RANSAC on the flow outside the robot and subtracted. | |
| | distance | raw | residual | delta | | |
| |---|---|---|---| | |
| | 0-10 px | +0.781 | +0.785 | +0.004 | | |
| | 10-25 | +0.780 | +0.784 | +0.003 | | |
| | 25-50 | +0.745 | +0.748 | +0.004 | | |
| | 50-100 | +0.698 | +0.702 | +0.004 | | |
| | **>100** | **+0.658** | **+0.656** | **-0.002** | | |
| Only **6.3%** of the flow magnitude was global motion, and the far-field +0.66 is untouched. | |
| The hypothesis that the far-field direction agreement is camera drift is **wrong** — the | |
| exterior cameras really are static (non-robot flow p90 = 0.19 px). | |
| ## Layer 2 — Tomasi-Kanade rank: at most one object moves | |
| Trajectories built by chaining flow from a seed grid; W is (2T x P) over points that moved | |
| more than 2 px. Rank <= 4 per rigid object. | |
| | | | | |
| |---|---| | |
| | median rank | **3** (p25 2, p75 3, max 5) | | |
| | rank <= 4 (one object) | **98.9%** | | |
| | rank 5-8 (two objects) | 1.1% | | |
| | rank > 8 | **0.0%** | | |
| Normalised spectrum: 1.00, 0.43, 0.21, 0.12, 0.08, 0.06, 0.05, 0.04, … — the knee is **soft**, | |
| with no rank-4 cliff. That is what cloth looks like, not a rigid body, and it is consistent | |
| with the manipulated objects in these trajectories being towels and cloths. | |
| ## Layer 3 — motion mass by source, and a trap worth recording | |
| Common-fate clustering on full-clip trajectories, then a directed graph by lagged | |
| cross-correlation with the gripper's image-velocity series as root. | |
| | | k forced to 4 | **k from rank** | | |
| |---|---|---| | |
| | m0 gripper -> object (hop 1) | 43.9% | **75.0%** | | |
| | **m1 object -> object (hop >=2)** | 48.1% | **0.0%** | | |
| | m_perp lag-0, attaches to nothing | 0.1% | 4.3% | | |
| | m_none | 7.9% | 20.7% | | |
| | hop-1 lag | 0.02 frames | 0.00 frames | | |
| | hop-2 lag | 1.21 frames | no edges | | |
| The first column looked like a textbook result — hop-1 lag 0.02, hop-2 lag 1.21, exactly the | |
| predicted monotonic increase. **It was an artifact.** Fixing k at 4 shreds one deformable | |
| object into four clusters whose parts lead and lag each other, manufacturing 48% of fake | |
| hop-2 edges. Deriving k from the trajectory rank instead makes m1 collapse to **exactly zero**, | |
| which is what Layer 2 independently said. The lag-by-hop test is sound; it was the clustering | |
| feeding it that was wrong. | |
| ## What this means for the project | |
| 1. **There are no interaction chains in this data.** m1 = 0.0%, and 98.9% of scenes have | |
| rank <= 4. Nothing here teaches robot -> A -> B, so **do not expect a model trained on it to | |
| generalise to tool use.** That has to come from different data, not a better loss. | |
| 2. **m_perp = 4.3%** is the artifact budget measured without any mask — motion that locks to | |
| lag 0 but attaches to no cause (shadow, bleed, estimator noise). Small, and now quantified. | |
| 3. **m_none = 20.7%** is unattributable motion. Worth a look before trusting any Phi-based | |
| metric to be complete. | |
| 4. The right target metric is the **mass vector matched against GT**, not a single scalar to | |
| maximise: a hallucinating model dumps everything into m0 and produces m1 = 0 — which on | |
| this dataset is indistinguishable from correct, so **m1 cannot discriminate here at all.** | |
| ## Caveat on the earlier EDA | |
| Re-running the direction/magnitude EDA over all 391 trajectories, panel C's pearson r fell | |
| from 0.348 (60-trajectory sample) to 0.026. The cause is outliers: gripper image speed reaches | |
| 5.06e7 px/frame when the EE projects near z=0. The **quintile relationship survives** | |
| (0.0027 -> 0.0242, monotonic across all five), so the coupling is real, but that pearson value | |
| is meaningless without clipping. Layers 1 and 3 here clip gripper speed at 60 px/frame. | |
Xet Storage Details
- Size:
- 3.94 kB
- Xet hash:
- e5c47f09494080e3e664a6b60f63700d94f227c9d5adf41856d3beb2b27d8ef8
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.