SPECTRA-VLA: Base-Fine Hyperspectral Token Transfer at Frozen Vision-Language-Action Interfaces
Organizations: National Yang Ming Chiao Tung University, Taiwan
Abstract
Hyperspectral imaging distinguishes RGB-similar objects, but a pretrained vision-language-action model needs a state its frozen decoder can use. SPECTRA-VLA provides a native-width spectral upgrade without retraining the visual encoder or action decoder. A learned continuous residual enriches each target token through its own normalized false-color reference; projection, norm control and validation-calibrated injection regulate the change. Across 86 held-out acquisitions, category balanced accuracy rises from 0.812 to 0.883. With identical residuals and scale, own-token addition improves reuse of an external category-derived probe on frozen decoder logits: 0.701 versus 0.590 with pooled replacement, at similar image-disjoint recognition. Five grouped tests covering the same 86 acquisitions recover within-category spectral shape with from continuous and posterior-code states. Category-matched spectral swaps further show that own-token composition approximately doubles the target-specific recovery increment after frozen decoding. Spectral enrichment and receiving-token preservation thus work together at the pretrained interface.
Figures & tables
| Method | Category bAcc | Category [95% CI] | Token-proxy bAcc | Token [95% CI] | Cos. |
|---|---|---|---|---|---|
| False-color base | 0.812 | [ ] | 0.860 | [ ] | 1.000 |
| High-anchor direct | 0.814 | [ ] | 0.862 | [ ] | 0.991 |
| SPECTRA-VLA (ours) | 0.883 | 0.916 | 0.939 | ||
| No orthogonalization | 0.893 | [ ] | 0.929 | [ ] | 0.937 |
| Representation | bAcc | Within-category | Angle |
|---|---|---|---|
| Image split: 4096-D tokens, 461 objects | |||
| False-color base | – | 0.263 | 0.041 |
| Continuous (ours) | – | 0.824 | 0.019 |
| Category posterior | – | 0.374 | 0.038 |
| Hard category code | – | 0.333 | 0.039 |
| Continuous–posterior | |||
| Composition | Category | Reference-fixed | Refit | Disp. P95 | KL P95 |
|---|---|---|---|---|---|
| Base-fine (ours) | 0.897 | 0.701 | 0.791 | 0.513 | 1.158 |
| Pooled replacement | 0.892 | 0.590 | 0.741 | 0.362 | 5.593 |
| Method | Cat. bAcc | Disp. P95 | KL P95 |
|---|---|---|---|
| Base-fine | 0.880 | 0.188 | 0.152 |
| No pooled-base projection | 0.880 | 0.213 | 0.182 |
Appendix figures & tables35 assets
Supplementary material from the paper’s appendix.
Appendix
| Category (ID) | State | Train/Val./Test |
|---|---|---|
| Film (1) | 1 | 203/67/66 |
| Basket (2) | 2 | 200/54/67 |
| Cardboard (3) | 0 | 35/15/10 |
| Video tape (4) | 3 | 397/117/130 |
| Filament (5) | 1 | 57/20/16 |
| Bag (6) | 1 | 500/169/172 |
| Condition | Category bAcc | Pair | C-proxy bAcc | Correct-spectrum-fixed bAcc | Cosine |
|---|---|---|---|---|---|
| Correct target fine | 0.905 | 0.778 | 0.938 | 0.711 | 0.939 |
| Zero fine (fixed readout) | 0.727 | 0.481 | 0.699 | 0.635 | 1.000 |
| No fine loss (fixed) | 0.868 | 0.691 | 0.889 | 0.681 | 0.939 |
| Wrong-target fine | 0.459 | 0.185 | 0.514 | 0.587 | 0.939 |
| Sample-shuffled fine | 0.510 | 0.235 | 0.521 | 0.586 | 0.939 |
| Class-mismatched fine | 0.337 | 0.074 | 0.449 | 0.587 | 0.939 |
| Input | Mean | Cat. | Proxy | Cos. |
|---|---|---|---|---|
| Continuous spectrum | 4.00 | 0.897 | 0.931 | 0.919 |
| Hard category code | 1.08 | 0.893 | 0.896 | 0.993 |
| Six-class posterior | 2.00 | 0.901 | 0.916 | 0.969 |
| Input | Setting | Seed SD | RMSE | Angle | |
|---|---|---|---|---|---|
| False-color base | 4096-D, allowance 0.2 | 0.263 | 0.000 | 0.906 | 0.041 |
| Continuous spectra (ours) | 4096-D, allowance 0.2 | 0.824 | 0.023 | 0.442 | 0.019 |
| Category posterior | 4096-D, allowance 0.2 | 0.374 | 0.007 | 0.835 | 0.038 |
| Hard category code | 4096-D, allowance 0.2 | 0.333 | 0.006 | 0.862 | 0.039 |
| False-color base | 256-D, allowance 0.2 | 0.217 | 0.000 | 0.933 | 0.043 |
| Continuous spectra (ours) | 256-D, allowance 0.2 | 0.609 | 0.065 | 0.659 | 0.030 |
| State | Angle | Category bAcc | |
|---|---|---|---|
| Continuous spectrum | 0.802 | 0.020 | 0.861 |
| Category posterior | 0.337 | 0.038 | 0.882 |
| False-color base | 0.238 | 0.040 | 0.793 |
| Paired difference | Acquisition 95% CI | |
|---|---|---|
| Spectral content composition | +0.0171 | |
| Addition: own donor spectral recovery | +0.0336 | |
| Replacement: own donor spectral recovery | +0.0165 | |
| Reference-fixed: addition replacement | +0.0257 | |
| Refit: addition replacement | +0.0350 | |
| Reference-fixed: injection composition | +0.0088 |
| Family | Cosine | Category bAcc | Pair | C-proxy bAcc | Reference-fixed bAcc | |
|---|---|---|---|---|---|---|
| Direct | 0.000 | 0.181 | 0.899 | 0.716 | 0.925 | 0.458 |
| Direct | 0.010 | 0.285 | 0.898 | 0.728 | 0.929 | 0.462 |
| Direct | 0.050 | 0.604 | 0.898 | 0.716 | 0.930 | 0.550 |
| Direct | 0.100 | 0.736 | 0.901 | 0.691 | 0.926 | 0.586 |
| Direct | 0.250 | 0.791 | 0.903 | 0.691 | 0.930 | 0.600 |
| Direct | 0.500 | 0.808 | 0.906 | 0.679 | 0.927 | 0.618 |
| Composition | Category | Proxy | Fixed | Cached-trained fixed | Refit | KL P95 |
|---|---|---|---|---|---|---|
| Seed 0; validation-selected scale 4 | ||||||
| Base-fine | 0.884 | 0.928 | 0.701 | 0.707 | 0.757 | 1.096 |
| Pooled replacement | 0.883 | 0.927 | 0.603 | 0.606 | 0.725 | 5.598 |
| Seed 1; validation-selected scale 4 | ||||||
| Base-fine | 0.900 | 0.933 | 0.690 | 0.687 | 0.788 | 1.176 |
| Pooled replacement | 0.896 | 0.918 | 0.574 | 0.576 | 0.734 | 5.584 |
| Spectral input | Composition | Category | Proxy | Fixed | Refit |
|---|---|---|---|---|---|
| None | Original token grid | 0.801 | 0.857 | 0.695 | 0.695 |
| None | Pooled replacement | 0.787 | 0.857 | 0.597 | 0.694 |
| Continuous | Token-wise base-fine | 0.897 | 0.931 | 0.701 | 0.791 |
| Continuous | Pooled replacement | 0.892 | 0.924 | 0.590 | 0.741 |
| Spectral input | Active dim. | Pair | Category | Proxy | Cos. |
|---|---|---|---|---|---|
| Raw bands | 120 | 0.7531 | 0.9163 | 0.9372 | 0.9584 |
| Train-only NMF | 16 | 0.7531 | 0.9077 | 0.9123 | 0.9486 |
| Raw+NMF | 136 | 0.7531 | 0.9187 | 0.9426 | 0.9285 |
| Method | Category | Proxy |
|---|---|---|
| No projection | 0.891 [0.864, 0.928] | 0.929 [0.909, 0.940] |
| Operational base | 0.789 [0.769, 0.803] | 0.826 [0.803, 0.857] |
| Base-fine | 0.891 [0.874, 0.927] | 0.929 [0.909, 0.940] |
| Variant | Norm ratio / | Cos. | KL | |
|---|---|---|---|---|
| (main) | 3.33 | 0.100/0.333 | 0.939 | 1.400 |
| No orthogonalization | 3.00 | 0.100/0.300 | 0.951 | 0.250 |
| No norm bound | 2.00 | 0.671/1.333 | 0.655 | 7.148 |
| 4.00 | 0.025/0.100 | 0.994 | 0.085 | |
| 4.00 | 0.050/0.200 | 0.977 | 0.427 | |
| 3.67 | 0.200/0.733 | 0.800 | 4.828 |
| Method | Cat. | Proxy | Cos. | F1 | Session mean/median/worst-10 |
|---|---|---|---|---|---|
| False-color base | 0.812 | 0.860 | 1.000 | 0.760 | 0.792/0.826/0.401 |
| High-anchor direct | 0.814 | 0.862 | 0.991 | 0.796 | 0.806/0.839/0.433 |
| SPECTRA-VLA (ours) | 0.883 | 0.916 | 0.939 | 0.863 | 0.893 / 0.936 / 0.612 |
| No orthogonalization | 0.893 | 0.929 | 0.937 | 0.877 | 0.892/0.933/0.584 |
| Method | Cosine 0.75 ( ) | Cosine 0.80 ( ) |
|---|---|---|
| Base | 0.593 [0.388, 0.776] | 0.556 [0.212, 0.863] |
| Raw spectrum | 0.630 [0.424, 0.806] | 0.556 [0.212, 0.863] |
| Direct retargeter | 0.691 [0.460, 0.862] | 0.593 [0.212, 0.925] |
| Base-fine | 0.778 [0.537, 0.937] | 0.741 [0.299, 0.972] |
| Base-fine (no pair weighting) | 0.765 [0.498, 0.937] | 0.667 [0.299, 0.925] |
| Metric | [95% CI] | Seed SD |
| Fixed-split base contrast | ||
| Pair | +0.185 [-0.030,+0.443] | 0.037 |
| Category bAcc | +0.104 [+0.058,+0.154] | 0.013 |
| Hard bAcc | +0.059 [-0.013,+0.141] | 0.032 |
| C-proxy bAcc | +0.081 [+0.022,+0.147] | 0.005 |
| Fixed-split direct contrast (exploratory) | ||
| Representation | Refitted probe Acc. | Refitted probe bAcc | Ref.-fixed bAcc / symbol agreement | Category lookup bAcc | 256-KL |
|---|---|---|---|---|---|
| Majority | 0.551 | 0.250 | – | – | – |
| Zero visual | 0.282 | 0.250 | – | 0.250 | – |
| True RGB token | 0.751 | 0.656 | – | 0.615 | 5.251 |
| False-color base | 0.781 | 0.704 | 0.704 / 1.000 | 0.726 | 0.000 |
| Raw+NMF fixed projection ( ) | 0.850 | 0.800 | – | 0.775 | 5.042 |
| Spectral fine only | 0.803 | 0.799 | – | 0.790 | 9.397 |
| Method | Fixed bAcc | F1 | Session mean/median/worst-10 | W/L/T |
|---|---|---|---|---|
| False-color base | 0.705 | 0.640 | 0.682 / 0.750 / 0.162 | – |
| Direct retargeter | 0.560 | 0.533 | 0.621/0.651/0.081 | 27/43/16 |
| Concatenation-projection | 0.447 | 0.362 | 0.391/0.442/0.000 | 8/72/6 |
| SPECTRA-VLA (ours) | 0.684 | 0.612 | 0.658/0.725/0.142 | 18/38/30 |
| Readout fitting | Raw | Injected | |
|---|---|---|---|
| Raw-trained, fixed | 0.730 | 0.647 | 0.611 |
| -trained, fixed | 0.609 | 0.704 | 0.620 |
| State-specific refit | 0.730 | 0.704 | 0.711 |
| Complement seed | KL (action/complement ratio) | Difference [95% session CI] |
|---|---|---|
| 20260813 | 0.086515 (6.029 ) | 0.435093 [0.385371, 0.495584] |
| 20260814 | 0.086559 (6.026 ) | 0.435049 [0.385856, 0.497977] |
| 20260815 | 0.083752 (6.228 ) | 0.437856 [0.387819, 0.498721] |
| Quartile | Disagree (%) | / margin | |
|---|---|---|---|
| 1 | 2.84 | 5.890/5.593 | -0.297 |
| 2 | 3.51 | 4.910/4.857 | -0.053 |
| 3 | 1.93 | 5.586/5.833 | +0.247 |
| 4 | 3.21 | 6.157/6.818 | +0.661 |
| SpatialVLA representation | Cat. | Pair | C-proxy | Cos. | Base-fixed FP | Full KL | Top- 1 agr. |
|---|---|---|---|---|---|---|---|
| False-color base | 0.812 | 0.704 | 0.871 | 1.000 | 0.718 | 0.000 | 1.000 |
| Direct retargeter | 0.836 | 0.642 | 0.888 | 0.229 | 0.588 | 4.529 | 0.155 |
| Base-fine | 0.914 | 0.827 | 0.947 | 0.985 | 0.673 | 0.709 | 0.522 |
| No orthogonalization | 0.894 | 0.753 | 0.928 | 0.974 | 0.703 | 0.594 | 0.611 |
| Representation | Acc. | bAcc | F1 |
|---|---|---|---|
| GT (IoU=1.000) | |||
| Base | 0.781 | 0.704 | 0.642 |
| Base-fine | 0.759 | 0.711 | 0.628 |
| Erode (IoU=0.763) | |||
| Base | 0.759 | 0.683 | 0.617 |
| Base-fine | 0.772 | 0.732 | 0.649 |
| Rank | Parameters | Selected scale | Category bAcc | Pair | C-proxy bAcc | Cosine |
|---|---|---|---|---|---|---|
| SPECTRA-VLA (raw-only) | ||||||
| 1 | 53621 | 1.583 | 0.866 | 0.667 | 0.884 | 0.993 |
| 2 | 57838 | 2.000 | 0.872 | 0.722 | 0.898 | 0.993 |
| 4 | 66272 | 4.000 | 0.890 | 0.815 | 0.908 | 0.981 |
| 8 | 83140 | 2.333 | 0.881 | 0.741 | 0.909 | 0.991 |
| 16 | 116876 | 2.667 | 0.888 | 0.833 | 0.902 | 0.990 |
| Test rendering | Category bAcc | Pair |
|---|---|---|
| Low/mid/high | 0.929 | 0.827 |
| NIR edge | 0.918 | 0.852 |
| Random 3-band | 0.929 | 0.840 |
| Fixed sensor | 0.917 | 0.815 |
| Gain/offset | 0.913 | 0.840 |
| PCA | 0.918 | 0.827 |
| Seed | Retained | Repaired | Acc. |
|---|---|---|---|
| Base-fine | |||
| 0 | 0.986 | 0.469 | 0.879 |
| 1 | 0.973 | 0.583 | 0.892 |
| 2 | 0.967 | 0.573 | 0.885 |
| Mean | 0.975 [0.961, 0.987] | 0.542 [0.437, 0.639] | 0.885 |
| Base-conditioned direct | |||
| Class | False-color base | Direct retargeter | SPECTRA-VLA |
|---|---|---|---|
| Film | 0.758 | 0.929 | 0.894 |
| Basket | 0.776 | 0.905 | 0.876 |
| Cardboard | 0.800 | 1.000 | 1.000 |
| Video tape | 0.792 | 0.846 | 0.887 |
| Filament | 0.875 | 0.875 | 0.896 |
| Bag | 0.802 | 0.835 | 0.876 |
| 1 | 2 | 3 | 4 | 5 | 6 | |
|---|---|---|---|---|---|---|
| 1 | 0.758 | 0.000 | 0.000 | 0.000 | 0.030 | 0.212 |
| 2 | 0.045 | 0.776 | 0.045 | 0.075 | 0.000 | 0.060 |
| 3 | 0.100 | 0.000 | 0.800 | 0.100 | 0.000 | 0.000 |
| 4 | 0.023 | 0.069 | 0.008 | 0.792 | 0.092 | 0.015 |
| 5 | 0.000 | 0.000 | 0.000 | 0.125 | 0.875 | 0.000 |
| 6 | 0.128 | 0.029 | 0.017 | 0.006 | 0.017 | 0.802 |
| Feature (Dim.) | Acc. | bAcc | F1 | Hard | Pair |
|---|---|---|---|---|---|
| Fully loaded pretrained encoders | |||||
| HyperSL (256) | 0.770 | 0.787 | 0.721 | 0.803 | 0.667 |
| MaskedSST (96) | 0.768 | 0.767 | 0.692 | 0.818 | 0.519 |
| SpectralGPT (768) | 0.866 | 0.868 | 0.824 | 0.818 | 0.593 |
| Raw spectral reference | |||||
| Raw spectrum (120) | 0.766 | 0.795 | 0.741 | 0.775 | 0.630 |
Vision-Language-Action Models
Vision-language-action models turn visual observations and natural-language instructions into actions for robots and other embodied agents.
See all 1,194 papers