← all repositories
baegwangbin/DSINE

A leaner rethink of how machines read surface angles

It argues surface normal estimation has been borrowing the wrong inductive biases from generic dense-prediction models, and fixes that by encoding per-pixel ray directions and local relative rotations.

DSINE
Not currently ranked — collecting fresh signals.
star history

What it does

DSINE predicts a surface normal for every pixel in an RGB image—essentially the 3D orientation of each tiny patch of visible geometry. Rather than treating this as a generic dense-prediction problem, the authors bake in two task-specific inductive biases: each pixel incorporates its camera ray direction, and the network learns the relative rotation between neighboring normals. The result is crisp yet piecewise-smooth normal maps on in-the-wild images of arbitrary resolution and aspect ratio, and it tolerates approximate camera intrinsics (falling back to a 60° field of view when none are supplied).

The interesting bit

The authors claim their specialized, leaner model generalizes better than a recent Vision Transformer state-of-the-art rival, despite training on an orders-of-magnitude smaller dataset. That is a rare case where task-specific geometry beats sheer scale and generic architecture.

Key highlights

  • Predictions are conditioned on per-pixel ray directions and learned relative rotations between neighbors, not off-the-shelf convolution or attention patterns.
  • Handles arbitrary image resolutions and aspect ratios without resizing artifacts.
  • Includes optional uncertainty estimates via separate exp002_kappa checkpoints.
  • Ships with real-time demo modes for webcam, screen capture, RealSense, and even arbitrary YouTube videos.
  • Provides notebooks for generating ground-truth normals from depth, visualizing augmentations, and building custom real-time pipelines.

Caveats

  • The full training dataset (~400 GB) has not been released; the provided NYUv2 training split is only 795 images and the authors note performance “will not be good” without building a custom dataloader and adding more data.
  • A contributed Torch Hub integration is explicitly marked as deprecated because the repository folder structure changed.
  • Data augmentation hyperparameters are provided but not finetuned, so synthetic-to-real transfer may need manual tuning.

Verdict

Computer vision researchers and robotics engineers who need geometrically coherent surface normals from casual images should look here. If you want a turnkey, fully pre-trained product with no dataset assembly, this is still research code.

Frequently asked

What is baegwangbin/DSINE?
It argues surface normal estimation has been borrowing the wrong inductive biases from generic dense-prediction models, and fixes that by encoding per-pixel ray directions and local relative rotations.
Is DSINE open source?
Yes — baegwangbin/DSINE is an open-source project tracked on heatdrop.
What language is DSINE written in?
baegwangbin/DSINE is primarily written in Jupyter Notebook.
How popular is DSINE?
baegwangbin/DSINE has 918 stars on GitHub.
Where can I find DSINE?
baegwangbin/DSINE is on GitHub at https://github.com/baegwangbin/DSINE.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.