Jump to content

Синтез текстур

Синтез текстур — это процесс алгоритмического построения большого цифрового изображения из небольшого цифрового образца изображения с использованием его структурного содержания. Он является объектом исследований в области компьютерной графики и используется во многих областях, в том числе в редактировании цифровых изображений , компьютерной 3D-графике и постобработке фильмов .

Синтез текстур можно использовать для заполнения дыр в изображениях (как в inpainting ), создания больших неповторяющихся фоновых изображений и расширения маленьких картинок. [1]

Контраст с процедурными текстурами

[ редактировать ]

Процедурные текстуры — это родственная техника, которая позволяет синтезировать текстуры с нуля без исходного материала. Напротив, синтез текстур относится к методам, в которых некоторое исходное изображение сопоставляется или расширяется.

Текстуры

[ редактировать ]

« Текстура » — слово неоднозначное и в контексте синтеза текстур может иметь одно из следующих значений:

  1. В просторечии слово «текстура» используется как синоним «структуры поверхности». Текстура описывается пятью различными свойствами в психологии восприятия : грубостью , контрастом , направленностью , сходством с линиями и шероховатостью. [1] .
  2. В компьютерной 3D-графике текстура — это цифровое изображение, нанесенное на поверхность трехмерной модели путем наложения текстур, чтобы придать модели более реалистичный вид. Часто изображение представляет собой фотографию «настоящей» текстуры, например текстуры древесины .
  3. В обработке изображений каждое цифровое изображение, состоящее из повторяющихся элементов, называется «текстурой».
Сочетание фотографий и созданных изображений, иллюстрирующих спектр текстур.

Текстуру можно расположить по спектру от регулярного до стохастического, соединенного плавным переходом: [2]

  • Обычные текстуры. Эти текстуры выглядят как несколько регулярные узоры. Примером структурированной текстуры является каменная стена или пол, выложенный брусчаткой.
  • Стохастические текстуры. Текстурные изображения стохастических текстур выглядят как шум : цветные точки, хаотично разбросанные по изображению, едва заданные атрибутами минимальной и максимальной яркости и среднего цвета. Многие текстуры на расстоянии выглядят как стохастические текстуры. Примером стохастической текстуры является грубая модель .

Алгоритмы синтеза текстур предназначены для создания выходного изображения , отвечающего следующим требованиям:

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

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

Для синтеза текстур были исследованы или разработаны следующие методы и алгоритмы:

Укладка плитки

[ редактировать ]

Самый простой способ создать большое изображение из образца изображения — разбить его на мозаику . Это означает, что несколько копий образца просто копируются и вставляются рядом. Результат редко бывает удовлетворительным. За исключением редких случаев, между плитками будут швы, и изображение будет сильно повторяться.

Стохастический синтез текстур

[ редактировать ]

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

Синтез структурированных текстур специального назначения

[ редактировать ]

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

Мозаика Хаоса

[ редактировать ]

Этот метод, предложенный группой Microsoft для интернет-графики, представляет собой усовершенствованную версию мозаики и выполняет следующие три этапа:

  1. Выходное изображение полностью заполняется мозаикой. В результате получается повторяющееся изображение с видимыми швами.
  2. Случайно выбранные части выборки случайного размера копируются и вставляются случайным образом в выходное изображение. В результате получается довольно неповторяющееся изображение с видимыми швами.
  3. Выходное изображение фильтруется для сглаживания краев.

В результате получается приемлемое текстурное изображение, которое не слишком повторяется и не содержит слишком много артефактов. Тем не менее, этот метод неудовлетворителен, поскольку сглаживание на шаге 3 делает выходное изображение размытым.

Пиксельный синтез текстур

[ редактировать ]

Эти методы, используя марковские поля, [3] непараметрическая выборка, [4] векторное квантование с древовидной структурой [5] и аналогии изображений [6] являются одними из самых простых и успешных общих алгоритмов синтеза текстур. Обычно они синтезируют текстуру в порядке строк сканирования, находя и копируя пиксели с наиболее близким локальным окружением, как у синтетической текстуры. Эти методы очень полезны для завершения изображения. Их можно заставить, как в аналогиях изображений , выполнять множество интересных задач. Обычно они ускоряются с помощью какого-либо метода приближенного ближайшего соседа, поскольку полный поиск лучшего пикселя происходит несколько медленно. Синтез также может быть выполнен в мультиразрешении, например, с использованием непричинного непараметрического многомасштабного марковского случайного поля. [7]

Изображение квилтинга

Синтез текстур на основе патчей

[ редактировать ]

Синтез текстур на основе патчей создает новую текстуру путем копирования и сшивания текстур с различными смещениями, аналогично использованию инструмента клонирования для ручного синтеза текстуры. Изображение квилтинга [8] и графические текстуры [9] — это наиболее известные алгоритмы синтеза текстур на основе патчей. Эти алгоритмы, как правило, более эффективны и быстрее, чем методы синтеза текстур на основе пикселей.

Подходы к глубокому обучению и нейронным сетям

[ редактировать ]

