Задачка на засыпку для профи
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Задачка на засыпку для профи
Вот головоломка для профи (я свой мозг уже сломал ) Вот спектр двух входящих сигналов:
Плиииззз, 8-ю бессонную ночь мой мозг не выдержит
и , а это спектр выходного сигнала
Простой вопрос как это сделать? Плиииззз, 8-ю бессонную ночь мой мозг не выдержит
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
это не совсем спектр
т.к. у спектра по оси Х должна быть частота, а по оси Y значение амплитуды гармоники на этой частоте, (угол фазы гармоники - для спектра фаз)
а в Вашем случае по оси Y - частота, а по оси Х - [чмс], это видимо время, но не понятно как его притянуть к частотному спектру
так что пока, это графики
не похожие не на один из известных мне спектров
это больше похоже на свертку сигнала, например вейвлет
но я данной проблемой не занимался, могу и ошибаться
тогда итоговый сигнал получается путем преобразования "свертки" сигнала, а потом его восстановлением
т.к. у спектра по оси Х должна быть частота, а по оси Y значение амплитуды гармоники на этой частоте, (угол фазы гармоники - для спектра фаз)
а в Вашем случае по оси Y - частота, а по оси Х - [чмс], это видимо время, но не понятно как его притянуть к частотному спектру
так что пока, это графики
не похожие не на один из известных мне спектров
это больше похоже на свертку сигнала, например вейвлет
но я данной проблемой не занимался, могу и ошибаться
тогда итоговый сигнал получается путем преобразования "свертки" сигнала, а потом его восстановлением
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
ну можно спектрограммой назвать, не суть. на графиках по осям время и частота, может Power Spectrum или WVD Spectrogram VI могут подобное нарисовать, проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов... можно и нарисовать примерно так...
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
как раз проблема... разобраться в том, что же Вам надоkadr писал(а):ну можно спектрограммой назвать, не суть. на графиках по осям время и частота, может Power Spectrum или WVD Spectrogram VI могут подобное нарисовать, проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов... можно и нарисовать примерно так...
если необходимо просто вычислить "разницу амплитуд на соответствующих частотах"
то берите и вычисляйте, для этого существует БПФ - FFT, это то дело 5 минут
и не надо тут пудрить голову "страшными" рисунками
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
Эт как же? FFT минус FFT? Может конечно я чего-то не понимаю, а для Вас эт естественно, ну научите пожалуйста... покажите на пальцах ( и на VI тож желательно)IvanLis писал(а):как раз проблема... разобраться в том, что же Вам надоkadr писал(а):ну можно спектрограммой назвать, не суть. на графиках по осям время и частота, может Power Spectrum или WVD Spectrogram VI могут подобное нарисовать, проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов... можно и нарисовать примерно так...
если необходимо просто вычислить "разницу амплитуд на соответствующих частотах"
то берите и вычисляйте, для этого существует БПФ - FFT, это то дело 5 минут
и не надо тут пудрить голову "страшными" рисунками
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
kadr писал(а):проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов...
Если частота дискретизации сигналов одинаковая, то ДА. Просто минус.kadr писал(а):Эт как же? FFT минус FFT? Может конечно я чего-то не понимаю, а для Вас эт естественно, ну научите пожалуйста... покажите на пальцах ( и на VI тож желательно)
Если частоты различаются, то ситуация сложнее. Надо будет каким, то образом извращаться, но слету сказать не могу как.
Так что сразу вводите ограничение, что интервалы следования отсчетов у обоих сигналов совпадают.
не хочу навязывать своего времени, но мне кажется, что сделать Вам нужно совершенно другое
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
чет не получается, если амплитуда сигнала 1 больше амплитуды сигнала 2, то разница уходит в минус, и на спектре мы получаем инверсию, а задачка в том чтоб стремилось к нулю...IvanLis писал(а):kadr писал(а):проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов...Если частота дискретизации сигналов одинаковая, то ДА. Просто минус.kadr писал(а):Эт как же? FFT минус FFT? Может конечно я чего-то не понимаю, а для Вас эт естественно, ну научите пожалуйста... покажите на пальцах ( и на VI тож желательно)
Если частоты различаются, то ситуация сложнее. Надо будет каким, то образом извращаться, но слету сказать не могу как.
Так что сразу вводите ограничение, что интервалы следования отсчетов у обоих сигналов совпадают.
не хочу навязывать своего времени, но мне кажется, что сделать Вам нужно совершенно другое
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
на каком спектре?kadr писал(а):чет не получается, если амплитуда сигнала 1 больше амплитуды сигнала 2, то разница уходит в минус, и на спектре мы получаем инверсию, а задачка в том чтоб стремилось к нулю...
это кажется Вы писали?kadr писал(а):проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов...
и как Вы не поймете, что не спектр у вас на рисунке....!
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
ну а что это тогда?IvanLis писал(а):на каком спектре?kadr писал(а):чет не получается, если амплитуда сигнала 1 больше амплитуды сигнала 2, то разница уходит в минус, и на спектре мы получаем инверсию, а задачка в том чтоб стремилось к нулю...это кажется Вы писали?kadr писал(а):проблема не нарисовать а посчитать разницу амплитуд на соответствующих частотах входных сигналов...
и как Вы не поймете, что не спектр у вас на рисунке....!
Да тут не просто разница, суть в том что, чем больше амплитуда конкретной частоты в данный момент времени в сигнале 1, тем должна быть меньше амплитуда этой же частоты в этот же момент времени в сигнале 2... Может фильтр управляемый какой-то есть?
- Вложения
-
- чтоэто.vi
- (50.75 КБ) 166 скачиваний
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
Дело немного сдвинулось...kadr писал(а):ну а что это тогда?
Да тут не просто разница, суть в том что, чем больше амплитуда конкретной частоты в данный момент времени в сигнале 1, тем должна быть меньше амплитуда этой же частоты в этот же момент времени в сигнале 2... Может фильтр управляемый какой-то есть?
Спектрограмма или как еще называют - Сонограмма
достаточно образное описание, но понятно я думаюСонограмма
вот представь что ты видишь перед собой спектр сигнала за небольшой кусочек времени. По оси Х слева-направо отложены частоты: от 20Гц до 20кГц. По оси У отложен уровень каждой из частот в дБ. Т.е. спектр тебе показывает скока каких частот находится в этом кусочке.
Далее напрягись и включай воображение. Напомню, что сейчас ты видишь перед собой некоторую кривую: зависимость громкости от частоты. Теперь для прикола поворачиваем этот наш график на 90 градусов налево: теперь 20Гц внизу, а 20кГц вверху. Теперь представь, что ты пытаешься заглянуть на всё это дело слева: т.е. смотришь не на экран, а вдоль экрана и видишь всего лишь одну вертикальную линию от 20Гц до 20кГц. Значение же уровня с этой точки ты наблюдать не можешь: они кажутся тебе одинаковыми. Возникает вопрос - как смотря сбоку понять какая точка ближе к тебе, а какая дальше. Представь что ты на самолёте летишь и тебе надо понять какой из домов выше, а какой ниже, притом что ты видишь только их крышу. Ну так вот давай договоримся, что чем выше дом, тем белее у него крыша. А чем ниже - тем темнее. Т.е. земля без дома - чёрного цвета. А самый высокий дом имеет крышу белого цвета. Т.е. уровень сигнала чёрный, когда амплитуда стремится к -бесконечности и белый, когда она равна 0дБ. Теперь вспоминаем, что наш график был для одно маленького участочка во времени. Весь наш трэк поделён на большое число таких участочков. Вот мы берём и для каждого из них делаем вот такой вот график с видом сбоку ираскрашенный в соответствии с указанным тока что правилом. Затем выстраиваем их друг за другом и... получаем чёрно-белую сонограмму. Понятно боле-менее? Цветная от чёрно-белой отличается ровно тем, что вместо градаций серого для значения амплитуды выбирают какой-то из оттенков цветов. Например самый тихий - чёрный. Потому уровень постепенно увеличивается и он становится синим, потом из синего переходит в зелёный и наконец самый громкий сигнал рисуешь красным цветом. Ну одним словом это надо уже конкретно смотреть на то по какому принципу сонограмма раскрашена.
в принципе, как и предполагалось ранее, это "оконная свертка"
Посмотрите статью: Осторожно, сонограмма, или не верь глазам своим!
wikipedia.org - Spectrogram
Слету не готов сказать, попробую отпишусь, Вы тоже ручки не складывайте.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
в частотной области сделал
второй сигнал (который надо "вычесть") нормирую на интервал 0..1
делаю "инверсию" (1 - "нормированный сигнал") - имеем - чем больше амплитуда, тем ближе к "0"
а после этого умножаю на получившееся первый сигнал
вот сам файл
использовал Ваши исходники и изменял их
алгоритм следующийвторой сигнал (который надо "вычесть") нормирую на интервал 0..1
делаю "инверсию" (1 - "нормированный сигнал") - имеем - чем больше амплитуда, тем ближе к "0"
а после этого умножаю на получившееся первый сигнал
вот сам файл
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
Здорово!!! Огромное спасибо!!! Работает так как надо, только вот чем сделать обратное STFT чтоб сигнальчик получить??IvanLis писал(а):в частотной области сделал
вот сам файл
[/attachment]
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
По идее операция "локального преобразования фурье" не обратимая, но это мне так кажется. Если и обратима, то с определенными погрешностями, которые зависят от параметров прямого преобразования.kadr писал(а):Работает так как надо, только вот чем сделать обратное STFT чтоб сигнальчик получить??
По описаниям STFT используется для анализа, но не преобразований, так что не знаю.
У меня сейчас времени не много этим заниматься, по возможности попробую, что-нибудь родить.
Но мне кажется нужно делать преобразования на этапе FFT в этом случае и обратное преобразование гарантировано, а STFT использовать только для самоконтроля и визуализации.
Последний раз редактировалось IvanLis 07 авг 2011, 16:33, всего редактировалось 1 раз.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Задачка на засыпку для профи
А Вы случайно не подобное пытаетесь реализовать?
В приложенных файлах есть даже ссылки на алгоритмы.
Только почему в Вашем примере из шума сигнал вычитали? фильтрация сигнала осуществляется по другому принципу... Хотя какая разница...В приложенных файлах есть даже ссылки на алгоритмы.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 10
- Зарегистрирован: 02 авг 2011, 18:14
- Версия LabVIEW: 10
- Контактная информация:
Re: Задачка на засыпку для профи
Да, все правильно, в примерах именно из шума сигнал, а вообще цель - по тому же алгоритму из сигнала "вычесть" другой сигнал...IvanLis писал(а):А Вы случайно не подобное пытаетесь реализовать?Только почему в Вашем примере из шума сигнал вычитали? фильтрация сигнала осуществляется по другому принципу... Хотя какая разница...
В приложенных файлах есть даже ссылки на алгоритмы.