https://github.com/chri002/ComfyUI_depthMapOperation
https://github.com/chri002/ComfyUI_depthMapOperation
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/chri002/ComfyUI_depthMapOperation
- Owner: chri002
- Created: 2025-03-15T17:08:32.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-03-15T18:15:19.000Z (3 months ago)
- Last Synced: 2025-03-15T18:29:21.487Z (3 months ago)
- Language: Python
- Size: 522 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-comfyui - **ComfyUI_depthMapOperation**
README
# ComfyUI_depthMapOperation
A simple set of nodes to generate a point cloud from an image and its depth map, perform transformations and some basic operations.
Here an example of what can be done (not the gif, but the various rotations)
![]()
![]()
---
# Installation
On the console in the custom_nodes filder execute:
```
git clone https://github.com/chri002/ComfyUI_depthMapOperation
```# Requirements
these nodes require in order to function:
- torch
- numpy
- opencv-python
- scipy
- pandas# Workflow

---
# Nodes
## Image To Points (Torch)

### Description
GPU-accelerated version using PyTorch tensors. Maintains gradient flow and supports automatic device placement.**Input Parameters**:
- `image`: Input RGB/RGBA image
- `depth_image`: Depth map image
- `depth`: Z-axis scaling factor (1-1024)
- `quality`: Downsampling quality (1=1 point:1 pixel , 16=16 interpolate points every 2 pixel)**Output**:
- `Points3D`: XYZ coordinates + RGB colors---
## Transform Points

### Description
Applies 3D transformations to point clouds (rotation, translation, scaling).**Input Parameters**:
- `points`: Input point cloud (Points3D)
- `rot_x/y/z`: Euler angles in degrees
- `trl_x/y/z`: Translation offsets
- `scale_x/y/z`: Axis-specific scaling factors**Output**:
- `Points3D`: Transformed point cloud (XYZ coordinates + RGB colors)---
## Points To Image (Orthographic)

### Description
Renders 3D points to 2D image using orthographic projection.**Input Parameters**:
- `images`: Template for output dimensions
- `points`: Point cloud to render (Points3D)
- `color`: Enable RGB coloring**Output**:
- `IMAGE`: Rendered grayscale/RGB image---
## Points To Image (Projection)

### Description
Perspective projection renderer with customizable FOV.**Input Parameters**:
- `images`: Template for output dimensions
- `points`: Point cloud to render (Points3D)
- `color`: Enable RGB coloring
- `fov`: Field of View in degrees (1-2000)**Output**:
- `IMAGE`: Rendered grayscale/RGB image---
## Cube Limit

### Description
Filters points within relative cube dimensions (0-100% of original bounds).**Input Parameters**:
- `points`: Point cloud to render (Points3D)
- 6 axis range parameters (x_min-x_max, etc.)**Output**:
- `Points3D`: Subset of points within cube (XYZ coordinates + RGB colors)---
## Clean Points (KDTree)

### Description
Removes outliers using KDTree neighborhood analysis.**Parameters**:
- `points`: Point cloud to render (Points3D)
- `k`: Minimum neighbors required
- `m`: Max neighbor distance threshold**Output**:
- `Points3D`: Cleaned point cloud (XYZ coordinates + RGB colors)---
## Interpolate Points (KDTree)

### Description
Generates new points through neighborhood-based interpolation using KDTree. Enhances point cloud density in sparse regions by creating intermediate points between existing neighbors.**Input Parameters**:
- `points`: Input 3D point cloud
- `value`: (0-1) Blend ratio for new points (0=keep original, 1=full interpolation)
- `n`: Number of nearest neighbors to consider (0-32)**Output**:
- `Points3D`: Point cloud with added interpolated points (XYZ coordinates + RGB colors)---
## Export To PLY

### Description
Exports point cloud to PLY format (ASCII/binary).**Input Parameters**:
- `points`: Point cloud to render (Points3D)
- `multiple_files`: Split XYZ/RGB data
- `format_out`: File encoding format---
## Import PLY

### Description
Import PLY point cloud files into compatible Point3D format.
(Sperimental)**Input Parameter**:
- `.ply` file selection**Output**:
- `Points3D`: Loaded point cloud data (XYZ coordinates + RGB colors)---
## Cloud Points Info

### Description
Displays point cloud statistics and coordinate ranges.**Output**:
- `STRING`: Formatted summary text---
# DEMO FUNCTIONS
# TODO
- Fix artifacts with some extreme values