Papers
Topics
Authors
Recent
Search
2000 character limit reached

Sensor-Guided Optical Flow

Updated 10 July 2026
  • Sensor-guided optical flow is a technique that integrates sparse sensor-derived hints such as depth and pose into deep networks to enhance motion estimation.
  • It modulates correlation volumes in architectures like RAFT to overcome issues like occlusions, low texture, and domain shifts.
  • Hybrid approaches merge classical sensor fusion with learned models, benefiting applications from robotic navigation to UAV flight control.

Sensor-guided optical flow denotes a class of methods in which optical-flow estimation is constrained, regularized, or disambiguated by auxiliary sensing rather than inferred from image pairs alone. In the formulation introduced in "Sensor-Guided Optical Flow" (Poggi et al., 2021), sparse yet accurate optical flow hints from an external source are injected into the correlation scores of a state-of-the-art optical flow network, guiding the estimator toward more accurate predictions on both known and unseen domains. In a broader robotics and vision context, related systems use depth, pose, inertial measurements, proprioception, event timing, and on-sensor motion hardware to shape either the flow estimate itself or the downstream state estimate derived from flow (Meronen et al., 2020).

1. Conceptual Foundations

The central problem addressed by sensor-guided optical flow is that purely image-based flow estimation is often fragile under domain shift, low texture, occlusion, independently moving objects, or aggressive resource constraints. The 2021 framework formalizes guidance as an external cue that is sparse in space but accurate enough to bias the network’s internal matching process toward plausible displacements (Poggi et al., 2021).

A common misconception is that sensor guidance requires a physical sensor that directly outputs pixelwise flow. The 2021 framework explicitly states the opposite: no real sensor can provide sparse flow hints directly, and the hints must instead be obtained by combining depth measurements from active sensors with geometry and hand-crafted optical flow algorithms. In that sense, the method is not a replacement for learned optical flow; it is a hybrid estimator in which sensing-derived priors reshape the network’s search space.

The broader literature shows that “guidance” is not limited to external depth. In mobile robotics, a sensorimotor model can condition future optical flow on past action and proprioception, with state variables of the form Xt{OFtΔ,AtΔ,VtΔ}X_t \equiv \{OF_{t-\Delta}, A_{t-\Delta}, V_{t-\Delta}\} and a predictive distribution over future flow (Ribes et al., 2012). In visual-inertial tracking, dense learned flow can be fused with IMU data in an EKF-style update, where the inertial state prediction guides interpretation of the flow field and per-pixel flow uncertainty controls the measurement weighting (Meronen et al., 2020). These variants do not implement the same correlation-volume modulation as the 2021 paper, but they establish sensor guidance as a general design pattern: optical flow becomes a latent variable whose estimation is improved by non-visual information.

2. Correlation-Volume Guidance in Deep Optical Flow

The canonical sensor-guided architecture begins with a modern optical-flow network such as RAFT and inserts the external cue at the all-pairs correlation stage. Two images I0,I1I_0, I_1 are encoded into feature maps F0,F1F_0, F_1 at quarter resolution, a 4D correlation volume CC is computed, and each 2D slice CpC_p is modulated by a Gaussian-shaped mask centered on the hint HpH_p whenever a valid hint exists. The recurrent update machinery then operates on the modulated volume CC' rather than the original CC.

The modulation is defined as

Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),

where vp{0,1}v_p \in \{0,1\} indicates whether a hint is available at pixel I0,I1I_0, I_10, I0,I1I_0, I_11 is the hint location in displacement space, and I0,I1I_0, I_12 are hyper-parameters. In the reported experiments, I0,I1I_0, I_13 and I0,I1I_0, I_14. The rest of the network is unchanged: a GRU-based recurrent update block consumes the guided correlation representation, and convex upsampling produces the full-resolution flow estimate.

