Jump to content

Линейная интегральная свертка

Изображение Большого Магелланова Облака , одной из ближайших галактик к нашему Млечному Пути, полученное с помощью LIC.

В научной визуализации линейная интегральная свертка ( LIC ) — это метод визуализации векторного поля (например, движения жидкости ) с высоким пространственным разрешением. [1] Техника LIC была впервые предложена Брайаном Кабралом и Лейтом Кейси Лидомом в 1993 году. [2]

В ЛИК интегрирование дискретных численных линий осуществляется вдоль силовых линий (кривых) векторного поля на равномерной сетке . Интегральная операция представляет собой свертку фильтра ядра и входной текстуры, часто белого шума . [1] В обработке сигналов этот процесс известен как дискретная свертка . [3]

Традиционные визуализации векторных полей используют маленькие стрелки или линии для обозначения направления и величины вектора. Этот метод имеет низкое пространственное разрешение, что ограничивает плотность презентабельных данных и рискует скрыть характерные особенности данных. [1] [3] Более сложные методы, такие как линии тока и методы отслеживания частиц, могут быть более информативными, но они во многом зависят от правильных исходных точек. [1] Методы на основе текстур, такие как LIC, позволяют избежать этих проблем, поскольку они отображают все векторное поле с точечным (пиксельным) разрешением. [1]

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

В ходе пользовательского тестирования было обнаружено, что LIC особенно эффективен для определения критических точек. [4]

Алгоритм

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

Неофициальное описание

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

LIC приводит к тому, что выходные значения сильно коррелируют вдоль силовых линий, но не коррелируют в ортогональных направлениях. [1] В результате линии поля контрастируют друг с другом и визуально выделяются на фоне.

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

Формальное математическое описание

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

Хотя входное векторное поле и результирующее изображение дискретизированы, имеет смысл взглянуть на них с непрерывной точки зрения. [1] Позволять быть векторным полем, заданным в некоторой области . Хотя входное векторное поле обычно дискретизировано, мы считаем поле как определено в каждой точке , т.е. мы предполагаем интерполяцию . Линии тока или, в более общем плане, линии поля касаются векторного поля в каждой точке. Они заканчиваются либо на границе или в критических точках, где . Для простоты ниже критические точки и границы игнорируются.

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

где свертки ядро , – шумовое изображение, а длина сегмента линии поля, за которым следует.

необходимо вычислять для каждого пикселя изображения LIC. Если проводить это наивно, то это довольно дорого. Сначала линии поля должны быть вычислены с использованием численного метода решения обыкновенных дифференциальных уравнений , например метода Рунге-Кутты , а затем для каждого пикселя должна быть рассчитана свертка вдоль сегмента линии поля.

Конечное изображение обычно будет каким-то образом окрашено. Обычно некоторое скалярное поле в (как и длина вектора) используется для определения оттенка, а выходной сигнал LIC в оттенках серого определяет яркость .

Разный выбор ядер свертки и случайного шума создают разные текстуры; например, розовый шум создает облачный узор, где области с более высоким потоком выделяются как размытые, что подходит для визуализации погоды. Дальнейшие усовершенствования свертки могут улучшить качество изображения. [6]

Описание программирования

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

Алгоритмически LIC принимает на вход векторное поле и текстуру шума и выводит текстуру. Процесс начинается с генерации в области векторного поля случайного изображения уровня серого с желаемым выходным разрешением. Затем для каждого пикселя этого изображения прямая и обратная линии тока фиксированной длины дуги рассчитывается . Значение, присвоенное текущему пикселю, вычисляется путем свертки подходящего ядра свертки с уровнями серого всех пикселей шума, лежащих на сегменте этой линии тока. Это создает изображение LIC на уровне серого.

Базовая LIC-визуализация поля потока

Базовые изображения LIC представляют собой изображения в оттенках серого, без цвета и анимации. Хотя такие изображения LIC передают направление векторов поля, они не указывают ориентацию; для стационарных полей это можно исправить с помощью анимации. Базовые изображения LIC не показывают длину векторов (или силу поля).

LIC с цветом, обозначающим величину скорости.

Длина векторов (или напряженность поля) обычно кодируется цветом; альтернативно можно использовать анимацию. [2] [1]

Анимация

[ редактировать ]
Иллюстрация того, как анимируется LIC.
Вверху: обычный коробчатый фильтр (средний).
Средний: синусоидальный фильтр на .
Внизу: синусоидальный фильтр на .

Изображения LIC можно анимировать с помощью ядра, которое меняется со временем. Выборки в постоянное время от линии тока по-прежнему будут использоваться, но вместо усреднения всех пикселей на линии тока со статическим ядром используется пульсообразное ядро, построенное из периодической функции, умноженной на функцию Ханна, действующую как окно (чтобы предотвращения артефактов). Затем периодическая функция сдвигается по периоду для создания анимации.

Быстрый ЛИК (FLIC)

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

