синий шум что это
Дизеринг 2: ряд золотого сечения, синий шум и highpass-and-remap
В предыдущей части я рассмотрел определение дизеринга и объяснил, как он изменяет характеристики погрешностей простой 1D-дискретизации и функций.
В этой части я рассмотрю синий шум, но сначала давайте взглянем на ряд чисел, который я использовал в предыдущей части, и который я считаю очень полезным.
Ноутбук Mathematica для ряда золотого сечения находится здесь, а его pdf-версия — здесь.
Ноутбук для второй части поста можно найти здесь, а его pdf-версию — здесь.
Ряд золотого сечения
В предыдущем посте я использовал «некую» псевдослучайную функцию/ряд и упомянул, что она не идеальна, но очень полезна. Этот ряд состоит из дробной части следующего умножения золотого числа.
Идею его использования я нашёл в статье “Golden Ratio Sequences For Low-Discrepancy Sampling” авторов Colas Schretter и Leif Kobbelt.
Это невероятно потрясающий ряд, потому что он распределяет следующие значения очень хорошо и на достаточно далёком расстоянии:
Разность между следующими элементами находится в пределах 1:
То есть ряд колеблется между золотым числом по модулю 1 и 2 минус золотое число по модулю 1. Оба числа достаточно далеко отстоят от нуля и единицы, чтобы создавать ряд с хорошим распределением в котором следующие выборки добавляют много информации.
Дополнение: Mikkel Gjøl заметил, что модуль/минимальное тороидное расстояние 0.618034 равно 0.381966, то есть ряд превращается в:
Я нахожу это свойство очень красивым!
Даже при небольшом количестве «сэмплов» в ряду они очень хорошо покрывают весь интервал 0-1:
Числа в виде цветов тоже выглядят «приятно»:
Если взглянуть на периодограмму ряда:
То мы тоже найдём удивительные свойства. Во-первых, похоже, что энергия увеличивается вместе с частотами. В некоторых частотах присутствуют заметные «всплески», и что даже более интересно, каждый такой всплеск происходит при частоте, которая в золотое сечение раз выше и имеет в золотое сечение раз большую энергию! У меня нет никаких объяснений этому, поэтому если вы лучше меня понимаете математику, то оставьте комментарий!
Эта частотная характеристика чрезвычайно полезна, однако не удовлетворяет всем нашим потребностям дизеринга. Почему? Представьте, что исходный сигнал, который мы подвергаем дизерингу, содержит те же частоты. Тогда в этих частотах мы увидим дополнительное искажение. Любая структура в шуме, используемом в дизеринге, может оказаться заметной и создать нежелательное искажение.
Но я всё равно считаю это ряд чрезвычайно ценным и активно использую его, например, во временнЫх техниках (а также в сэмплировании полусфер). Существуют и другие очень полезные ряды с низким расхождением, которые активно используются в рендеринге — я не буду их здесь рассматривать, а просто сошлюсь на «библию» основанного на физике рендеринга — “Physically Based Rendering, Third Edition: From Theory to Implementation” авторов Matt Pharr, Wenzel Jakob и Greg Humphreys, и на главу 7, которую авторы любезно выложили в бесплатный доступ!
А теперь давайте рассмотрим синий шум и теоретически «идеальные» ряды для дизеринга.
Синий шум
Что такое синий шум? Википедия даёт следующее определение:
Синий шум также называется лазурным (azure noise). У синего шума плотность энергии увеличивается по 3 дБ на октаву с повышением частоты (плотность пропорциональна f) на конечном интервале частот. В компьютерной графике понятие синего шума часто используется в более широком смысле и обозначает любой шум с минимально низкими компонентами частот и без концентрированных всплесков энергии.
В статье мы будем использовать более широкое определение (без строгого требования увеличения плотности распределения частот).
Мы сразу же видим, что описанный выше ряд золотого сечения не является синим шумом, поскольку имеет в спектре множество заметных всплесков. Идеальный синий шум не имеет всплесков, а потому не подвержен искажению/усилению этих частот.
Существует множество алгоритмов для генерации синего шума, но, к сожалению, многие из них серьёзно защищены патентами. Мы рассмотрим две относительно простые техники, которые можно использовать для аппроксимации синего шума.
Генерация синего шума — highpass and remap
Эта техника проста, но великолепна — на первом шаге мы возьмём шум с нежелательным частотным спектром и просто изменим его форму, применив фильтр верхних частот.
К сожалению, произвольный фильтр верхних частот создаёт сигнал с очень неравномерной гистограммой и совершенно отличающимся от исходного распределения шума интервалом значений:
Картина после операции с произвольным фильтром для случайного шума, изначально находившегося в интервале 0-1.
Здесь вступает в действие вторая часть алгоритма. Мы преобразуем гистограмму, загоняя её в интервал 0-1! Алгоритм прост — сортируем все элементы по значению, а затем преобразуем значение в позицию в списке.
Результат намного лучше:
К сожалению, операция преобразования гистограммы также изменяет частотный спектр. Это неизбежно, ведь преобразование гистограммы изменяет относительное значение элементов нелинейно. Значения в середине гистограммы (соответствующие областям, в которых изначально потерялся низкочастотный компонент) изменятся гораздо сильнее, чем значения в областях с высокочастотным содержимым. Таким образом, воздействие фильтра верхних частот теряется:
Сравнение гистограммы до (красная) и после (чёрная) преобразования с ручной нормализацией. Заметьте, что снова появился низкочастотный компонент.
Тем не менее, результат выглядит довольно неплохо по сравнению с отсутствием фильтрации высоких частот:
Сверху — обычный случайный шум. Внизу — с фильтром верхних частот и преобразованием гистограммы.
Частотный спектр выглядит многообещающе:
Тем не менее, по-прежнему присутствует этот низкочастотный компонент. Он не содержит много энергии, но всё равно может создавать заметную погрешность низких частот в изображении с дизерингом
Но мы снова можем применить ту же технику!
И вот что мы получим:
Частотный спектр определённо выглядит лучше, а алгоритм в целом очень малозатратен, поэтому можно применять любое количество раз.
К сожалению, сколько бы раз мы его ни применили, невозможно будет «исправить» все возможные проблемные места.
Я рассуждаю об этом таким образом — если какая-то область изображения содержит только очень низкую частоту, то после применения фильтра верхних частот она получит несколько соседних значений, очень близких к нулю. После преобразования гистограммы они будут преобразованы снова в похожие, соседние значения.
Небольшая часть ряда с локальным минимумом; от неё не удалось избавиться даже после 10 повторений алгоритма. Заметьте, что некоторые области почти равномерно серые.
Возможно, проблему можно решить, использовав другой фильтр верхних частот или добавив немного шума между итерациями или распознавая эти проблемные области и «исправляя» их, но это уже находится за пределами нашего поста и исходной техники.
Стоит заметить, что исходный алгоритм создаёт ряд, который неидеален, но «достаточно хорош» — он сохраняет довольно плохие локальные места, но оптимизирует частотный спектр в глобальном плане. Давайте проверим его в действии.
Результаты
Давайте взглянем на наш исходный, простой 1D-дизеринг для двоичной дискретизации:
Строки 1, 3, 5 — исходная синусоида. Строка 2 — дизеринг обычным шумом. Строка 4 — дизеринг рядом золотого сечения. Строка 6 — дизеринг «highpass and remap» (рядом, напоминающим синий шум).
Как видите, и ряд золотого сечения, и highpass and remap лучше, чем обычный шум. Однако кажется, что ряд золотого сечения проявляет себя лучше из-за меньшей «скученности». Мы можем увидеть, что некоторые «пульсации» частот соответствуют пиковым частотам:
Чёрный — белый шум. Красный — ряд золотого сечения. Зелёный — ряд шума highpass and remap.
То есть эта техника неидеальна, но a) очень быстра b) гибка и c) намного лучше любого белого шума.
Что лучше? Более медленный синий шум
Итак, что можно сделать, если нам нужно решение без таких локальных «скученностей»? Можно взглянуть на статью с Siggraph 2016 “Blue-noise Dithered Sampling” Ильяна Георгиева и Маркоса Фахандо из Solid Angle.
Алгоритм основан на идее использования вероятностной техники имитации отжига для глобальной минимизации нужной метрики погрешностей (в данном случае это расстояние между соседними элементами).
Я реализовал простую (неполную имитацию отжига, больше напоминающую случайное блуждание) и довольно медленную версию, поддерживащую одно-, двух- и трёхмерные массивы с соединением краёв: https://github.com/bartwronski/BlueNoiseGenerator/
Как это обычно и бывает с техниками глобальной оптимизации, выполнение может занять огромную кучу времени! Я экспериментировал с моей наивной реализацией для 3D-массивов, и мой трёхлетний MacBook после выполнения её в течение всей ночи обеспечил схождение алгоритма к наилучшему среднему качественному ряду. Однако этот пост не о самом алгоритме (который на самом деле замечателен и довольно прост в реализации), а о дизеринге и шуме.
Для этого поста я сгенерировал при помощи своей реализации одномерный ряд из 2000 элементов.
Вот график первых 64 элементов:
Выглядит довольно неплохо! Никакой скученности, достаточно хорошее распределение.
Частотный спектр тоже выглядит очень хорошо и напоминает требуемый нам синий шум (почти линейная зависимость роста энергии от частоты)!
Если сравнить это с частотным спектром highpass and remap, то они не сильно отличаются; немного меньше очень низких частот и гораздо больше нужных нам очень высоких частот:
Highpass and remap (чёрный) и техника Solid Angle (красный).
Мы видим, что при дизеринге одномерного сигнала они сравнимы со всеми остальными техниками:
Каждая нечётная строка — это сырые данные. Чётные строки: белый шум, ряд золотого сечения, highpass and remap и сгенерированный ряд синего шума.
Мне кажется, что он лучший и наиболее равномерный (на одном уровне с рядом золотого сечения).
Можно рассмотреть их частотный спектр погрешностей:
Чёрный — белый шум. Красный — ряд золотого сечения. Зелёный — highpass and remap. Жёлтый — сгенерированный ряд.
Если размыть получившееся изображение, то оно достаточно близко напоминает исходный синусоидный сигнал:
Если бы мне нужно было оценивать при таких ограничениях и условиях использования, то я бы выстроил их так (от лучшего к худшему):
Подведём итог
В этой части я рассказал об определении синего шума, показал две техники генерации синего шума и один из множества рядов высокочастотного сэмплирования с низким расхождением для общего использования. Мы по-прежнему рассматривали только одномерные случаи, поэтому в следующем посте мы узнаем, как эти принципы можно применить к дизерингу дискретизации 2D-сигнала, например изображения.
Ссылки
https://www.graphics.rwth-aachen.de/media/papers/jgt.pdf “Golden Ratio Sequences For Low-Discrepancy Sampling”, Colas Schretter and Leif Kobbelt
“Blue-noise Dithered Sampling”, Iliyan Georgiev and Marcos Fajardo
Шумы и их применение
Шумы играют важное значение как в саунддизайне, так и при создании различных треков. Рассмотрим какие бывают виды шумов и где они применяются.
Белый шум
Белый шум имеет одинаковую мощность в равных полосах пропускания. Например, полоса пропускания 10 Гц между 20 Гц и 30 Гц содержит такое же количество звуковой мощности, что и полоса пропускания 10 Гц между 10000 Гц и 10 010 Гц.
Для слуховой системы человека белый шум звучит намного ярче, чем можно было бы ожидать от «плоского» спектра. Это потому, что человеческий слух воспринимает частоты в логарифмическом масштабе (октавы), а не в линейном масштабе.
Спектр белого шума
Представленный сигнал (в ссылке) — это сигнал из некоррелированных выборок, таких как числа, генерируемые генератором случайных чисел. Когда возникает такая случайность, сигнал будет содержать все частоты в равной пропорции, и его спектр станет плоским.
Большинство генераторов белого шума используют равномерно распределенные случайные числа, потому что их легко генерировать. Некоторые более дорогие генераторы полагаются на распределение Гаусса, поскольку оно представляет собой лучшее приближение многих реальных случайных процессов. Оба представленных файла будут звучать одинаково, и будут иметь одинаковый плоский спектр. Они будут отличаться только распределением уровней выборки.
Применение белого шума
Розовый шум
Розовый шум — это случайный сигнал, отфильтрованный для получения равной энергии на октаву. Чтобы поддерживать постоянную энергию в октавах, спектральная плотность должна уменьшаться с увеличением частоты (f). Это объясняет, почему розовый шум иногда называют «шум 1 / f». В пересчете на децибелы это уменьшение соответствует 3 дБ на октаву в спектре величин.
Для слуховой системы человека, которая обрабатывает частоты логарифмически, предполагается, что розовый шум звучит одинаково на всех частотах и поэтому наилучшим образом приближается к среднему спектральному распределению музыки.
Спектр розового шума
Однако на практике получается, что наши уши более чувствительны к определенным частотам, например, в диапазоне 2–4 кГц. Розовый шум, несмотря на его равномерное распределение частот в логарифмической шкале частот, будет восприниматься как окрашенный, с заметным пиком, воспринимаемым около 3 кГц. Сглаживание шума воспринимаемым способом создаст серый шум.
Применение розового шума
Коричневый (красный) шум
Коричневый шум — это случайный сигнал, который был отфильтрован, чтобы генерировать большинство энергии на низких частотах. Его плотность мощности обратно пропорциональна f ^ 2 и уменьшается на 6 дБ на октаву. Коричневый шум производит намного более теплый тон, чем белый шум (0 дБ / октава) или розовый шум (-3 дБ / октава).
Каждая октава содержит столько же энергии, сколько две октавы над ней. Например, полоса пропускания 20 Гц между 20 Гц и 40 Гц (одна октава) будет содержать ту же мощность звука, что и полоса пропускания 120 Гц между 40 Гц и 160 Гц (следующие две октавы).
Спектр коричневого (красного) шума
«Коричневое» — это название происходит от «коричневого» движения, а не от цвета. В броуновском движении последующие образцы имеют более высокую вероятность оставаться близко друг к другу, чем далеко уходить. Этот процесс естественным образом отфильтровывает более высокие частоты. Броуновский шум также называют красным шумом. Этот цвет исходит от видимого света, который становится красным, когда применяется аналогичное спектральное распределение.
Применение коричневого (красного) шума
Синий (Лазурный) шум
Синий шум — это случайный сигнал, который был отфильтрован, чтобы генерировать более высокие энергии на более высоких частотах. Его плотность мощности пропорциональна частоте и увеличивается на 3 дБ на октаву. Если присмотреться, то он представляет зеркальное отражение розового шума.
Спектр синего (лазурного) шума
Синий шум содержит много энергии на самых высоких частотах: каждая октава содержит столько же энергии, сколько две октавы под ней!
Синий шум также называют лазурным шумом. Эти названия происходят от видимого света, который превращается в эти цвета, когда применяется аналогичное спектральное распределение.
Применение синего (лазурного) шума
Фиолетовый шум
Известен как дифференцированный белый шум, поскольку он является результатом дифференцирования сигнала белого шума. Фиолетовый шум генерирует очень высокие энергии на более высоких частотах. Его плотность мощности пропорциональна f ^ 2 и увеличивается на 6 дБ на октаву. Если присмотреться, то он представляет зеркальное отражение коричневого (красного) шума.
Фиолетовый шум генерирует много энергии на самых высоких частотах: каждая октава содержит столько же энергии, сколько четыре октавы под ней!
Для нашего слуха он очень яркий и звучит очень резко.
Спектр фиолетового шума
Применение фиолетового шума
Серый шум
Хотя белый шум играет одинаково громко на всех частотах, он не дает слушателю такого ощущения ровности из-за психоакустики. Нужно пропустить белый шум через фильтр, который инвертирует нашу кривую частотной чувствительности, чтобы создать серый шум, шум, который кажется перцептуально плоским.
«Серый шум» — это общий термин. Применяемая кривая «сплющивания» шума зависит от конкретных порогов слышимости слушателя и звукового давления, при котором будет воспроизводиться серый шум. Наши уши чрезвычайно нелинейны, и восприятие различных частот зависит от общей громкости (кривые Флетчера-Мансона ). Например, на более низких уровнях чувствительность наших ушей к более низким и высоким частотам резко падает.
Спектр серого шума
Применение серого шума
Оранжевый шум
Квазистационарный шум с конечной спектральной плотностью, частотные группы которого располагаются на частотах музыкальных нот.
Если говорить более просто, то это шум различных духовых инструментов.
Спектр оранжевого шума
Применение оранжевого шума
Зелёный шум
Это звук, который мы слышим постоянно — повседневный звук «города». Чтобы его создать, за основу берётся розовый или коричневый шум и выделяется область частот в районе 500 Гц и срезом высоких. Для этих целей и применяется в звуковом дизайне.
Спектр зелёного шума
Чёрный шум
У него имеется несколько понятий. Например, это либо отсутствие вообще звука (но не тишина из динамиков, а безмолвная тишина, как в специальных акустических камерах), либо шум с очень низкими и динамически резкими частотами (землетрясения или обрушения здания).
Если рассматривать его с музыкальной точки зрения, то в звукодизайне это спектр шума за гранью слышимой нами области частот. То есть мы его не слышим. Но он способен придавать другим звукам различные оттенки, придавая им новое интересное звучание.
Спектр черного шума
Подписывайтесь на новости New Style Sound и RSS.
За репосты и лайки буду вам очень благодарен.
Похожие записи
Музыка в игорных заведениях: как ее выбирают и какое влияние оказывает на посетителей
5/5 — (11 голосов) Почему в наземных казино чаще играет спокойная музыка… Узнаем, некоторые нюансы о том, что такое музыка…
Русские синтезаторы
4.9/5 — (19 голосов) В России ведется значительное количество разработок и производство синтезаторов, и вот те, русские синтезаторы за которыми…
Аддитивный синтез звука (Additive)
5/5 — (18 голосов) В этой статье поговорим о таком виде, как аддитивный синтез звука (Additive). Подписаться
Субтрактивный синтез звука (Subtractive)
5/5 — (20 голосов) В этой и следующих статьях познакомимся с различными видами синтеза звука. Сегодня поговорим о таком виде,…
Dante, AES 50, AVB и все такое: какой формат аудио сети вам подходит?
5/5 — (30 голосов) Аудиосеть становится все более важной частью концертных и студийных мероприятий. Но в чем разница между всеми сетевыми…
Какой шум помогает концентрироваться и отдыхать, а еще — предотвращает потерю слуха при серьезных ДТП
Никто не любит шум, и на то есть причины. Одно только шумовое загрязнение от автомобильных магистралей наносит ущерб здоровью каждого третьего европейца. А по данным ВОЗ, каждый год жители крупных городов суммарно тратят 750 млрд долларов на лечение заболеваний, связанных с потерей слуха из-за шума того или иного происхождения. Но есть шумы, которые не только не вредят здоровью, но помогают его сохранить, а также сконцентрироваться и расслабиться.
Что это за полезный шум
Под словом «шум» мы чаще всего подразумеваем неприятные крики, рёв моторов, грохот бульдозера на улице или «кричащие» аудиоколонки в кафе — некую какофонию разрозненных звуков, которые составлены из спорадических волн со случайным распределением частот и амплитуд. Такой шум раздражает, и его длительное воздействие на организм не только мешает сконцентрироваться, но и может приводить к потере слуха.
Но есть отдельная категория шумов, которые называются цветными. В отличие от шумов на улице и криков, они представляют собой стационарный сигнал. Примерами могут быть белый шум, который имеет равную интенсивность на всех частотах, и розовый шум — его спектральная плотность уменьшается с увеличением частоты. Их главная особенность — они успешно маскируют другие звуки и не раздражают слушателя. По этой причине их используют для повышения концентрации, расслабления и других задач. Далее — подробнее остановимся на примерах и разберем их.
Розовый шум для концентрации
Люди, которые работают в опенспейсах, часто жалуются на отсутствие приватности. Да и трудиться, постоянно слушая отрывки чужих бесед, очень сложно. Решить проблему может белый или розовый шум, который скрывает отвлекающие звуки, но сам по себе практически не мешает человеку.
По данным эксперимента Американского акустического общества (ASA), участников которого просили выполнить одно и то же задание в разных акустических условиях, процент ошибок при прослушивании розового шума лишь немного превышал аналогичный показатель при работе в полной тишине. Некоторые компании пользуются такой особенностью восприятия и устанавливает в офисе специальные звуковые системы, которые излучают тихий, но успешно маскирующий разговоры окружающих людей розовый шум. Особенно часто их используют в контактных центрах, где десятки людей одновременно разговаривают по телефону.
Розовый шум для cна
Испокон веков человеческое ухо служит самым важным и наиболее чувствительным механизмом предупреждения об опасности. Мы постоянно прислушиваемся к окружению и реагируем на резкие и громкие звуки. Когда такой раздражитель маскирует полезный шум — мы становимся спокойнее.
Поэтому розовый шум советуют слушать для того, чтобы лучше спать.
Фото Chad Sparkes / Flickr CC BY
В прошлом году компания Bose представила новую модель наушников, с помощью которых нельзя послушать музыку. Они предназначены исключительно для проигрывания шума и ношения во время сна. В памяти устройства хранятся десять успокаивающих треков, частота которых подобрана таким образом, чтобы блокировать шум трафика и храп. Резиденты Reddit говорят, что гаджет неплохо справляется со своей задачей, хотя первое время вызывает дискомфорт.
Розовый шум как терапия
Шум повреждает волосковые клетки (их называют рецепторами слуховой системы) в нашем ухе. В результате мы постепенно теряем возможность слышать определенные частоты. Но очень громкий и резкий звук может привести к полной потере слуха. Иногда потеря слуха становится последствием серьёзной автомобильной аварии. Во время столкновения образуется очень высокое звуковое давление в середине частотного спектра. Этого достаточно, чтобы повредить не подготовленную барабанную перепонку.
Чтобы избежать такого исхода событий, можно предварительно «напрячь уши», вызвать у них так называемый акустический рефлекс, когда сокращается мышца между ушной раковиной и барабанной перепонкой. Сделать это помогает розовый шум. Такой подход использует Mercedes в некоторых своих автомобилях. Когда машина понимает, что столкновение неизбежно, акустическая система начинает проигрывать шум, чтобы защитить слух водителя и пассажиров.
Фото Jon Tyson / Unsplash
Также розовый шум может помочь людям, которые страдают от непрерывного звона в ушах — это почти 12% населения планеты. В легких случаях тиннитуса этот дискомфорт невелик, но если болезнь развита — звон в ушах может быть помехой для нормальной жизни и работы.
Пациентам с таким расстройством врачи рекомендуют периодически слушать розовый шум (для этого выпускают даже специальные CD-диски), чтобы расслабиться. В некоторых случаях такая терапия может научить мозг «фильтровать» звон в ушах и купирует заболевание.
Другие применения розового шума
С розовым шумом работают инженеры, производящие и тестирующие акустическое оборудование. Например, разработчики микрофонов используют его для вычисления соотношения сигнал/шум. Сначала с помощью устройства записывают однотонный звук с известными характеристиками (например, синусоиду с частотой в один килогерц), а затем — пытаются записать розовый шум, которым «наполняют» комнату. В идеале, этот шум не должен попасть в полученную запись.
Фото Daniel Sandvik / Unsplash
Розовый шум используют саунд-дизайнеры и звукорежиссёры. Например, с его помощью, создаются различные эффекты, самый простой — звук ветра. В сети даже можно найти специальные генераторы. Также розовый шум применяют для калибровки сценических мониторов во время выступлений музыкантов. В частности, с помощью специальных генераторов выстраивается линейная АЧХ в рабочем диапазоне акустической колонки.
Розовый шум используется как некий формализованный идеал, как образец для корректировки восприятия звука самим звукорежиссёром. То есть он служит своеобразным средством от «замыливания слуха», когда от продолжительной работы мозг адаптируется к тому, что слышит, и выносить объективные суждения становится тяжело.
Дополнительное чтение — в нашем «Мире Hi-Fi»:
«Несмотря на возраст»: как беречь слух
Слуховой аппарат на базе open source — как он устроен
Какие гаджеты помогут снизить окружающий шум и «поймать» концентрацию
Как треск костра, скрип дверей и обыкновенный шум становятся музыкой
Разработан метод шумоизоляции, гасящий до 94% шумов — рассказываем, как он работает
Крепче спать и лучше работать — как музыка помогает бороться с шумом
Шума стало много, шума будет мало: звуковая гигиена в городах