The paper further argues that RAFT’s default correlation at I0,I1I_0, I_15 resolution is too coarse for sparse 2D modulation, and therefore introduces Quarter-res RAFT, or QRAFT. The 6th convolution in the encoder changes stride from I0,I1I_0, I_16 so that features are computed at I0,I1I_0, I_17 rather than I0,I1I_0, I_18 resolution, and channels are reduced from I0,I1I_0, I_19 to keep GPU memory in check. Upsampling is modified accordingly by predicting a F0,F1F_0, F_10 reconstruction mask at quarter resolution instead of an F0,F1F_0, F_11 mask at one-eighth resolution. Training remains end to end with the standard weighted multi-step endpoint error loss,

F0,F1F_0, F_12

and no additional hint-consistency loss is introduced (Poggi et al., 2021).

3. Constructing Sparse Flow Hints from Sensors

Because no real sensor outputs the required sparse 2D hints directly, the 2021 framework constructs a “virtual flow sensor” from several components. For ego-motion flow, depth F0,F1F_0, F_13 is measured at pixels in F0,F1F_0, F_14 using LIDAR or ToF, the relative pose F0,F1F_0, F_15 is estimated by solving a PnP problem over image-depth correspondences with RANSAC, and each pixel is back-projected, transformed, and re-projected:

F0,F1F_0, F_16

The resulting ego-motion flow is then defined as F0,F1F_0, F_17.

The pipeline filters outliers by a forward-backward check. A backward flow F0,F1F_0, F_18 is computed, warped forward, and accepted only if

F0,F1F_0, F_19

To increase the support of the consistency mask, depth is densified by fast marching or bilateral inpainting before warping. Dynamic-object flow is estimated separately by a hand-crafted method, specifically RICFlow, and subjected to the same forward-backward consistency filtering. A Mask-RCNN semantic mask then combines the two sources: background pixels use the ego-motion flow, while object pixels use the hand-crafted flow. On KITTI-142 this pipeline yields a sparse, accurate hint set with density CC0–CC1 and EPE CC2 px (Poggi et al., 2021).

Related robotics systems provide a useful contrast. A ground-related odometry sensor for micro aerial vehicles combines ground-facing optical flow from the Raspberry Pi SoC’s Coarse Motion Estimator with an ultrasonic height sensor and, optionally, a 3-axis MEMS gyro; metric velocities are obtained by a pinhole projection model and robust aggregation via RANSAC (Écorchard et al., 2019). Earlier quadrotor work also demonstrated hovering control using a single-chip optical flow sensor conventionally used for desktop mice, implemented on an 8-bit microprocessor without external sensors or communication with a ground control station (Lim et al., 2012). These systems do not supply correlation-volume hints to a learned network, but they show that sensor-derived flow priors and flow-distance fusion predate the deep hint-injection formulation.

4. Training Protocol and Quantitative Performance

The training schedule for QRAFT follows a staged RAFT-style regime. Pre-training uses FlyingChairs for 100 K steps with batch size CC3 and crop CC4, followed by FlyingThings3D for 100 K steps with batch size CC5 and crop CC6. Fine-tuning runs for 50 K steps each on Sintel at CC7 or KITTI-58 at CC8. When training in guided mode, each iteration samples CC9 of ground-truth pixels, perturbs their offsets with uniform noise in CpC_p0 px, constructs CpC_p1 and CpC_p2, forms the guided correlation CpC_p3, and proceeds with the standard forward pass.

Even before test-time guidance, QRAFT improves over RAFT in the reported single-GPU runs. With CpC_p4 pretraining, RAFT reports Sintel Clean CpC_p5, Final CpC_p6, Middlebury EPE CpC_p7, KITTI ’12 EPE CpC_p8 with F1 CpC_p9, and KITTI-142 EPE HpH_p0 with F1 HpH_p1, whereas QRAFT reports Sintel Clean HpH_p2, Final HpH_p3, Middlebury EPE HpH_p4, KITTI ’12 EPE HpH_p5 with F1 HpH_p6, and KITTI-142 EPE HpH_p7 with F1 HpH_p8. Under simulated hints at HpH_p9 density and CC'0 px, the same CC'1 model improves further to Sintel Clean CC'2, Final CC'3, Middlebury EPE CC'4, KITTI ’12 EPE CC'5 F1, and KITTI-142 EPE CC'6 with F1 CC'7 (Poggi et al., 2021).