Вычисления можно значительно ускорить за счет повторного использования частей уже вычисленных линий поля, специализирующихся на коробчатой ​​функции в качестве ядра свертки. и избежание избыточных вычислений во время свертки. [1] Полученный в результате быстрый метод LIC можно обобщить на ядра свертки, которые представляют собой произвольные полиномы. [7]

Интегральная свертка ориентированных линий (OLIC)

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

Поскольку LIC не кодирует ориентацию потока, он не может различать линии тока одинакового направления, но противоположной ориентации. [8] Ориентированно-линейная интегральная свертка (OLIC) решает эту проблему, используя линейное асимметричное ядро ​​и текстуру шума с низкой плотностью. [8] Ядро асимметрично модулирует интенсивность вдоль линии тока, создавая след, кодирующий ориентацию; Низкая плотность текстуры шума предотвращает перекрытие размазанных следов, что повышает читаемость.

Быстрая визуализация интегральной свертки по ориентированным линиям (FROLIC) — это вариант, который приближает OLIC путем визуализации каждой трассы дискретными шагами, а не в виде непрерывного размазывания. [8] [9]

Нестационарный поток LIC (UFLIC)

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

Для векторных полей, зависящих от времени (нестационарный поток), был разработан вариант под названием Unsteady Flow LIC, который поддерживает согласованность анимации потока. [10] Была представлена ​​интерактивная реализация UFLIC на базе графического процессора. [11]

Параллельно

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

Поскольку вычисление изображения LIC является дорогостоящим, но по своей сути параллельным, процесс был распараллелен. [12] и, при наличии реализаций на базе графического процессора, интерактивность на ПК.

Многомерный

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

Обратите внимание, что домен не обязательно должен быть двумерным доменом: метод применим к доменам более высокой размерности с использованием многомерных шумовых полей. Однако визуализация многомерной текстуры LIC проблематична; Один из способов — использовать интерактивное исследование с двумерными срезами, которые позиционируются и вращаются вручную. Домен также не обязательно должен быть плоским; Текстура LIC может быть рассчитана также для 2D-поверхностей произвольной формы в 3D-пространстве. [13]

Приложения

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

Этот метод применялся для решения широкого круга задач с момента его первой публикации в 1993 году, как научных, так и творческих, в том числе:

Представление векторных полей:

  • визуализация установившихся (независящих от времени) потоков (линий тока) [14]
  • визуальное исследование 2D автономных динамических систем [15]
  • картографирование ветра [16]
  • картографирование потока воды

Художественные эффекты для создания и стилизации изображений:

  • карандашный рисунок [17] (техника автоматического создания карандашного рисунка с использованием карандашного фильтра LIC [18] )
  • автоматическое создание текстур волос [19]
  • создание мраморной текстуры [20]

Обобщение местности:

Реализации

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

См. также

