UniCaMo Unified Camera and Motion Control for Video Diffusion Models

Long Vu* · Tan Ngo* · Animesh Karnewar · Amir Habibian · Binh-Son Hua† · Hung Bui · Minh Hoai Nguyen
Phong Nguyen-Ha

Qualcomm AI Research‡  ·  *Equal contribution  ·  †Binh-Son Hua is affiliated with Trinity College Dublin, Ireland. Work done under consultancy capacity.  ·  ‡Qualcomm AI Research is an initiative of Qualcomm Technologies, Inc.

~0.2s
noise-construction overhead
0
new params at inference
14B
Wan2.1-I2V base (LoRA)
SOTA
motion controllability
Teaser: Wan-Move with 2D tracks versus UniCaMo with 3D tracks on two prompts, showing occlusion-aware motion and camera-motion disentanglement
This teaser demonstrates a man walking and dancing around a woman while the camera pans to the right. UniCaMo jointly controls both object and camera motion through a 3D-grounded noise construction, enabling accurate occlusion handling and consistent appearance in unseen regions across frames, an effect that previous work with 2D cues (Wan-Move; Chu et al., 2025) cannot achieve. PDF ›
01

Method

Three noise layers and one composition rule turn 3D object tracks and a camera path into a single 3D-grounded motion-consistent noise. Click any card to expand.

UniCaMo pipeline: reference image, 3D lifting, interactive GUI control signal, scene representation, foreground/background/spherical noise propagation, depth-aware noise composition, LoRA-finetuned video diffusion model
Pipeline overview. The reference image is lifted to a 3D point cloud, where the user sets 3D object tracks and a camera path in an interactive GUI. Foreground, background and 3D spherical noise are propagated along this motion, rasterized, and merged by depth into a 3D-grounded motion noise that initializes a LoRA-finetuned video diffusion model. No extra modules, no architectural changes. PDF ›
① Foreground Noise

Follows Object and Camera Motion

Each 3D point track on the segmented objects is projected with the target camera pose onto the latent grid, and a 3×3 patch (R = 2) of reference-frame noise is copied along the trajectory.

Going from pure Gaussian noise to foreground propagation more than halves the trajectory error (EPE 8.23 → 3.98). R = 2 is best on all five metrics: a smaller patch weakens the motion signal; a larger one interferes with neighbouring tracks.

② Background Noise

Follows the Camera Only

The reference image is unprojected with its estimated depth; each point carries Gaussian noise in place of its colour. The cloud stays fixed in world space and is rasterized at every camera pose.

The background encodes scene layout, a camera signal that foreground tracks alone cannot supply. Adding it cuts RotErr from 7.76 to 1.51 and TransErr from 30.45 to 18.42.

③ 3D Spherical Noise

Persistent Noise for Revealed Regions

A sphere centred at the reference camera carries a fixed latitude–longitude Gaussian texture. Rays cast through each latent location sample it, so the same direction gets the same noise in every view.

Radius r = max(τ·max‖Ct−C1‖, dmax) with τ = 1.2. The sphere is not scene geometry, only a consistent motion prior; its gain is specific to camera fidelity (TransErr 18.42 → 16.27), with FID and FVD unchanged.

④ Depth-aware Composition

Z-buffer, Then Fill from the Sphere

When several foreground or background points land on one latent cell, the one closest to the camera wins, instead of arbitrary ordering or averaging. Cells still empty take the spherical noise.

Ordering by depth helps throughout the sequence, not only at visible occlusions: EPE 3.35 → 2.95 and CamMC 19.56 → 16.74 over 2D compositing. Without it, a moving object's noise is overwritten by the background and the object stays static.

Why this works. Most controllers inject motion late, through added modules, from 2D cues that are ambiguous in depth and viewpoint. UniCaMo encodes motion up front, in the noise, from 3D cues, so the model starts from a latent already consistent with the target camera and object motion.

Training & inference. LoRA (rank 64) on Wan2.1-I2V-14B with flow matching: 10K steps on 400K clips, with ViPE, SAM3 and TAPIP3D signals used only to build the noise, never as conditioning. At inference the GUI's tracks and camera path drive the same construction: ~0.2 s overhead, no new parameters.

02

Comparison with 2D Noise Warping

Our 3D-grounded noise versus Go-with-the-Flow's 2D optical-flow noise warping, both built from the same ground-truth video. Each method tile shows the noise; hover it to see the generated video.

Ground Truth
UniCaMo (Ours)
Go-with-the-Flow
Noise → video. Noise is shown at each model's latent resolution: 60×104 for UniCaMo and 60×90 for Go-with-the-Flow (480×720 centre crop). Go-with-the-Flow generates 49 frames and the others 81. All clips play over the same duration, so the tiles stay in sync.
03

Noise Visualization

How the motion-consistent noise is built at training time and used at inference time.

Training

Ground Truth
Foreground Noise
Background Noise
Spherical Noise
Composited Noise
Training. We warp the noise using the ground-truth video. TAPIP3D extracts 3D tracks that carry the foreground noise, and the reference point cloud carries the background noise with the camera. The grey area is what neither can cover; the spherical noise fills it in to produce the full 3D-grounded motion-consistent noise that initializes the DiT.

Inference

Control Signal
Foreground + Background
Composited Noise
Result
Inference. The same construction runs on the 3D object tracks and camera path defined in the GUI (see the UI demo below): foreground and background noise first, then the spherical noise fills the grey gaps. The result initializes the DiT, with no extra modules or control adapters.
04

Comparison

Qualitative comparisons for in-the-wild, object motion, camera, and joint camera-and-object control. Click a thumbnail to choose an example.

In-the-Wild Control

Object Motion Control

Camera Control

Joint Control

05

UI Demo

Interactive GUI for unified camera and object motion control. Select objects with polygon masks on the 2D image, then edit their 3D trajectories and the camera path with 6-DoF gizmos in the 3D view.

Interface

Generated Result

Video generated from the object tracks and camera path defined above. The motion enters only through the constructed noise.

Page layout adapted from the Academic Project Page Template (in turn adapted from Nerfies). Released under CC BY-NC-SA 4.0.