:: Курилка
Генератор фликер шума
boba
Автор

Сообщений: 6269
Откуда: Медвежьи озера-
Дата регистрации: 26.03.2001
Видел недавно (вроде на Дельфи) , но сейчас не могу найти
Нужна программа генератор фликер шума, неважно на каком языке,
главное текст.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Думаю, что еще за шум такой.
Белый шум вроде знаю, а это что. :al:
Поискал ради интереса, нашлось описание: habr.com
Оно пишется оказывается с двумя "кк" - "фликкер". Хаккер. Студебеккер.
Оказалось, что это самый обыкновенный "розовый шум".
Как говорится Ёклмн. [sm128]
Всю жизнь по русски назывался.
А вот поди ж ты, стал фликкером.
Вот жеж до чего нынче все американизмами у нас поросло.
Куда ни плюнь, всюду менеджеры, куеджеры, провайдеры и супервайзеры, интересно кстати, чем они отличаются от просто "вайзеров", тем, что они "супер"-вайзеры? И все при этом занимаются сплошными лизингами-дриблингами, консалтингами и прописайтингами.

Кстати по поводу программ, попалось вот такое: zetlab.com - как я понял это уже готовая программа, при этом вроде бы еще и платная.
И статья "КОМПЬЮТЕРНАЯ ПРОГРАММА ЦИФРОВОЙ ГЕНЕРАЦИИ ФЛИККЕР-ШУМА": www.elibrary.ru - возможно и бесплатная, но там требуется регистрация в библиотеке, чтобы войти, т.е. надо тыкаться в начале, как-то не захотелось.

Собственно кодов же подобной программы похоже действительно в открытом доступе не встретишь.
То ли программная реализация их непростая, то ли что.
Хотя скажем обычные схемы розового шума, которых везде полно, вроде бы и не сложные. [sm128]


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
boba
Автор

Сообщений: 6269
Откуда: Медвежьи озера-
Дата регистрации: 26.03.2001
Вход на www.elibrary.ru
у меня есть
Ни полного текста статьи ни текста программы
в указанной ссылке нет.
Что такое фликер шум, я знаю.
Дело не в платности программы,
а в том, что нужна такая программа,
вызов которой можно вставить в свою
для генерации нужных сигналов.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
() Интересно, какой спектр по мощности у ГСЧ (например, у фоксового, считая его идеальным), и какое преобразование над его значениями можно сделать, чтобы получить желаемый спектр... Интуитивно ГСЧ должен иметь спектр "белого шума" по уровню...

Цифровое моделирование случайных процессов, Бакалов В.П. - чето не дают скачать...
www.08.coolagin.ru - вот тут ссылка на дежавю есть
Ой, это пипец!

yandex.ru - генерация белого шума, алгоритм
www.omgtu.ru - инструкция к Simulink
elibrary.ru - ссылка на статью с программным генератором р.ш.



Исправлено 6 раз(а). Последнее : of63, 18.09.20 09:37
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
У фоксового вроде маловат период повтора цикла. Он же не ГСЧ, а ГПСЧ. Как-то это все обсуждали.
Хотя для розового шума нужен похоже довольно непростой алгоритм. Там в хабровской статье по ссылке выше почитай.
Для белого-то и то сходу и не поймешь как программровать.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
Одинаково программировать. Просто белый шум равномерен по "громкости" на заданном диапазоне частот. А розовый - спадает 1/f. А синий - нарастает f.
Есть ещё фиолетовый - f^2 и красный f^(-2).

Только я чёт затрудняюсь на фоксе это реализовать.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Simple777

Сообщений: 33855
Дата регистрации: 05.11.2006
leonid сможет ассемблерную вставку сделать, ежели захочет.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
А какая разница на чем? Мы же не в реальном времени собираемся генерировать шум, не реальныйй сигнал со спеутром в кГц и более. Меееедленно сгенерим кривую, потом быстро её проиграем.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
of63
А какая разница на чем? Мы же не в реальном времени собираемся генерировать шум, не реальныйй сигнал со спеутром в кГц и более. Меееедленно сгенерим кривую, потом быстро её проиграем.
Самое простое это сгенерировать несколько рандомных волн с разной амплитудой и фазой, так что бы высокочастотные волны по мощности (громкости) логарифмически убывали относительно низкочастотных. Потом сложить их вместе преобразованием фурье. Это аддитивный метод генерации шума. Правда он и самый затратный.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Да, можно синтезировать из нескольких генераторов. А можно фильтровать белый шум.

> Потом сложить их вместе преобразованием фурье
Просто сложить, наверное?



Исправлено 1 раз(а). Последнее : of63, 18.09.20 10:41
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
Волна задаётся в периодах относительно отрисовываемого поля. А для получения нужного результата стоит много-много поиграться с генерацией исходных волн.
Похоже, деление на lnWaves - лишнее.

