Nodes Browser
ComfyDeploy: How ComfyUI Depth Anything TensorRT works in ComfyUI?
What is ComfyUI Depth Anything TensorRT?
This extension provides a ComfyUI Custom Node implementation of the [a/Depth-Anything-Tensorrt](https://github.com/spacewalk01/depth-anything-tensorrt) in Python for ultra fast depth map generation
How to install it in ComfyDeploy?
Head over to the machine page
- Click on the "Create a new machine" button
- Select the
Edit
build steps - Add a new step -> Custom Node
- Search for
ComfyUI Depth Anything TensorRT
and select it - Close the build step dialig and then click on the "Save" button to rebuild the machine
ComfyUI Depth Anything TensorRT
</div> <p align="center"> <img src="assets/demo.gif" /> </p>This repo provides a ComfyUI Custom Node implementation of the Depth-Anything-Tensorrt in Python for ultra fast depth map generation (up to 14x faster than comfyui_controlnet_aux)
⏱️ Performance (Depth Anything V1)
Note: The following results were benchmarked on FP16 engines inside ComfyUI
| Device | Model | Model Input (WxH) | Image Resolution (WxH) | FPS | | :-----: | :--------------: | :---------------: | :--------------------: | :--: | | RTX4090 | Depth-Anything-S | 518x518 | 1280x720 | 35 | | RTX4090 | Depth-Anything-B | 518x518 | 1280x720 | 33 | | RTX4090 | Depth-Anything-L | 518x518 | 1280x720 | 24 | | H100 | Depth-Anything-L | 518x518 | 1280x720 | 125+ |
⏱️ Performance (Depth Anything V2)
Note: The following results were benchmarked on FP16 engines inside ComfyUI
| Device | Model | Model Input (WxH) | Image Resolution (WxH) | FPS | | :----: | :--------------: | :---------------: | :--------------------: | :-: | | H100 | Depth-Anything-S | 518x518 | 1280x720 | 213 | | H100 | Depth-Anything-B | 518x518 | 1280x720 | 180 | | H100 | Depth-Anything-L | 518x518 | 1280x720 | 109 |
🚀 Installation
Navigate to the ComfyUI /custom_nodes
directory
git clone https://github.com/yuvraj108c/ComfyUI-Depth-Anything-Tensorrt.git
cd ./ComfyUI-Depth-Anything-Tensorrt
pip install -r requirements.txt
🛠️ Building Tensorrt Engine
- Download one of the available onnx models:
- Edit model paths inside export_trt.py accordingly and run
python export_trt.py
- Place the exported engine inside ComfyUI
/models/tensorrt/depth-anything
directory
☀️ Usage
- Insert node by
Right Click -> tensorrt -> Depth Anything Tensorrt
- Choose the appropriate engine from the dropdown
🤖 Environment tested
- Ubuntu 22.04 LTS, Cuda 12.3, Tensorrt 10.0.1, Python 3.10, RTX 4090 GPU
- Windows (Not tested)
📝 Changelog
-
02/07/2024
- Add Depth Anything V2 onnx models + benchmarks
- Merge PR for engine caching in memory
-
26/04/2024
- Update to tensorrt 10.0.1
- Massive code refactor, remove trtexec, remove pycuda, show engine building progress
- Update and standardise engine directory and node category for upcoming tensorrt custom nodes suite
-
7/04/2024
- Fix image resize bug during depth map post processing
-
30/03/2024
- Fix CUDNN_STATUS_MAPPING_ERROR
-
27/03/2024
- Major refactor and optimisation (remove subprocess)