Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Implicit Neural Representations (INRs)

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

Неявные нейронные представления (INR) хранят сигнал в виде непрерывной функции, обучаемой нейросетью, обычно небольшой многослойным перцептроном (MLP), который отображает координаты в значения. Изображение становится функцией, отображающей положение пикселя (x, y) в цвет, трёхмерная форма — функцией, отображающей точку (x, y, z) в знаковое расстояние до поверхности, а сцена — функцией, отображающей точку и направление наблюдения в цвет и плотность. Представлением служат веса сети: пиксельной или воксельной сетки нет, поэтому сигнал можно запросить для любых координат, объём памяти не растёт вместе с разрешением результата, а производные автоматически получаются с помощью автоматического дифференцирования. INR также называют координатными сетями или нейронными полями; они лежат в основе нейронных полей излучения и значительной части современных методов трёхмерной реконструкции.

Как работают неявные нейронные представления#

INR настраивают под один сигнал за раз. При обучении выбираются координаты, результат сети сравнивается с истинными значениями в этих координатах, а веса обновляются с помощью градиентного спуска. По сути, это намеренное переобучение: цель — запомнить данный сигнал. Обычный MLP с активациями ReLU справляется плохо, потому что сети намного быстрее обучаются низким частотам, чем высоким; этот эффект Nasim Rahaman и коллеги в 2019 году назвали спектральным смещением. Если подавать на вход исходные координаты, сеть выдаёт размытую версию сигнала. В 2020 году INR стали практически применимы благодаря двум решениям: координаты стали преобразовывать синусами и косинусами на множестве частот — это признаки Фурье Matthew Tancik и коллег и позиционное кодирование NeRF; а ReLU заменили синусоидальной функцией активации, как в SIREN Vincent Sitzmann и коллег.

В этом примере PyTorch один и тот же MLP дважды обучается на одной фотографии: сначала на исходных координатах, затем на признаках Фурье:

import torch
from skimage import data, transform
from torch import nn

torch.manual_seed(0)

# The signal: a 128 x 128 grayscale photo, and the (x, y) coordinate of every pixel in [-1, 1]
image = torch.tensor(transform.resize(data.camera(), (128, 128)), dtype=torch.float32).reshape(-1, 1)
grid = torch.linspace(-1, 1, 128)
coords = torch.stack(torch.meshgrid(grid, grid, indexing="ij"), dim=-1).reshape(-1, 2)

# Fourier features: sines and cosines of the coordinates at 128 random frequencies
proj = torch.pi * coords @ (10 * torch.randn(2, 128))
inputs = {"Raw coordinates": coords, "Fourier features": torch.cat([proj.sin(), proj.cos()], dim=-1)}

for name, x in inputs.items():
    # The INR: a small MLP from coordinate to gray value, fit to this one image
    mlp = nn.Sequential(nn.Linear(x.shape[1], 256), nn.ReLU(), nn.Linear(256, 256), nn.ReLU(), nn.Linear(256, 1))
    optimizer = torch.optim.Adam(mlp.parameters(), lr=1e-3)
    for _ in range(1000):
        loss = (mlp(x) - image).pow(2).mean()
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()
    print(f"{name}: PSNR {-10 * torch.log10(loss).item():.1f} dB")

После 1 000 шагов сеть с исходными координатами достигает пикового отношения сигнал/шум 22.0 дБ, то есть изображение остаётся размытым, а сеть с признаками Фурье достигает 46.0 дБ — почти точной копии. Масштаб частоты, здесь равный 10, настраивается отдельно для каждого сигнала: слишком низкое значение оставляет результат размытым, слишком высокое заставляет сеть запоминать выборки, создавая шумные значения между ними. Segment Anything Model от Meta, работающая в пакете Ultralytics, кодирует координаты точечных и рамочных подсказок с помощью таких же случайных гауссовых признаков Фурье, прежде чем передать их декодеру масок.

Формы, сцены и скорость#

INR для трёхмерных форм появились в 2019 году: DeepSDF предсказывала знаковое расстояние, а Occupancy Networks — вероятность нахождения внутри или снаружи для любой трёхмерной точки, что позволяло извлекать сетку с любым разрешением. В 2020 году появилась NeRF, отображающая положение и направление наблюдения в цвет и плотность для синтеза новых ракурсов. Чистые MLP медленно обучаются и выполняют запросы, поэтому в гибридных архитектурах обучаемые признаки хранятся в сетке, а декодируются небольшим MLP. Instant-NGP от Thomas Müller и коллег из NVIDIA использует многомасштабную хеш-таблицу признаков и обучает NeRF за секунды вместо часов.

В отличие от INR, явные представления — например, пиксельные и воксельные сетки, сетки полигонов и облака точек — хранят значения напрямую и растут с увеличением разрешения; для вокселей рост кубический. Гауссов сплаттинг — недавняя явная альтернатива NeRF, которая рендерит быстрее, растеризуя миллионы трёхмерных гауссовых распределений. Поскольку базовую INR обучают на одном сигнале, для обобщения на множество сигналов нужны дополнительные механизмы: гиперсети, выдающие веса INR по латентному коду, или метаобучение начальной инициализации, позволяющей подогнать новый сигнал за несколько шагов.

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

  • Медицинская визуализация: INR восстанавливают объёмы КТ и МРТ по разреженным или недостаточным измерениям: непрерывная функция заполняет промежутки между полученными выборками, формируя гладкий объём, согласованный с данными.
  • Сверхразрешение: Локальные неявные функции изображения, например LIIF, предсказывают цвет в любых непрерывных координатах на основе близлежащих признаков, поэтому одна модель увеличивает изображения в произвольное число раз.
  • Создание трёхмерного контента: Генераторы объектов по тексту и изображениям часто оптимизируют или предсказывают нейронные поля, которые затем преобразуются в сетки для игр и визуальных эффектов.
  • Сжатие: COIN, разработанная Emilien Dupont и коллегами в 2021 году, хранит изображение в виде квантованных весов небольшого MLP и превосходит JPEG при низких битрейтах.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения