Эфир 18.11 · Поток 318 ноября в 19:00 МСК — бесплатный практический эфир по ИИ-агентам · Живой Поток 3 стартует 23.11Эфир 18 ноября →Поток 3 (23.11)

Spaghetti Splatting заменяет точки в 3DGS на кривые: волосы и провода готовы к симуляции

3D Gaussian Splatting хорошо рисует сцены облаком размытых точек, но на волосах, проводах и траве разваливается: тонкая нить превращается в россыпь пятен. Spaghetti Splatting вместо точек использует непрерывные кривые, а обычный 3DGS остаётся его частным случаем с кривой нулевой длины. Авторы заявляют, что метод обходит специализированные решения на нитевидной геометрии и сам справляется с антиалиасингом.

AI-обработка оригинала TG: @cgevent (Метаверсище и ИИще); редакция Hamidun News
Spaghetti Splatting заменяет точки в 3DGS на кривые: волосы и провода готовы к симуляции
Источник: TG: @cgevent (Метаверсище и ИИще). Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникTG: @cgevent (Метаверсище и ИИще) ↗
Главный редактор
Ключевой факт #1Нити получаются связными, а не россыпью точек
Ключевой факт #2Подходит для волос, проводов, растительности и сеток
Ключевой факт #3Результат можно напрямую отдать симулятору волос и тканей

Если вы пробовали восстановить по фотографиям голову с волосами, пучок проводов или куст, то знаете, чем это кончается. Картинка выглядит прилично, но внутри у вас облако точек, а не нити. Двигать такую модель или натягивать на неё физику почти бессмысленно. Работа Spaghetti Splatting бьёт именно в это место.

Проблема: нить не равна набору точек

3D Gaussian Splatting описывает сцену миллионами маленьких размытых «пятен». Для стен, лиц и мебели это работает отлично. Для тонких длинных объектов уже нет. Один волос приходится собирать из десятков пятен, и между ними нет никакой связи. Для рендера это терпимо, а для всего остального плохо. Нельзя спросить, где у волоса начало и конец. Нельзя его согнуть, потому что система не знает, какие точки относятся к одной нити.

До сих пор для таких сцен обычно брали специализированные методы под волосы или растительность. Они работают хуже в остальных случаях, и пайплайн приходится собирать из нескольких кусков.

Идея: вместо точки — кривая

Авторы предлагают сменить базовый примитив. В классическом 3DGS каждая гауссиана описывает точечную массу. В Spaghetti Splatting её растягивают в непрерывную линию, то есть в кривой сегмент или пространственное волокно. Обычный 3DGS получается как вырожденный случай, когда длина кривой равна нулю. Поэтому авторы называют метод строгим обобщением: всё, что умел 3DGS, сохраняется, а нити становятся родным типом данных.

Из технических деталей в посте упомянуты три вещи:

  • линеаризация проекции камеры, чтобы кривые быстро и корректно проецировались на экран;
  • поддержка бета-ядер, которые, по словам авторов, ускоряют рендеринг;
  • встроенный антиалиасинг, который решает вечную проблему тонких линий: они мерцают и рвутся на расстоянии.

По заявлению авторов, на сценах с нитевидной геометрией (волосы, провода, растительность, сетки) метод превосходит специализированные подходы.

Что это даёт на практике

Главный практический эффект не в красивее картинке, а в структуре результата. Нити получаются длинными и связными, и их можно сразу отдавать в симулятор динамики деформируемых нитей и тканей. Раньше между реконструкцией и симуляцией лежал ручной или полуавтоматический этап: из облака точек надо было вытащить пряди. Теперь этот шаг, судя по описанию, можно выбросить.

Кому это интересно:

  • командам, которые делают цифровых двойников людей и аватары: волосы, их главная боль;
  • VFX и игровым студиям, где нужно быстро оцифровать реальный объект и сразу заставить его двигаться;
  • тем, кто работает с робототехникой и сканированием инфраструктуры: кабели и провода там встречаются постоянно;
  • разработчикам 3D-инструментов, которым нужен один формат вместо зоопарка методов.

Ограничения и что проверить

Пока это исследовательская работа. В посте нет ни конкретных цифр качества и скорости, ни данных о готовности к продакшену, и сравнение с аналогами стоит смотреть в самой статье на arXiv (2611.12716) и на странице проекта. Неясно, как метод ведёт себя на плотных пучках, где нити перекрываются и спутываются, и насколько тяжело интегрировать его в существующие движки и рендереры.

Практический вывод простой. Если вы уже работаете с 3DGS и упираетесь в волосы, кабели или траву, посмотрите код и примеры на странице проекта и прогоните на своих сценах. Если же вы только выбираете технологию для оцифровки, держите эту работу в списке наблюдения. Идея хранить нити как нити, а не как облако пятен, выглядит естественным шагом, и она может стать стандартом для таких задач.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: проблема: нить не равна набору точек?

3D Gaussian Splatting описывает сцену миллионами маленьких размытых «пятен». Для стен, лиц и мебели это работает отлично. Для тонких длинных объектов уже нет. Один волос приходится собирать из десятков пятен, и между ними нет никакой связи. Для рендера это терпимо, а для всего остального плохо. Нельзя спросить, где у волоса начало и конец. Нельзя его согнуть, потому что система не знает, какие точки относятся к одной нити.

Что известно по теме: идея: вместо точки — кривая?

Авторы предлагают сменить базовый примитив. В классическом 3DGS каждая гауссиана описывает точечную массу. В Spaghetti Splatting её растягивают в непрерывную линию, то есть в кривой сегмент или пространственное волокно. Обычный 3DGS получается как вырожденный случай, когда длина кривой равна нулю. Поэтому авторы называют метод строгим обобщением: всё, что умел 3DGS, сохраняется, а нити становятся родным типом данных.

Что известно по теме: что это даёт на практике?

Главный практический эффект не в красивее картинке, а в структуре результата. Нити получаются длинными и связными, и их можно сразу отдавать в симулятор динамики деформируемых нитей и тканей. Раньше между реконструкцией и симуляцией лежал ручной или полуавтоматический этап: из облака точек надо было вытащить пряди. Теперь этот шаг, судя по описанию, можно выбросить.

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Закрытый клуб практиков · Vibe Club

Внедряйте ИИ быстрее рынка вместе с инженерами и фаундерами

Внутри Vibe Club (hamidun.com/club): еженедельные живые мастермайнды и разборы архитектуры с Жемалом Хамидуном, закрытый Tech Radar, LMS и обновляемая база из 370+ боевых скиллов.

Вступить в Vibe Club →Тест-драйв Академии (72ч)
Что вы думаете?
Загружаем комментарии…