Совсем недавно было показано, что методы глубокого обучения являются мощным, быстрым и управляемым данными параметрическим подходом к синтезу текстур. Работа Леона Гатиса [10] является важной вехой: он и его соавторы показали, что фильтры дискриминативно обученной глубокой нейронной сети могут использоваться в качестве эффективных параметрических дескрипторов изображений, что привело к созданию нового метода синтеза текстур.

Еще одна недавняя разработка — использование генеративных моделей для синтеза текстур. Пространственный ГАН [11] Метод впервые показал использование полностью неконтролируемых GAN для синтеза текстур. В последующей работе [12] метод был расширен дальше - PSGAN может изучать как периодические, так и непериодические изображения без присмотра на основе отдельных изображений или больших наборов данных изображений. Кроме того, гибкая выборка в шумовом пространстве позволяет создавать новые текстуры потенциально бесконечного выходного размера и плавно переходить между ними. Это делает PSGAN уникальным с точки зрения типов изображений, которые может создать метод синтеза текстур.

Реализации

[ редактировать ]

Некоторые реализации синтеза текстур существуют как плагины к бесплатному редактору изображений Gimp :

Реализация синтеза текстур на основе пикселей:

Синтез текстур на основе патчей:

Глубокий генеративный синтез текстур с PSGAN, реализованный на Python с помощью Lasagne + Theano:

Литература

[ редактировать ]

Некоторые из самых ранних и наиболее часто упоминаемых работ в этой области включают:

  • Попат в 1993 году - «Новая кластерная вероятностная модель для синтеза, классификации и сжатия текстур».
  • Хигер-Берген в 1995 году - «Анализ/синтез текстур на основе пирамид».
  • Пэджет-Лонгстафф в 1998 году - «Синтез текстур с помощью некаузального непараметрического многомасштабного марковского случайного поля»
  • Эфрос-Леунг в 1999 году - «Синтез текстур методом непараметрической выборки».
  • Вей-Левой в 2000 году - «Быстрый синтез текстур с использованием векторного квантования с древовидной структурой».

хотя были и более ранние работы на эту тему, такие как

  • Гагалович и Сонг Де Ма в 1986 году, «Синтез естественных текстур на основе моделей для трехмерных сцен»,
  • Льюис в 1984 году «Синтез текстур для цифровой живописи».

(Последний алгоритм имеет некоторое сходство с подходом Chaos Mosaic).

Подход непараметрической выборки Эфроса-Леунга — это первый подход, который позволяет легко синтезировать большинство типов текстур, и он вдохновил буквально сотни последующих статей по компьютерной графике. С тех пор область синтеза текстур быстро расширилась с появлением карт-ускорителей 3D-графики для персональных компьютеров. Однако оказывается, что Скотт Дрейвс впервые опубликовал версию этой техники на основе исправлений вместе с кодом GPL в 1993 году, по словам Эфроса .

См. также

[ редактировать ]
  1. ^ «Курс SIGGRAPH 2007 по синтезу текстур на основе примеров»
  2. ^ «Почти регулярный анализ текстур и манипулирование ими» . Яньси Лю , Вэнь-Цье Линь и Джеймс Хейс. СИГГРАФ 2004 г.
  3. ^ «Синтез текстуры с помощью некаузального непараметрического многомасштабного марковского случайного поля». Пэджет и Лонгстафф, IEEE Trans. по обработке изображений, 1998 г.
  4. ^ «Синтез текстур путем непараметрической выборки». Эфрос и Люнг, ICCV, 1999 г.
  5. ^ «Быстрый синтез текстур с использованием векторного квантования с древовидной структурой» Вэй и Левой SIGGRAPH 2000
  6. ^ «Аналогии изображений» Hertzmann et al. СИГГРАФ 2001.
  7. ^ «Синтез текстуры с помощью некаузального непараметрического многомасштабного марковского случайного поля». Пэджет и Лонгстафф, IEEE Trans. по обработке изображений, 1998 г.
  8. ^ «Выстегивание изображений». Эфрос и Фриман. СИГГРАФ 2001 г.
  9. ^ «Текстуры Graphcut: синтез изображений и видео с использованием разрезов графов». Кватра и др. СИГГРАФ 2003 г.
  10. ^ Гатис, Леон А.; Экер, Александр С.; Бетге, Матиас (27 мая 2015 г.). «Синтез текстур с использованием сверточных нейронных сетей». arXiv : 1505.07376 [ cs.CV ].
  11. ^ Ечев, Николай; Бергманн, Урс; Воллграф, Роланд (24 ноября 2016 г.). «Синтез текстур с пространственными генеративно-состязательными сетями». arXiv : 1611.08207 [ cs.CV ].
  12. ^ Бергманн, Урс; Ечев, Николай; Воллграф, Роланд (18 мая 2017 г.). «Изучение многообразий текстур с помощью периодического пространственного GAN». arXiv : 1705.06566 [ cs.CV ].
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 1153d35278e49b34c72d9d2205b9900e__1676449200
URL1:https://arc.ask3.ru/arc/aa/11/0e/1153d35278e49b34c72d9d2205b9900e.html
Заголовок, (Title) документа по адресу, URL1:
Texture synthesis - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)