The sensor-guided test-time results on KITTI-142 are summarized below.

Pretraining KITTI-142 EPE without hints KITTI-142 EPE with sensor hints
C 9.61 5.88
C+T 6.21 4.55
C+T+S 5.02 4.32
C+T+K 2.58 2.08

These figures show two distinct effects. First, quarter-resolution correlation alone improves the baseline architecture. Second, sparse guidance remains beneficial both in cross-domain settings, where the gain is large, and in fine-tuned settings, where the absolute gain is smaller but still measurable. The paper’s qualitative examples further report correction of large errors under occlusions, in low texture, and on independently moving objects (Poggi et al., 2021).

A major neighboring paradigm is dense flow assisted inertial navigation. In "Movement Tracking by Optical Flow Assisted Inertial Navigation," consecutive frames are processed by FlowNet 2.0, Monte Carlo dropout in the final fusion layers yields per-pixel standard deviations CC'8, and these uncertainties define the covariance of each EKF measurement update. The state includes position, velocity, orientation, IMU biases, accelerometer scale errors, and the previous camera pose; each selected flow pixel contributes a reprojection or triangulation-based constraint. On real-world data acquired by an iPad in a very low-texture corridor, GNSS alone exhibits CC'9 m drift over a CC0 m loop, Apple ARKit shows residual CC1–CC2 m absolute error, and the flow-assisted EKF reports average CC3–CC4 m error (Meronen et al., 2020).

Another paradigm uses action and proprioception as the guidance signal. "Sensory Anticipation of Optical Flow in Mobile Robotics" learns an online Gaussian-mixture model of the joint distribution over past optical flow, past action, and past proprioceptive reading, then predicts future optical flow by conditioning on the active component. The reported empirical result is that including action reduces AEPE by roughly CC5 over the naïve predictor, nearly independently of the number of GMM components, and that the learned collision signal can predict bumper-trigger events up to CC6 s before they occur (Ribes et al., 2012).

Event-based vision has produced several additional forms of sensor guidance. DistSurf-OF constructs a distance surface CC7 from asynchronous events and then treats CC8 as analogues of intensity gradients in a Horn–Schunck-style variational estimator; with denoising, the reported results include checkerboard RAEE CC9, AAE Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),0, classroom RAEE Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),1, AAE Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),2, and reductions of AAE by more than Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),3 relative to state-of-the-art DVS flow methods in complex scenes (Almatrafi et al., 2020). SOFAS, by contrast, represents events as a 3D Event Contour Extrusion in Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),4 space and searches for the velocity-aligned projection that maximizes a sharpness metric Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),5; on synthetic ground-truth datasets it reports magnitude errors Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),6–Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),7 and angle errors Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),8–Cp(x,y)=(1vp)Cp(x,y)+vpkexp ⁣((xxp)2+(yyp)22c2)Cp(x,y),C'_p(x,y) = (1-v_p)\cdot C_p(x,y) + v_p\cdot k\cdot \exp\!\left(-\frac{(x-x_p^*)^2+(y-y_p^*)^2}{2c^2}\right)\cdot C_p(x,y),9, compared with Lucas–Kanade magnitude errors vp{0,1}v_p \in \{0,1\}0 and angle errors vp{0,1}v_p \in \{0,1\}1–vp{0,1}v_p \in \{0,1\}2 (Stoffregen et al., 2018). A more recent event-camera tracking system uses optical flow to guide 2D–3D corner-edge association for iterative SE(3) pose refinement, reporting lower rotation and translation errors than nearest-neighbor and line-based baselines in both simulated and real-event sequences (Liu et al., 24 Dec 2025).

