Nodes/camera-comfyUI/VideoToFusedSplats
ComfyUI Node

VideoToFusedSplats

Runs SHARP on video keyframes, optionally scale-aligns to metric depth and filters dynamic pixels, transforms each keyframe splat cloud to the world frame via the inverse camera pose, and fuses everything incrementally into a single world-frame splat cloud.

By Alexankharin·Created about a year ago·Updated 22 days ago· 35
VideoToFusedSplats
  • frames
  • trajectory
  • static_mask
  • depths
  • splats
horizontal_fov60.00
checkpoint<download default>
keyframe_stride8
stitch_voxel_size0.010
stitch_modesmart
deviceauto
CategoryCamera/GSplat

Inputs (10)

NameTypeDefaultDescription
framesIMAGEVideo frames [T,H,W,3].
trajectoryTENSOR[T,4,4] world-to-camera matrix per frame (a single [4,4] is broadcast).
horizontal_fovFLOAT60.001–179
checkpointCOMBO<download default>SHARP .pt checkpoint from the input folder, or download the default model.
keyframe_strideINT81–1000Run SHARP on every Nth frame.
stitch_voxel_sizeFLOAT0.0100–10
stitch_modeCOMBOsmart4 options: smart, average, discard, keep
static_maskoptMASK[T,H,W], 1 = static/keep pixel. Splats whose source pixel has mask < 0.5 are dropped.
depthsoptTENSOR[T,H,W] metric depths. SHARP splats are scale-aligned per keyframe via a robust median disparity ratio.
deviceoptCOMBOauto3 options: auto, cpu, cuda

Outputs (1)

NameTypeDescription
splatsGSPLAT