baki0115/gaze-ctrl-360
GazeCtrl 360 — interactive results
A frozen Qwen-Image-Edit-2509 steered by a trained InstantX ControlNet Union turns a person in a photo to face a target gaze (dx, dy, dz) — head and body — over the full 360°, including facing away.
The gaze vector is the control signal: no skeleton stage, no pose prediction, and no text prompt. It is rendered as a flat RGB field (R = dx, G = dy, B = dz), VAE-encoded, and fed to the ControlNet.
This page is a static result viewer, not a live demo — 18 source images × 24 gaze targets, generated offline, with the ground-truth turnaround frame shown alongside each generation so you can judge it yourself. Three checkpoints (80k / 85k / 90k) are switchable.
Convention: dx > 0 looks image-right, dy > 0 looks up, dz > 0 looks toward the camera. yaw = atan2(dx, dz), so ±180° means facing away.
Known limitations — including the large generalisation gap (19° on training identities vs ~56° held-out) and marginal identity preservation — are documented honestly in the repository README.
