A Custom Node for ComfyUI that implements GeoCalib to estimate camera intrinsics from a single image.
This node allows you to extract the Roll, Pitch, and Vertical Field of View (vFoV) from any input image or video frame. It uses the Geometric Calibration model presented at ECCV 2024.
- Automatic Calibration: Estimates camera parameters from a single image.
- Camera Models: Supports
pinhole,simple_radial, andsimple_divisionalmodels. - Lens Weights: Choose between
pinhole(standard) anddistorted(fisheye/wide) pre-trained weights. - Outputs: Returns float values for
roll,pitch, andvfov(in degrees) that can be pipe to other nodes (e.g., for controlling 3D rotations or conditioning).
Install it as usual though the ComfyUI Manager. If its not listed yet you can use its "Install via Git URL" Feature.
- Add the node via
Add Node > GeoCalib > GeoCalib Estimator. - Connect an IMAGE input.
- Select your settings:
- weights: Use
pinholefor standard photos/videos (phones, DSLRs). Usedistortedfor wide-angle/GoPro footage. - camera_model:
pinholeis usually sufficient. If the estimated horizon is shaky, trysimple_radial.
- weights: Use
- Connect the FLOAT outputs (
roll,pitch,vfov) to your workflow.
The first time you run this node, it will download the necessary model weights from HuggingFace. This may take a minute or two depending on your internet connection. Check your console for progress.
| Input | Description |
|---|---|
| image | The input image or batch of images to analyze. |
| weights | pinhole: Standard lenses.distorted: Wide FOV / Fisheye lenses. |
| camera_model | Mathematical model for the camera (pinhole, simple_radial, simple_divisional). |
| Output | Description |
|---|---|
| roll | Camera rotation around the Z-axis (in degrees). |
| pitch | Camera rotation around the X-axis (in degrees). |
| vfov | Vertical Field of View (in degrees). |
This node is a wrapper around the official implementation of GeoCalib.
Paper: GeoCalib: Learning Single-image Calibration with Geometric Optimization (ECCV 2024)
Original Repo: cvg/GeoCalib
Authors: Alexander Vakhitov, Luis Keser, Gabriel Zeller, Dannis G. T. H., Friedrich Fraundorfer.
Please cite the original paper if you use this for research.

