> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/guides/guides_v2-ru/generaciya-3d/trellis-3d.md).

# Генерация 3D с TRELLIS

Преобразуйте изображения в 3D-сетки и Gaussian splats с Microsoft TRELLIS на Clore.ai

TRELLIS от Microsoft Research преобразует одно RGB-изображение в высококачественную 3D-сетку, гауссов сплат или поле излучения примерно за 30 секунд на RTX 3090. Выпущен под лицензией MIT, полностью бесплатен для коммерческого использования.

{% hint style="success" %}
Все примеры работают на GPU-серверах, арендованных через [маркетплейс CLORE.AI](https://clore.ai/marketplace).
{% endhint %}

## Ключевые особенности

* **Одно изображение → 3D** — не требуется многоракурсная съемка, не нужен текстовый запрос
* **Несколько форматов вывода** — сетка GLB, гауссов сплат (.ply), поле излучения
* **\~30 секунд на объект** на RTX 3090/4090
* **лицензией MIT** — бесплатно для коммерческого использования
* **Веб-интерфейс Gradio** входит для работы через браузер
* **Python API** для интеграции в пайплайн и пакетной обработки
* **Без обучения** — работает на произвольных изображениях без дообучения

## Требования

| Компонент | Минимум        | Рекомендуется  |
| --------- | -------------- | -------------- |
| GPU       | RTX 3090 24 GB | RTX 4090 24 GB |
| VRAM      | 24 ГБ          | 24 ГБ          |
| ОЗУ       | 32 ГБ          | 64 ГБ          |
| Диск      | 30 ГБ          | 60 ГБ          |
| CUDA      | 12.8+          | 12.8+          |
| Python    | 3.10           | 3.10           |

**Цены Clore.ai:** RTX 4090 ≈ $0.14–0.42/ч · RTX 3090 ≈ $0.07–0.21/ч

TRELLIS требует **24 ГБ VRAM**. RTX 3090 — минимально подходящая GPU.

## Быстрый старт

### 1. Настройка окружения

TRELLIS использует конкретные версии зависимостей — настоятельно рекомендуется окружение conda:

```bash
# Создать и активировать окружение
conda create -n trellis python=3.10 -y
conda activate trellis

# Установить PyTorch с CUDA
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128

# Клонировать TRELLIS
git clone https://github.com/microsoft/TRELLIS.git
cd TRELLIS

# Установить зависимости
pip install -r requirements.txt

# Установить дополнительные пакеты для экспорта сетки
pip install kaolin -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.1.0_cu121.html
pip install spconv-cu121
```

### 2. Запустить веб-интерфейс Gradio

```bash
python app.py --share
```

Это запускает интерфейс Gradio по адресу `http://0.0.0.0:7860`. С `--share` вы получаете публичный URL, доступный из любого браузера, что удобно при запуске на сервере Clore.ai без графического интерфейса.

Загрузите изображение, настройте параметры генерации и скачайте получившийся 3D-объект.

### 3. Использовать Python API

```python
from trellis.pipelines import TrellisImageTo3DPipeline
from PIL import Image

# Загрузить конвейер (при первом запуске скачивает веса модели, ~5 ГБ)
pipeline = TrellisImageTo3DPipeline.from_pretrained("JeffreyXiang/TRELLIS-image-large")
pipeline.cuda()

# Сгенерировать 3D из изображения
image = Image.open("input.png")
outputs = pipeline.run(
    image,
    seed=42,
    sparse_structure_sampler_params={
        "steps": 12,
        "cfg_strength": 7.5,
    },
    slat_sampler_params={
        "steps": 12,
        "cfg_strength": 3.0,
    },
)
```

### 4. Экспортировать в разные форматы

```python
# Экспорт как сетка GLB (игровые движки, веб-просмотрщики)
glb = pipeline.to_glb(
    outputs["gaussian"][0],
    outputs["mesh"][0],
    simplify=0.95,          # уменьшить число полигонов на 95%
    texture_size=1024,
)
glb.export("output.glb")

# Экспортировать гауссов сплат в PLY
outputs["gaussian"][0].save_ply("output.ply")

# Экспортировать сетку в OBJ
import trimesh
mesh = trimesh.Trimesh(
    vertices=outputs["mesh"][0].vertices.cpu().numpy(),
    faces=outputs["mesh"][0].faces.cpu().numpy(),
)
mesh.export("output.obj")
```

## Примеры использования

### Пакетная обработка нескольких изображений

```python
import glob
from pathlib import Path

input_dir = Path("/workspace/input-images")
output_dir = Path("/workspace/3d-output")
output_dir.mkdir(exist_ok=True)

for img_path in sorted(input_dir.glob("*.png")):
    image = Image.open(img_path)
    outputs = pipeline.run(image, seed=42)

    glb = pipeline.to_glb(
        outputs["gaussian"][0],
        outputs["mesh"][0],
        simplify=0.95,
        texture_size=1024,
    )
    glb.export(str(output_dir / f"{img_path.stem}.glb"))
    print(f"Экспортировано: {img_path.stem}.glb")
```

### Настройка качества генерации

```python
# Более высокое качество (медленнее, ~60 сек)
outputs = pipeline.run(
    image,
    seed=42,
    sparse_structure_sampler_params={
        "steps": 20,
        "cfg_strength": 9.0,
    },
    slat_sampler_params={
        "steps": 20,
        "cfg_strength": 4.5,
    },
)

# Быстрый предварительный просмотр (ниже качество, ~15 сек)
outputs = pipeline.run(
    image,
    seed=42,
    sparse_structure_sampler_params={
        "steps": 6,
        "cfg_strength": 7.5,
    },
    slat_sampler_params={
        "steps": 6,
        "cfg_strength": 3.0,
    },
)
```

### Извлечь гауссов сплат для 3D-просмотрщиков

```python
# Сохранить как .ply для просмотрщиков вроде SuperSplat, Luma или рендерера splat в Three.js
outputs["gaussian"][0].save_ply("scene.ply")
```

## Справка по производительности

| GPU      | Шаги (12/12) | Время    | Примечания                                   |
| -------- | ------------ | -------- | -------------------------------------------- |
| RTX 4090 | 12 / 12      | \~25 сек | Лучшее соотношение цены и производительности |
| RTX 3090 | 12 / 12      | \~35 сек | Минимум для TRELLIS                          |
| A100 40G | 12 / 12      | \~20 сек | Вариант для дата-центра                      |

## Советы

* **Используйте PNG с чистым фоном** — удалите фон с помощью `rembg` перед подачей в TRELLIS для наилучшего качества сетки
* **`simplify=0.95`** в экспорте GLB снижает число полигонов на 95%, сохраняя визуальное качество — важно для веба и игр
* **Установите `--share`** при запуске интерфейса Gradio на Clore.ai, чтобы получить публичный URL
* **Согласованность seed** — зафиксируйте `seed` для воспроизводимых результатов между запусками
* **Разрешение текстуры** — используйте `texture_size=2048` для текстур печатного качества, `1024` для приложений реального времени
* **При первом запуске скачивается \~5 ГБ** весов модели — убедитесь, что на диске достаточно места
* **Гауссовы сплаты** идеальны для рендеринга в реальном времени; GLB-сетки лучше подходят для игровых движков и 3D-печати

## Устранение неполадок

| Проблема                        | Решение                                                                         |
| ------------------------------- | ------------------------------------------------------------------------------- |
| `CUDA out of memory`            | TRELLIS требует 24 ГБ VRAM — используйте RTX 3090/4090 или A100                 |
| `kaolin` установка не удается   | Точно сопоставьте версию kaolin с версией PyTorch + CUDA                        |
| `spconv` ошибка импорта         | Установите правильную версию CUDA: `pip install spconv-cu121`                   |
| Веб-интерфейс Gradio недоступен | Используйте `--share` для публичного туннеля или откройте порт 7860 на Clore.ai |
| Плохое качество сетки           | Убедитесь, что входное изображение имеет чистый/удаленный фон                   |
| Медленная первая генерация      | Веса модели скачиваются при первом запуске — последующие запуски быстрые        |
| Экспорт GLB не удается          | Убедитесь, что `trimesh` и `pygltflib` установлены                              |

## Ресурсы

* [TRELLIS GitHub](https://github.com/microsoft/TRELLIS)
* [Статья: Structured 3D Latents for Scalable 3D Generation](https://arxiv.org/abs/2412.01506)
* [маркетплейс CLORE.AI](https://clore.ai/marketplace)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/guides/guides_v2-ru/generaciya-3d/trellis-3d.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