[ редактировать ]
  1. ^ Jump up to: а б с д и ж г час я Столлинг, Детлев; Хеге, Ганс-Кристиан (6–11 августа 1995 г.). «Быстрая и независимая от разрешения линейная интегральная свертка» . Материалы 22-й ежегодной конференции по компьютерной графике и интерактивным технологиям . СИГГРАФ '95. Лос-Анджелес, Калифорния. стр. 249–256 . CiteSeerX   10.1.1.45.5526 . дои : 10.1145/218380.218448 . ISBN  0-89791-701-4 .
  2. ^ Jump up to: а б Кабрал, Брайан; Лидом, Лейт Кейси (2–6 августа 1993 г.). «Отображение векторных полей с использованием линейной интегральной свертки». Материалы 20-й ежегодной конференции «Компьютерная графика и интерактивные технологии» . СИГГРАФ '93. Анахайм, Калифорния. стр. 263–270. CiteSeerX   10.1.1.115.1636 . дои : 10.1145/166117.166151 . ISBN  0-89791-601-8 .
  3. ^ Jump up to: а б Уорд, Мэтью О. (5 февраля 1996 г.). «Линейно-интегральная свертка для визуализации потока» . Вустерский политехнический институт . Проверено 21 июля 2024 г.
  4. ^ Лэйдлоу, Дэвид Х.; Кирби, Роберт М.; Дэвидсон, Дж. Скотт; Миллер, Тимоти С.; да Силва, Марко; Уоррен, Уильям Х.; Тарр, Майкл Дж. (21–26 октября 2001 г.). «Количественная сравнительная оценка методов визуализации двумерного векторного поля». Визуализация IEEE 2001, VIS '01. Слушания . Сан-Диего, Калифорния, США. стр. 143–150.
  5. ^ Лю, Чжаньпин (21 августа 2007 г.). «LIC (Линейно-интегральная свертка)» . Проверено 21 июля 2024 г.
  6. ^ Вайскопф, Дэниел (2009). «Итеративная интегральная свертка двойной линии для визуализации векторного поля на основе текстур». В Мёллере, Торстене; Хаманн, Бернд; Рассел, Роберт Д. (ред.). Математические основы научной визуализации, компьютерной графики и исследования больших объемов данных . Математика и визуализация. Берлин, Нью-Йорк: Springer . стр. 191–211 . CiteSeerX   10.1.1.66.3013 . дои : 10.1007/b106657_10 . ISBN  978-3-540-25076-0 . {{cite book}}: CS1 maint: статус URL ( ссылка )
  7. ^ Хеге, Ганс-Кристиан; Столлинг, Детлев (1998), «Быстрый LIC с ядрами кусочно-полиномиального фильтра», в Хеге, Ханс-Кристиан; Полтье, Конрад (ред.), Математическая визуализация , Берлин, Гейдельберг: Springer-Verlag, стр. 295–314, CiteSeerX   10.1.1.31.504 , doi : 10.1007/978-3-662-03567-2_22 , ISBN  978-3-642-08373-0
  8. ^ Jump up to: а б с Вегенкиттль, Райнер; Греллер, Эдуард (24 октября 1997 г.). «Быстрая интегральная свертка с ориентированными линиями для визуализации векторного поля через Интернет» (PDF) . ИИЭЭ . дои : 10.1109/VISUAL.1997.663897 .
  9. ^ Инструмент исследования Java для динамических систем Р. Вегенкиттля и Э. Греллера.
  10. ^ Шен, Хан-Вэй; Кам, Дэвид Л. (1998). «Алгоритм интегральной свертки новой линии для визуализации изменяющихся во времени полей потока» (PDF) . Вычислительный график IEEE TransVis . 4 (2). Лос Аламитос: IEEE: 98–108. дои : 10.1109/2945.694952 . ISSN   1077-2626 .
  11. ^ Дин, Цзян; Лю, Чжаньпин; Ю, Ян; Чен, Вэй (2015). «Интегральная свертка параллельной нестационарной линии потока для высокопроизводительной плотной визуализации». Тихоокеанский симпозиум по визуализации IEEE, 2015 г., PacificVis 2015 . Ханчжоу, Китай. стр. 25–30.
  12. ^ Цёклер, Мальте; Столлинг, Детлев; Хеге, Ганс-Кристиан (1997). «Интегральная свертка параллельных линий» (PDF) . Параллельные вычисления . 23 (7). Амстердам: Северная Голландия: 975–989. дои : 10.1016/S0167-8191(97)00039-2 . ISSN   0167-8191 .
  13. ^ Баттке, Хенрик; Столлинг, Детлев; Хеге, Ганс-Кристиан (1997). «Быстрая интегральная свертка для произвольных поверхностей в 3D». В Хеге, Ганс-Кристиан; Полтье, Конрад (ред.). Визуализация и математика: эксперименты, моделирование и среда . Берлин, Нью-Йорк: Springer . стр. 181–195 . CiteSeerX   10.1.1.71.7228 . дои : 10.1007/978-3-642-59195-2_12 . ISBN  3-540-61269-6 .
  14. ^ DAAC: Линейная интегральная свертка
  15. ^ Визуальное исследование 2D автономных динамических систем Томас Мюллер2,1 и Филип Садло1 Опубликовано 26 февраля 2015 г. • © IOP Publishing Ltd, 2015 г. Европейский журнал физики, том 36, номер 3
  16. ^ Карта ветра в США в реальном времени, составленная Фернандой Виегасом и Мартином Ваттенбергом.
  17. ^ Публикация Researchgate: Сунь, Шуо и Хуан, Дунвэй. (2022). Эффективный карандашный рисунок на основе регионов.
  18. ^ С. Ямамото, Сяоян Мо и А. Имамия, «Усовершенствованный карандашный фильтр LIC», Труды. Международная конференция по компьютерной графике, визуализации и визуализации, 2004. CGIV 2004., 2004, стр. 251–256, doi: 10.1109/CGIV.2004.1323994.
  19. ^ Сяоян Мао, М. Кикукава, К. Касио и А. Имамия, «Автоматическое создание текстуры волос с помощью линейно-интегральной свертки», Конференция IEEE 2000 г. по визуализации информации. Международная конференция по компьютерной визуализации и графике, 2000, стр. 303–308, doi: 10.1109/IV.2000.859772.
  20. ^ Сяоян Мао, Тошиказу Судзуки и Ацуми Имамия. 2003. AtelierM: физически основанная интерактивная система для создания традиционных текстур мрамора. В материалах 1-й международной конференции по компьютерной графике и интерактивным методам в Австралазии и Юго-Восточной Азии (ГРАФИТ '03). Ассоциация вычислительной техники, Нью-Йорк, штат Нью-Йорк, США, 79–ff. https://doi.org/10.1145/604471.604489
  21. ^ Бернхард Дженни (2021) Обобщение местности с помощью линейной интегральной свертки, Картография и географическая информатика, 48:1, 78-92, DOI: 10.1080/15230406.2020.1833762
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: f227ee32c644329f5518aaef41cb3e66__1721590380
URL1:https://arc.ask3.ru/arc/aa/f2/66/f227ee32c644329f5518aaef41cb3e66.html
Заголовок, (Title) документа по адресу, URL1:
Line integral convolution - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)