6. Edge Hardware, Robotics Deployment, and Limitations

Sensor-guided optical flow has immediate consequences for embedded deployment. The VD56G3 optical-flow camera integrates a vp{0,1}v_p \in \{0,1\}3 MP global-shutter imager with an ASIC that performs feature-based optical flow estimation. The reported operating points include up to vp{0,1}v_p \in \{0,1\}4 fps at the full resolution of vp{0,1}v_p \in \{0,1\}5 pixels and up to vp{0,1}v_p \in \{0,1\}6 fps at a reduced camera resolution of vp{0,1}v_p \in \{0,1\}7, with optical-flow power between vp{0,1}v_p \in \{0,1\}8 mW and vp{0,1}v_p \in \{0,1\}9 mW depending on the mode. The ASIC implements FAST corner detection, BRIEF descriptor generation, Hamming-distance matching, and optional ratio-test filtering, and outputs up to I0,I1I_0, I_100 simultaneous flow vectors per frame within a VGA-sized window (Kühne et al., 2023).

The same hardware has been integrated into VINS-Mono by replacing the CPU-based feature tracker with ASIC-generated flow vectors. The resulting OF VINS-Mono reports a I0,I1I_0, I_101 reduction in latency and a I0,I1I_0, I_102 reduction of compute load over the original implementation, allowing operation up to I0,I1I_0, I_103 FPS instead of I0,I1I_0, I_104 FPS on the quad-core ARM Cortex-A72 processor of a Raspberry Pi Compute Module 4. Average end-to-end latency drops from I0,I1I_0, I_105 ms to I0,I1I_0, I_106 ms, and total system power with VIO drops from I0,I1I_0, I_107 W to I0,I1I_0, I_108 W (Kühne et al., 2024).

Optical-flow-guided control has also been demonstrated in aggressive flight. "Seeing Through Pixel Motion" uses NeuFlow for dense flow estimation at I0,I1I_0, I_109 Hz on a Jetson, downsamples flow to a I0,I1I_0, I_110 grid as a low-pass filter, and couples a central flow attention mechanism with an action-guided active sensing strategy that steers the high-resolution crop toward the direction of motion. In simulation, the ground-truth-flow policy achieves I0,I1I_0, I_111 success at I0,I1I_0, I_112 m/s and the NeuFlow-based policy achieves I0,I1I_0, I_113 at I0,I1I_0, I_114 m/s; in zero-shot sim-to-real transfer on an FPV racing drone, the system reports peak speed I0,I1I_0, I_115 m/s and more than I0,I1I_0, I_116 collision-free performance in I0,I1I_0, I_117 trials per environment across dense forest, sparse forest, tree branches, and cluttered indoor scenes (Hu et al., 2024).

The limitations of sensor-guided optical flow are correspondingly heterogeneous. In the 2021 correlation-modulation framework, the main limitation is upstream: hints must be synthesized from depth, pose, classical optical flow, and semantic masks because no physical sensor provides them directly (Poggi et al., 2021). In on-sensor flow hardware, the output is sparse, there is no sub-pixel or iterative refinement, and loop closure may still require host-side descriptor extraction (Kühne et al., 2024). In flow-based quadrotor control, optical-flow ambiguity under pure rotation and near the Focus of Expansion remains a challenge at very high speeds above I0,I1I_0, I_118 m/s (Hu et al., 2024). In event-based variational methods, the dominant bottleneck can remain the flow solver rather than the event representation itself (Almatrafi et al., 2020). Taken together, these results indicate that sensor guidance is not a single algorithmic trick but a spectrum of mechanisms for constraining motion estimation under real sensing, compute, and control constraints.

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Sensor-Guided Optical Flow.