CLEAR
&& -2 - красный шум, -1 - розовый, 0 - белый, 1 - синий, 2 - фиолетовый
lnTypeNoise = -1
lnSamples = 1200
DIMENSION laSample (lnSamples)
lnWaves = 10
DIMENSION laWave (lnWaves, 3)
* Генератор волн
FOR lnCnt = 1 TO lnWaves
laWave[lnCnt, 1] = 1 + FLOOR(RAND() * lnSamples / 10) && Волна произвольной длины
laWave[lnCnt, 2] = RAND() * PI() * 2 && Произвольный сдвиг по фазе
laWave[lnCnt, 3] = laWave[lnCnt, 1] ^ lnTypeNoise && Уменьшаем или увеличиваем уровень шума в зависимости от длины волны
NEXT lnCnt
* Генератор шума
lnMin = +100
lnMax = -100
FOR lnX = 1 TO lnSamples
lnSum = 0
FOR lnWave = 1 TO lnWaves
lnSum = lnSum + Curve(laWave[lnWave, 1], laWave[lnWave, 2], lnX) * laWave[lnWave, 3]
NEXT lnWave
laSample[lnX] = lnSum && / lnWaves Вот здесь у меня вопрос.
lnMin = MIN(lnMin, laSample[lnX])
lnMax = MAX(lnMax, laSample[lnX])
NEXT lnX
* Вывод
lnY = 1
lnScale = _SCREEN.Height / (lnMax - lnMin) * 0.9 && Рамочку оставляем небольшую
lnOffSetY = lnScale * ABS(lnMin) + 0.05 * _SCREEN.Height && И здесь рамочку
FOR lnX = 2 TO lnSamples
_SCREEN.Line( ;
lnX - 1, ;
lnOffSetY + lnScale * lnY, ;
lnX, ;
lnOffSetY + lnScale * laSample[lnX])
lnY = laSample[lnX]
NEXT lnX
FUNCTION Curve
LPARAMETERS tnFreq, ; && Частота в периодах на ширину заполняемой области
tnPhase, ; && Сдвиг по фазе
tnX && Что заполняем
RETURN sin(2 * PI() * tnFreq * tnX / lnSamples + tnPhase)
ENDFUNC



Исправлено 1 раз(а). Последнее : pasha_usue, 18.09.20 11:21
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Это все красиво в теории. ;)
Обычный сигнал понятно как спрограммировать.
А как белый шум?
Там ведь по идее все(!) вообще частоты должны присутствовать.
Ну розовый электронным способом вроде можно получать просто фильтруя спектр.
Т.е. теоретически и программным можно получить из белого как-то в таком же роде.
Но как получить белый?
Чото мне кажется задачка далеко не тривиальная. [sm128]

Хм. пока писал, наверьху чего-то уже нарисовалось.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)




Исправлено 1 раз(а). Последнее : Crispy, 18.09.20 11:22
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Кстати, вот подумалось, можно ж вообще намного проще сделать.
Смотря правда для какой оно цели нужно.
Но если цель не какая-то супер-пупер-невероятная, то можно ж вообще просто:
взять кусок скажем wav-файла с розовым шумом, и запустить его на проигрывание с зацикливанием. [sm128]


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Плюсанул! Взять всё, и записать, с реального шумового сигнала. (Только он не случайный будет, т.е. такой же по спектру, но другой, не сгенеришь...)

Продолжу найденные ссылки здесь
forum.sources.ru - генератор белого шума, код (генератор случайных последовательностей Парка-Миллера)
www.firstpr.com.au - по-ненашему статейки, они там все нагенерили столько шума!
rpubs.com
electronix.ru
nabatchikov.com - белый шум для чайников



Исправлено 6 раз(а). Последнее : of63, 18.09.20 12:04
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
of63
Плюсанул! Взять всё, и записать, с реального шумового сигнала. (Только он не случайный будет, т.е. такой же по спектру, но другой, не сгенеришь...)

Так можно звуковой кусок взять подлиннее. Хотя мне почему-то кажется что и небольшого будет более чем.
Все одно истинных ГСЧ у простых программистов нигде нет, ни в одной среде (истинный ГСЧ создается только для осбых целей путем снятия реальных физических процессов).
А все ГПСЧ в любых реализациях имеют свой цикл, свою повторяемость.
К тому же физика реального файла на мой взгляд очень даже подходит - ведь задача как раз именно ее и сымитировать.
А уж про простоту реализации в коде и говорить нечего.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
boba
Автор

Сообщений: 6269
Откуда: Медвежьи озера-
Дата регистрации: 26.03.2001
В оригинале статьи в одной из цитированных
источников Efficient numerical and analog modeling of flicker noise processes. [Washington, D.C.]: U
Есть в конце текст программы на ФОРТРАНЕ,
сейчас попробую воспроизвести Фокс аналог.
Спасибо за ссылки.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
sphinx

Сообщений: 31179
Откуда: Каменск-Уральски
Дата регистрации: 22.11.2006
Фортран, уверен, ты помнишь.


------------------
"Veni, vidi, vici!"(с)
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Crispy
Все одно истинных ГСЧ у простых программистов нигде нет, ни в одной среде (истинный ГСЧ создается только для осбых целей путем снятия реальных физических процессов).
Конечно же это не так уже много лет. Истинный ГСЧ встроен в CPU
en.wikipedia.org

Есть и специализированные отдельные платы - если уж для работы нужно (CPU-ный довольно медленный).


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
boba
Автор

Сообщений: 6269
Откуда: Медвежьи озера-
Дата регистрации: 26.03.2001
Фортран, что называется один из моих родных языков.
Я бы сказал ДревнеФортран
Тут такая штука ,
снимал клипбоад с текста пдф,
и местами непонятно, где i,l , где 1
Сижу, эксперементирую.
Ratings: 0 negative/0 positive
Re: Генератор фликер шума
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
boba
и местами непонятно, где i,l , где 1

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


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 26 (Гостей: 26)

© 2000-2024 Fox Club 
Яндекс.Метрика