Text-to-Video
Cosmos
video-to-video
sim2real
synthetic-data
surveillance
nvidia
docker
rest-api
diffusion
Instructions to use NVisionAI/cosmos-transfer with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Cosmos
How to use NVisionAI/cosmos-transfer with Cosmos:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Add model card
Browse files
README.md
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
tags:
|
| 4 |
+
- video-to-video
|
| 5 |
+
- sim2real
|
| 6 |
+
- synthetic-data
|
| 7 |
+
- surveillance
|
| 8 |
+
- cosmos
|
| 9 |
+
- nvidia
|
| 10 |
+
- docker
|
| 11 |
+
- rest-api
|
| 12 |
+
- diffusion
|
| 13 |
+
pipeline_tag: text-to-video
|
| 14 |
+
---
|
| 15 |
+
|
| 16 |
+
# cosmos-transfer π¬
|
| 17 |
+
|
| 18 |
+
A **REST API wrapper** around [NVIDIA Cosmos-Transfer2.5](https://huggingface.co/nvidia/Cosmos-Transfer2.5-2B) β a 2B parameter video diffusion model that converts synthetic renders into photorealistic video (Sim2Real).
|
| 19 |
+
|
| 20 |
+
Packaged as a ready-to-run Docker microservice with battle-tested parameters tuned across 80+ surveillance clips.
|
| 21 |
+
|
| 22 |
+
## Quick Start
|
| 23 |
+
|
| 24 |
+
```bash
|
| 25 |
+
docker pull ghcr.io/eyalenav/cosmos-transfer:latest
|
| 26 |
+
|
| 27 |
+
docker run --rm --gpus '"device=0"' -p 8080:8080 \
|
| 28 |
+
-v ~/.cache/huggingface:/root/.cache/huggingface \
|
| 29 |
+
-e HUGGINGFACE_TOKEN=hf_... \
|
| 30 |
+
ghcr.io/eyalenav/cosmos-transfer:latest
|
| 31 |
+
```
|
| 32 |
+
|
| 33 |
+
> β οΈ First run downloads Cosmos-Transfer2.5-2B weights (~20GB). Requires a HuggingFace token with access to `nvidia/Cosmos-Transfer2.5-2B`.
|
| 34 |
+
|
| 35 |
+
## API
|
| 36 |
+
|
| 37 |
+
### `POST /transfer`
|
| 38 |
+
|
| 39 |
+
Convert a synthetic video to photorealistic.
|
| 40 |
+
|
| 41 |
+
```bash
|
| 42 |
+
curl -X POST http://localhost:8080/transfer \
|
| 43 |
+
-F "video=@synthetic_render.mp4" \
|
| 44 |
+
-F "prompt=surveillance camera footage of a crowded street" \
|
| 45 |
+
--output photorealistic.mp4
|
| 46 |
+
```
|
| 47 |
+
|
| 48 |
+
**Parameters:**
|
| 49 |
+
|
| 50 |
+
| Field | Default | Description |
|
| 51 |
+
|---|---|---|
|
| 52 |
+
| `video` | required | Input synthetic MP4 |
|
| 53 |
+
| `prompt` | `""` | Text guidance for the scene |
|
| 54 |
+
| `edge_strength` | `0.85` | Canny edge control (geometry preservation) |
|
| 55 |
+
| `vis_strength` | `0.45` | Visual blur control (scene structure) |
|
| 56 |
+
| `sigma` | `100` | Noise level (realism vs. fidelity) |
|
| 57 |
+
|
| 58 |
+
### `GET /health`
|
| 59 |
+
|
| 60 |
+
```bash
|
| 61 |
+
curl http://localhost:8080/health
|
| 62 |
+
# {"status": "ok"}
|
| 63 |
+
```
|
| 64 |
+
|
| 65 |
+
## Tuned Parameters
|
| 66 |
+
|
| 67 |
+
After 80+ clips, the sweet spot for **surveillance synthetic data**:
|
| 68 |
+
|
| 69 |
+
```
|
| 70 |
+
edge=0.85 + vis=0.45 + sigma=100
|
| 71 |
+
```
|
| 72 |
+
|
| 73 |
+
- **edge 0.85** β strong geometry/silhouette preservation from Canny
|
| 74 |
+
- **vis 0.45** β moderate scene structure preservation
|
| 75 |
+
- **sigma 100** β balanced realism without losing the synthetic layout
|
| 76 |
+
|
| 77 |
+
## Requirements
|
| 78 |
+
|
| 79 |
+
| Resource | Minimum |
|
| 80 |
+
|---|---|
|
| 81 |
+
| GPU | A100 / RTX 6000 Ada / H100 |
|
| 82 |
+
| VRAM | 40 GB |
|
| 83 |
+
| RAM | 64 GB |
|
| 84 |
+
| Disk | 30 GB (model weights) |
|
| 85 |
+
|
| 86 |
+
## Part of VisionAI-Flywheel
|
| 87 |
+
|
| 88 |
+
This service is one component of a full synthetic surveillance data pipeline:
|
| 89 |
+
|
| 90 |
+
```
|
| 91 |
+
[kimodo-api] β NPZ motion
|
| 92 |
+
β
|
| 93 |
+
[render-api] β SOMA mesh render (MP4)
|
| 94 |
+
β
|
| 95 |
+
[cosmos-transfer] β Sim2Real photorealistic video β this image
|
| 96 |
+
β
|
| 97 |
+
[NVIDIA VSS] β VLM annotation β fine-tuning dataset
|
| 98 |
+
```
|
| 99 |
+
|
| 100 |
+
π Full pipeline: [github.com/EyalEnav/VisionAI-Flywheel](https://github.com/EyalEnav/VisionAI-Flywheel)
|
| 101 |
+
|
| 102 |
+
## License
|
| 103 |
+
|
| 104 |
+
Apache 2.0 β see [LICENSE](https://github.com/EyalEnav/VisionAI-Flywheel/blob/main/LICENSE)
|
| 105 |
+
|
| 106 |
+
> Cosmos-Transfer2.5 model weights are released under the [NVIDIA Open Model License](https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-open-model-license/) and downloaded at runtime. They are not bundled in this image.
|