Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вейвлеты
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Страницы: 1, 2
1ns1d3r
Здравствуйте.
Возможно кто-то сталкивался в вейвлетами и может ответить на несколько вопросов?

1. С какими целями можно применять анализ с помощью вейвлетов в радиоэлектронике?/какую инфу получаем, какой практический смысл?/

2. Посоветуйте литературу по теме /в которой были бы описаны методы анализа и что нам они дают/
jorikdima
Цитата(1ns1d3r @ Dec 3 2009, 20:01) *
Здравствуйте.
Возможно кто-то сталкивался в вейвлетами и может ответить на несколько вопросов?

1. С какими целями можно применять анализ с помощью вейвлетов в радиоэлектронике?/какую инфу получаем, какой практический смысл?


Сжатие, устранение шумов, выделение .... как бы это сказать, аномальных участков сигнала что ли.

Цитата(1ns1d3r @ Dec 3 2009, 20:01) *
2. Посоветуйте литературу по теме /в которой были бы описаны методы анализа и что нам они дают/

Можно в хелпе матлаба порыться, если быстро, неглубоко и бесплатно. Заодно и на примерах пощупать.
Serhiy_UA
Цитата(1ns1d3r @ Dec 3 2009, 20:01) *
2. Посоветуйте литературу по теме...


Прилично для начала в http://prodav.narod.ru/wavelet/index.html

Прорабатывали использование для двухмерной цифровой фильтрации от помех для видео применительно к РЛС. Обнадеживает, но надо еще много разбираться.
анатолий
Ступень вейвлет-разложения можно трактовать как
своего рода фильтрацию полуполосными ФНЧ и ФВЧ с таким эффектом,
что если сложить сигналы после фильтрации, то получится в точности то же, что до фильтрации.
При этом неважно, насколько подавление в полосах задержания.
И сами вейвлеты действуют как импульсные реакции некоторых ФНЧ и ФВЧ.
syoma
Почитал немножко http://prodav.narod.ru/wavelet/index.html
Но, вот что я не понял - это применимость этих вейвлетов к обработке сигналов реального времени.
В примерах всегда дается законченый сигнал и мне непонятно, на каком этапе или после анализа какого кусочка сигнала вейвлет может представить смысловую информацию, достаточную, например для фильтрации этого сигнала. После анализа всего заданного куска или периода?
Вот мне, например, надо из сигнала выделять гармоники в реальном времени. При использовании преобразования Фурье, ему надо дать один период сигнала, чтобы точно подсчитать аплитуды и фазы гармоник. То есть задержка - один период.
А можно ли с помощью вейвлетов получить ту-же информацию, скажем проанализировав 1/4 того же периода? Я конечно, понимаю, что похоже на бред -откуда тогда взяться инфе о частотах, с периодом больше чем анализируемый, но какое-то(желательно конкретное) предположение сделать все-таки можно или нельзя?
1ns1d3r
Спасибо за ответы.

Цитата(Serhiy_UA @ Dec 4 2009, 12:58) *
Прорабатывали использование для двухмерной цифровой фильтрации от помех для видео применительно к РЛС. Обнадеживает, но надо еще много разбираться.

А можно подробнее?
анатолий
Цитата(syoma @ Dec 4 2009, 14:42) *
А можно ли с помощью вейвлетов получить ту-же информацию, скажем проанализировав 1/4 того же периода? Я конечно, понимаю, что похоже на бред -откуда тогда взяться инфе о частотах, с периодом больше чем анализируемый, но какое-то(желательно конкретное) предположение сделать все-таки можно или нельзя?

Нельзя. Импульсная реакция вейвлета - она похожа на ту же синусоиду в ядре ДПФ, умноженную на временное окно.
Единственное убыстрение - это высокие частоты обнаруживаются в несколько раз оперативнее, чем через ДПФ - и в этом смысл самого вейвлет-преобразования.
Serhiy_UA
Цитата(1ns1d3r @ Dec 4 2009, 23:49) *
А можно подробнее?


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

Посмотрите еще здесь: http://electronix.ru/forum/index.php?showtopic=39542&hl=
RadioJunior
Цитата(1ns1d3r @ Dec 3 2009, 20:01) *
1. С какими целями можно применять анализ с помощью вейвлетов в радиоэлектронике?/какую инфу получаем, какой практический смысл?

Анализ сигналов. Инфа - спектр по времени и частоте. Смысл - такой же как и от любого спектра.
Цитата(1ns1d3r @ Dec 3 2009, 20:01) *
2. Посоветуйте литературу по теме /в которой были бы описаны методы анализа и что нам они дают/

достаточная для понимания литература
DRUID3
Цитата(1ns1d3r @ Dec 3 2009, 19:01) *
Здравствуйте.
Возможно кто-то сталкивался в вейвлетами и может ответить на несколько вопросов?

1. С какими целями можно применять анализ с помощью вейвлетов в радиоэлектронике?/какую инфу получаем, какой практический смысл?/

Инфу - как в любом подобно задаваемом разложении - величину корреляции с базисной функцией.
А с какими целями - с которыми не справляются гармонические (Фурье, косинусный, синусный etc.) или другие базисы определенные на всей оси 0X(Уолша, например). Где хочется забыть что так или иначе задавая интервал рассмотрения мы неявно домножаем наши базисные функции на оконную функцию вида (...0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0...). Т.е. "1" на интервале рассмотрения "0" на всем остальном... Это чисто математический аспект. Есть еще психофизический - сжатие по вейвлет базису воспринимается мозгом намного "приятнее"(почти как "ламповый звук" biggrin.gif ) чем сжатие во взаимной корреляции пятнышек 8x8. Хотя численное значение погрешности может быть при этом равно и даже больше у вейвлет-кодека... По степени сжатия (для видео до 300!!!) не имеют(и видимо уже никогда не заимеют) себе конкурентов - у фрактального сжатия параметры близки, но требуемая ресурсоемкость на порядки(!!!) выше...

Еще базис Добеши (особенно для 2-х точечного случая - FIR и децимация вырождаются в блочное сложение с умножением, без всякой там кольцевой адресации) очень быстро вычисляем. Это много где можно использовать там где требуется наложить фильтр при малых ресурсах - "обходит" то же Фурье по детализации в пределах окна и является очень удачным компромиссом для блочного фильтра с "качеством" скользящего.

Но вообще имя вейвлетам - легион(ортогональные, биортогональные, неортогональные... комплексные и вещественные...определенные на конечном интервале и нет ...etc). Их очень много (почти как звезд на небе smile.gif ) - и далеко не все быстровычисляемы.

И еще. Сейчас в инете дофига белиберды (обычно в виде измаранного PDF документа) из цикла "нанофракталы в вейвлетах...". Пожалейте себя (бумагу уже в наш век просвещения марают все реже и реже) - если не можете найти применение вейвлет анализу - поищите что-то по-интереснее.

Цитата(1ns1d3r @ Dec 3 2009, 19:01) *
2. Посоветуйте литературу по теме /в которой были бы описаны методы анализа и что нам они дают/

ммм... Великая Книга Судеб?
Это я ерничаю конечно... Вы сами должны определить что они Вам дают. Нет книг с ответами на все вопросы. rolleyes.gif
Но я понял о чем Вы. Итак на русском(единственном иносранном который я знаю сносно...кхе-кхе-кхе biggrin.gif ):

Применение вейвлетов для ЦОС(Г.-Г.Штарк) - очень кратко, но метко wink.gif . Тонкая(а значит за обозримый участок времени усвояемая wink.gif ) книжеца. Немного о разных типах вейвлетов, базис Добеши, базис с линейной ФЧХ(для JPEG 2000, например), 2D случай. Кодек Хаффмана и арифметическое кодирование... Очень "тонко" дан FIR и IIR фильтр - иллюстративно... Вобщем заточена под фотокодирование - советую...

Вейвлеты в обработке сигналлов(С.Малла) - Хорошая книга из цикла "толстая значит справочник". Есть маленькие заскоки в сторону матформализма, но в целом ее может читать и не математик.
sidy
Всем доброго времени суток. Меня интересует такой практический вопрос для случая сжатия статических изображений. В случае вейвлета Хаара вычисляется полусумма и полуразность между двумя соседними пикселями. А каков алгоритм в случае вейвлета Добеши? Говорят, что вейвлет Добеши использует больше чем два соседних пикселя. Можно рассказать об этом более подробнее? Спасибо.
roscha
Цитата(sidy @ Mar 29 2010, 21:00) *
Всем доброго времени суток. Меня интересует такой практический вопрос для случая сжатия статических изображений. В случае вейвлета Хаара вычисляется полусумма и полуразность между двумя соседними пикселями. А каков алгоритм в случае вейвлета Добеши? Говорят, что вейвлет Добеши использует больше чем два соседних пикселя. Можно рассказать об этом более подробнее? Спасибо.

Для сжатия статических изображений лучше (и на практике широко используется) биортогональный вейвлет.
Алгоритмом Моллата двумерный вейвлет сводится к последовательности одномерных. В результате получаются блоки вейвлет-коэффициентов.
Если сжатие с потерями, то вейвлет-коэффициенты поблочно подвергаются дополнительному квантованию.
Наконец, независимо от того, с потерями сжимаем или без потерь, совокупность вейвлет-коэффициентов подвергается энтропийному кодированию,
например, кодированию длинных серий (RLE - run-length-encoding) и Хаффмана.
DRUID3
Цитата(sidy @ Mar 29 2010, 19:45) *
Всем доброго времени суток.

Sieg Heil!

Цитата(sidy @ Mar 29 2010, 19:45) *
Меня интересует такой практический вопрос для случая сжатия статических изображений.


Цитата(sidy @ Mar 29 2010, 19:45) *
В случае вейвлета Хаара вычисляется полусумма и полуразность между двумя соседними пикселями.

biggrin.gif А в случае 2-х точечного FFT(DFT) не так? biggrin.gif Вся эта магия "Хаара" есть толко для 2-х точек - очевидно, что для любого подобного рода разложения мы ищем корреляцию с каждой, отдельно взятой из определенного набора(базиса), функцией на том или ином интервале. Этот алгоритм практически сводится к FIR с добавлением масштабирования - иначе значения будут бессмысленны. Но для семейства Хаар-Добеши-"Биортогонал" - по-сути имеющих одну природу - принцип построения базиса(с дополнительными требованиями упрощение формулы разложения/реконструкции и линейности ФЧХ соответственно), преобразование сводится, в общем случае, к децимация->FIR для одной подветки->на выходе - тот или иной коэффициент DWT,децимация для другой... и т.д. пока длинна функции для FIR не станет равна длине его самого. И только в частном случае - в случае 2-х точечной длинны FIR Хаар и Добеши сведутся к тем или иным блочным суммам. И только потому что децимация так "уродует" 2-х точечный FIR.

Цитата(sidy @ Mar 29 2010, 19:45) *
А каков алгоритм в случае вейвлета Добеши?

Вообще-то они родные братья...

Цитата(sidy @ Mar 29 2010, 19:45) *
Говорят, что вейвлет Добеши использует больше чем два соседних пикселя. Можно рассказать об этом более подробнее? Спасибо.

Дак и "Хаар" и "биортогонал" могут быть сколь угодно длинными изначально...

Bitte, gesundheit...


Цитата(roscha @ Apr 23 2010, 10:49) *
Для сжатия статических изображений лучше (и на практике широко используется) биортогональный вейвлет.

...он конечно лучше - по той простой причине, что из самого своего определения имеет линейную ФЧХ. Потому для высококачественного видео или фото(тот же JPEG2000) используется именно такой базис...
Но для дешевых видеорегистраторов например - это очень расточительно. Из 2-х точек биортогональный вейвлет-базис не построить, а FIR и децимация уже не выродятся в блочную сумму...

Цитата(roscha @ Apr 23 2010, 10:49) *
Алгоритмом Моллата двумерный вейвлет сводится к последовательности одномерных.

А можно по-подробнее, просто не встречал определение еще... Или это кто-то переоткрыл способ многомерного интегрирования-суммирования в Декартовом "мире" и назвал в честь себя?

Цитата(roscha @ Apr 23 2010, 10:49) *
В результате получаются блоки вейвлет-коэффициентов.

логично biggrin.gif ...

Цитата(roscha @ Apr 23 2010, 10:49) *
Если сжатие с потерями, то вейвлет-коэффициенты поблочно подвергаются дополнительному квантованию.

...именно на сжатии с потерями вейвлеты обходят любых конкурентов по соотношению качество(сумма субъективных оценок)/размер картинки или ролика.

Цитата(roscha @ Apr 23 2010, 10:49) *
Наконец, независимо от того, с потерями сжимаем или без потерь, совокупность вейвлет-коэффициентов подвергается энтропийному кодированию,
например, кодированию длинных серий (RLE - run-length-encoding) и Хаффмана.

Причем зачастую в одной и той же операции с отбрасыванием незначимых коэффициентов DWT. И иногда в исходнике вообще не поймешь что хотел сказать аФФтАр.

P.S.: это все есть в книжонках которые я порекомендовал, не ленитесь скачайте(купите бумажную, как вариант) их и прочтите хоть самую тонкую...
Xenia
Цитата(DRUID3 @ Apr 28 2010, 03:54) *
...он [биортогональный вейвлет] конечно лучше - по той простой причине, что из самого своего определения имеет линейную ФЧХ. Потому для высококачественного видео

А где бы можно было раздобыть алгоритм, адаптированный к МК (32-разрядному)? Причем желательно (если это возможно) не на флоатах, а на целочисленной сетке - пусть не так точно, зато быстрее.
К сожалению большинство готовых алгоримов бывают написаны столь витиевато, что их логику не разобрать: несколько десятков подпрограмм-функций, которые по кругу вызывают друг дружку. Бывают даже FFT-алгоритмы, написанные столь же причудливо. А мне бы хотелось, чтобы логика была глазом видна.
GetSmart
DRUID3, на странице 23 файла взятого отсюда http://www.autex.spb.ru/download/wavelet/books/tutorial.pdf есть вейвлет спектр ЧМ сигнала. Там что, зеркалки вылазят? На графике раздвоение частот видно, причём чертовски далеко друг от друга. Это врождённый недостаток дискретного вейвлет преобразования?

Ну то есть (может неправильно выразился) вторая палка вылазит из-за того, что разрешение на ВЧ плохое и из-за этого появляется ещё палка с разницей между реальной частотой синусоиды и той, к которой она была приближена. И разница вылазит на НЧ диапазоне в виде ещё одной палки.
DRUID3
Цитата(GetSmart @ May 6 2010, 12:33) *
DRUID3, на странице 23 файла взятого отсюда http://www.autex.spb.ru/download/wavelet/books/tutorial.pdf есть вейвлет спектр ЧМ сигнала. Там что, зеркалки вылазят? На графике раздвоение частот видно, причём чертовски далеко друг от друга. Это врождённый недостаток дискретного вейвлет преобразования?

на том рисунке не вейвлет преобразование... а кратковременное оконное БПФ. Симметрия - частный случай, сигнал такой... Хотя нет - я туплю по-поводу симметрии - присмотрелся, это у них так выше Нейквиста нарисовано...


Цитата(GetSmart @ May 6 2010, 12:33) *
Ну то есть (может неправильно выразился) вторая палка вылазит из-за того, что разрешение на ВЧ плохое и из-за этого появляется ещё палка с разницей между реальной частотой синусоиды и той, к которой она была приближена. И разница вылазит на НЧ диапазоне в виде ещё одной палки.

Вот 2-а одинаковых импульса, но сдвинутые на отрезок - будет ли корреляция максимальной - а если нет, как учесть масштаб(энергию) и фазу(время) - т.е. это импульс такой энергии или коррелированность недостаточна? Понятное дело, что если сигнал не синхронен с окном вейвлет преобразования то он размажется по соседним бинам, в том числе низкочастотным, даже если по форме точно совпадает с одним из маштабов вейлета. Это о размытости - она будет всегда в такого рода преобразованиях.

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

В Вашем случае наиоптимальнейшим будет скользящий поиск корреляции, и скорее всего в виде адаптивной структуры... Но об этом позже, я тороплюсь к зубному врачу...
trex
Цитата(DRUID3 @ Dec 21 2009, 06:34) *
Инфу -............

Но вообще имя вейвлетам - легион(ортогональные, биортогональные, неортогональные... комплексные и вещественные...определенные на конечном интервале и нет ...etc). Их очень много (почти как звезд на небе smile.gif ) - и далеко не все быстровычисляемы.

И еще. Сейчас в инете дофига белиберды (обычно в виде измаранного PDF документа) из цикла "нанофракталы в вейвлетах...". Пожалейте себя (бумагу уже в наш век просвещения марают все реже и реже) - если не можете найти применение вейвлет анализу - поищите что-то по-интереснее.


ммм... Великая Книга Судеб?
Это я ерничаю конечно... Вы сами должны определить что они Вам дают. Нет книг с ответами на все вопросы. rolleyes.gif
Но я понял о чем Вы. Итак на русском(единственном иносранном который я знаю сносно...кхе-кхе-кхе biggrin.gif ):

Применение вейвлетов для ЦОС(Г.-Г.Штарк) - очень кратко, но метко wink.gif . Тонкая(а значит за обозримый участок времени усвояемая wink.gif ) книжеца. Немного о разных типах вейвлетов, базис Добеши, базис с линейной ФЧХ(для JPEG 2000, например), 2D случай. Кодек Хаффмана и арифметическое кодирование... Очень "тонко" дан FIR и IIR фильтр - иллюстративно... Вобщем заточена под фотокодирование - советую...

Вейвлеты в обработке сигналлов(С.Малла) - Хорошая книга из цикла "толстая значит справочник". Есть маленькие заскоки в сторону матформализма, но в целом ее может читать и не математик.



Как в таком случае выбирать тип материнского вейвлета для анализа например гармонического сигнала? Ведь одно дело когда мы анализируем структуру временного ряда блеска квазара или движение курса валют на форексе и иное дело когда имеем дело с сейсмической трассой. Будет ли правильным если для последнего случая анализа гармонического сигнала использовать гармонические вейвлеты - но они имеет плохую сходимость я так понял? И потом - если взять сумму всех значений амплитуда/частота в скаллограмме по всем временам вдоль сигнала - то получим ли что то подобное спектру Фурье?
Oldring
Цитата(trex @ Jul 22 2010, 14:18) *
Как в таком случае выбирать тип материнского вейвлета для анализа например гармонического сигнала?


Хм... Наверное, единственное, что можно тут ответить - исходя из целей "анализа гармонического сигнала". Какую информацию хотите извлечь, зная априорно, что сигнал гармонический?
trex
Цитата(Oldring @ Jul 22 2010, 13:28) *
Хм... Наверное, единственное, что можно тут ответить - исходя из целей "анализа гармонического сигнала". Какую информацию хотите извлечь, зная априорно, что сигнал гармонический?

Ну например простейшая задача - качественное сравнение спектрограмм - если будем использовать вейвлет Морле или например Литвулда Пери - будем ли иметь квазипохожее распределение амплитуда/частота/время? Если нет - то тогда где-то упоминается - для каких задач используется тот или иной вейвлет базис?
Или например - фильтрация - будет ли правильным считать, что если мы выбрасываем некий коэффициент разложения после вейвлет трансформации сигнала то мы аналогично можем это повторить в помощью например режекторного фильтра в смысле Фурье? Но тогда в чем прелесть вейвлеттрансформации - только в представлении результата - знание АЧХ в определенное время а не за промежуток времени как в Фурье?
Или например - что то типа эхолокации - как выделить импульс отражения от площадок из интерференционного сигнала? каким вейвлетом можно воспользоваться?
Oldring
Цитата(trex @ Jul 22 2010, 15:43) *
Ну например простейшая задача - качественное сравнение спектрограмм



Это всё замечательно, но при чем тут "гармоническй сигнал"?
trex
Цитата(Oldring @ Jul 22 2010, 14:58) *
Это всё замечательно, но при чем тут "гармоническй сигнал"?

этот пункт к вопросу вообще об вейвлет трансформации
trex
вопрос - можно ли работать с вейвлет спектром одного дискрета? Т.е. скалограмма дает нам амплитудно-частотную развертку по каждому из дискретов сигнала, мы видим общую картину, а можно ли анализировать вейвлет спектр не вдоль ряда но только для одного конкретного дискрета сигнала? Т.е. - говоря категориями Фурье - спектр Фурье - в среднем по всему сигналу (или его части, довольно продолжительной, что бы частоты не размазались на спектре), а в смысле вейвлет спектра - можно ли работать с "мгновенным" спектром для отдельного дискрета (свертка, энергия и т.п.)?
Oldring
Цитата(trex @ Jul 26 2010, 15:48) *
вопрос - можно ли работать с вейвлет спектром одного дискрета?


Конечно нет.

Раз "дискрет" - значит речь идет про дискретное вейвлет-преобразование. Насколько я помню, для последовательности короче материнского вейвлета оно не определено. А сам материнский вейвлет должен иметь нулевое среднее, поэтому если он имеет длину один - то он нулевой.

laughing.gif
trex
Цитата(Oldring @ Jul 27 2010, 08:14) *
Конечно нет.

Раз "дискрет" - значит речь идет про дискретное вейвлет-преобразование. Насколько я помню, для последовательности короче материнского вейвлета оно не определено. А сам материнский вейвлет должен иметь нулевое среднее, поэтому если он имеет длину один - то он нулевой.

laughing.gif

ээээмс.....наверное я немного неправильно рассказал, все же в варианте непрерывного вейвлетпреобразования, в матлабе например в тулбоксе для вейвлет-трансформации из скаллограммы еще вытаскивается график распределения "амплитуд частот" вдоль определенного уровня "частоты", а можно ли так же вытащить не вдоль но поперек smile.gif - это будет математически грамотно? А вот по поводу короче-длиннее - тут Вы наверное все же говорите об треугольнике влияния? т.е. для низких частот область расчета в одной точке охватывает несколько дискретов сигнала , для более высоких частот в этой же точке "несколько-n"?
Oldring
Цитата(trex @ Jul 27 2010, 09:23) *
А вот по поводу короче-длиннее - тут Вы наверное все же говорите об треугольнике влияния?


Нет-нет, я именно про короче. Если отсчеты дискретные - то их можно пронумеровать целыми числами, и тогда нигде никаких дробных индексов. biggrin.gif
trex
Цитата(Oldring @ Jul 27 2010, 08:27) *
Нет-нет, я именно про короче. Если отсчеты дискретные - то их можно пронумеровать целыми числами, и тогда нигде никаких дробных индексов. biggrin.gif


аха, все же мне кажется я довольно коряво пишу smile.gif....я говорю не об анализе сигнала длинной меньше базы вейвлета, но об рассмотрении (представлении) результат обычной непрерывной вейвлет трансформации (не дискретной, я уже понял, что коэффициенты разложения разных уровней не обязательно должны существовать в каждом дискрете сигнала)
Oldring
Цитата(trex @ Jul 27 2010, 10:08) *
аха, все же мне кажется я довольно коряво пишу smile.gif....я говорю не об анализе сигнала длинной меньше базы вейвлета, но об рассмотрении (представлении) результат обычной непрерывной вейвлет трансформации (не дискретной, я уже понял, что коэффициенты разложения разных уровней не обязательно должны существовать в каждом дискрете сигнала)



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

Но у непрерывного сигнала нет "отсчетов". Се ля ви. laughing.gif
trex
Цитата(Oldring @ Jul 27 2010, 09:21) *
Если сигнал непрерывный - то, разумется, ничто не мешает его анализировать до произвольного разрешения. Раз есть формула - по ней можно посчитать, по крайней мере, теоретически.

Но у непрерывного сигнала нет "отсчетов". Се ля ви. laughing.gif

smile.gif....ну ок, а вопрос об направлении представления результатов? т.е. опять же вопрос выше об матлабе?
Oldring
Цитата(trex @ Jul 27 2010, 10:25) *
smile.gif....ну ок, а вопрос об направлении представления результатов? т.е. опять же вопрос выше об матлабе?


Так Матлаб не умеет считать непрерывные вейвлет-преобразования. По крайней мере вне тулбокса символьных вычислений. Равно как и брать любые интегралы с бесконечными пределами. Численно можно получить только оценки непрерывного вейвлет-преобразования, более или менее далекие от точного теоретического результата. Которые, разумется, уходят далеко от правильного ответа вблизи экстремальных значений параметра масштаба. Равно как и представление непрерывного неограничегого во времени сигнала конечным вектором дискретных отсчетов неизбежно отличается от теоретического непрерывного неограниченного во времени сигнала.
trex
Цитата(Oldring @ Jul 27 2010, 09:40) *
Так Матлаб не умеет считать непрерывные вейвлет-преобразования. По крайней мере вне тулбокса символьных вычислений. Равно как и брать любые интегралы с бесконечными пределами. Численно можно получить только оценки непрерывного вейвлет-преобразования, более или менее далекие от точного теоретического результата. Которые, разумется, уходят далеко от правильного ответа вблизи экстремальных значений параметра масштаба. Равно как и представление непрерывного неограничегого во времени сигнала конечным вектором дискретных отсчетов неизбежно отличается от теоретического непрерывного неограниченного во времени сигнала.


ок, спасибо 05.gif
DRUID3
Цитата(Xenia @ Apr 28 2010, 10:05) *
А где бы можно было раздобыть алгоритм, адаптированный к МК (32-разрядному)? Причем желательно (если это возможно) не на флоатах, а на целочисленной сетке - пусть не так точно, зато быстрее.
К сожалению большинство готовых алгоримов бывают написаны столь витиевато, что их логику не разобрать: несколько десятков подпрограмм-функций, которые по кругу вызывают друг дружку. Бывают даже FFT-алгоритмы, написанные столь же причудливо. А мне бы хотелось, чтобы логика была глазом видна.

biggrin.gif Не прошло и 3-и года... Но все-таки... А нужны именно биортогонал? Или именно jpeg2000? Или простые вейвлеты типа Хаара?
Xenia
Цитата(DRUID3 @ Nov 15 2010, 23:14) *
А нужны именно биортогонал? Или именно jpeg2000? Или простые вейвлеты типа Хаара?

Признаюсь, что в теории вейвлетов не сильна. Но насколько я понимаю, биортогонал мне не нужен. И, вероятно, jpeg2000 тоже. Скорее всего, мне нужен классический вариант типа Хаара. Однако видимо, будет лучше, если я вам расскажу о специфике своей задачи, а уж вы в ответ сами решите, который способ мне можно рекомендовать.

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

Значит так. АЦП измеряет напряжение на своем входе всегда с одной и той же периодичностью (обычно это 50Гц, чтобы меньше сказывались сетевые наводки). Долгое время "ничего нет", т.е. на входе присутствует некий постоянный шум или медленный дрейф ("базовая линия"). И вдруг внезапно "выходит" пик - сигнал гауссообразной формы со слегка заметным "хвостом" (задний фронт более пологий, чем передний, тогда как гауссиана полностью симметрична). Обычно за 20-60 секунд входное напряжение успевает достигнуть локального максимума, а затем снова сходит до уровня базовой линии. И так процесс продолжается от нескольких часов до суток с небольшим.

Время от времени появляющиеся пики могут иметь разную высоту, но по форме схожи, хотя не одинаковы. Со временем имеют тенденцию расширяться (растет сигма). Некоторые могут выглядеть, как "инвалиды" - более похожими на чертежный угольник, стоящий на катете (нормальный подъем, но аномально медленный спуск). Иногда эти пики друг с другом частично перекрываются, образуя частокол, как на спине у динозавра smile.gif.

Соотношение времени, когда выходят пики, ко времени, когда "ничего нет", 1:1000 или даже больше. А интерес, как можно догадаться, представляют именно пики (их форма и время появления), а вовсе не базовая линия. Файл же с такой записью получается очень длинным (до десятка, а то и сотни гигабайт), когда полезной информации в нем все та же 1/1000.

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

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

Я не настаиваю на вейвлетах, но, к сожалению, не знаю ортогональных разложений, которые бы экономно аппроксимировали сумму гауссиан с центрами в разных точках.
Oldring
Цитата(Xenia @ Nov 16 2010, 00:39) *
Первое, что приходит в голову, - вырезать участки, содержащие пики, и хранить только эти участки, с указанием времени или номера точки, с которого тот участок начинается.


А вам какую именно информацию можно потерять? Потому что вейвлетами сжимают с потерями.

Первое, что приходит в голову - уменьшить частоту оцифрорвки раз тах в 50-100. У гауссового пика и спектр тоже гауссов, поэтому на расстоянии в несколько сигм от средней частоты информации уже нет.

Второе, что приходит в голову - это, действительно, детектирование отсутствия пика. С фиксированным порогом, наверное.

Третье, что приходит в голову - это то, что сам пик вам нужно кодировать с минимальными потерями, так как наверняка вас интересует именно его форма. Проще всего - дифференциальное кодирование сигнала в пике плюс Хаффман, можно с фиксированной таблицей. Можно попробовать и только вторую разность сигнала кодировать Хаффманом.
Xenia
Цитата(Oldring @ Nov 16 2010, 01:24) *
А вам какую именно информацию можно потерять? Потому что вейвлетами сжимают с потерями.

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

Например, если я сделаю Фурье-преобразование и взгляну на частотную форму, то увижу, что при гауссовом исходном сигнале продукт будет выглядеть как медленно ниспадающая экспонента. Если мне захочется сохранить 95%, а в жертву принести только 5%, то я слишком мало смогу от той экспоненты отрезать. Зато если бы мой сигнал был периодической формы, то фурье-образ оказался бы очень подходящим продуктом - небольшим (выборочным) числом членов этого ряда я могла бы легко набрать эти 95%. А вот гаусс-кривую мне сделать малой кровью не удастся - членов ряда придется брать очень много.

По моим представлениям, вейвлеты способны довольно сносно аппроксимировать гауссиану, благодаря тому, что снижают необходимость "подавления" паразиных вкладов, вдали от ее центра. Это происходит из-за того, что базисные функции вейвлета угасают сами собой с ростом расстояния, а гармоники нет. Отсюда и мои надежды на то, что для достижения 95% мне понадобиться гораздо меньше базисных функций вейвлета, чем гармоник.

P.S. Остальные ваши предложения мне не понравились smile.gif, но я опасаюсь аргументировать свой отказ из-за того, что боюсь соскальзования темы в другую колею.
Oldring
Цитата(Xenia @ Nov 16 2010, 02:03) *
Например, если я сделаю Фурье-преобразование и взгляну на частотную форму, то увижу, что при гауссовом исходном сигнале продукт будет выглядеть как медленно ниспадающая экспонента. Если мне захочется сохранить 95%, а в жертву принести только 5%, то я слишком мало смогу от той экспоненты отрезать. Зато если бы мой сигнал был периодической формы, то фурье-образ оказался бы очень подходящим продуктом - небольшим (выборочным) числом членов этого ряда я могла бы легко набрать эти 95%. А вот гаусс-кривую мне сделать малой кровью не удастся - членов ряда придется брать очень много.


Фурье спадает медленно? Или у вас на самом деле сильно не Гаусс, или вы нарвались на эффект Гиббса. Если вы видите длинные хвосты, это ещё не означает, что они есть в спектре реального сигнала. Окна применяете?
Но, да, для описанных вами одиночных импульсов я бы тоже не стал рассчитывать особо на Фурье как метод сжатия.

Цитата(Xenia @ Nov 16 2010, 02:03) *
По моим представлениям, вейвлеты способны довольно сносно аппроксимировать гауссиану, благодаря тому, что снижают необходимость "подавления" паразиных вкладов, вдали от ее центра. Это происходит из-за того, что базисные функции вейвлета угасают сами собой с ростом расстояния, а гармоники нет. Отсюда и мои надежды на то, что для достижения 95% мне понадобиться гораздо меньше базисных функций вейвлета, чем гармоник.


Любое сжатие основано на сначала устранении корреляции между отсчетами, как правило, линейным преобразованием сигнала, а потом кодировании остатка - белого шума. Или его выкидывании, вместе со слабыми коэффициентами разложения. Плюс огрубление представления сильных коэффициентов, совместно с кодированием их по Хаффману. Вейвлеты - да, как базисные функции сигнала бывают полезны. Когда, например, параметр масштаба изменяется в больших пределах, и нужно всё делать быстро, без итераций. С другой стороны, нередко базисные функции для преобразования берут неортогональными, задают вообще таблично, и поиск лучшего разложения ведут перебором. У вас же, судя по описанию, параметр масштаба меняется с сохранением самоподобия сигнала в узких пределах. И частота оцифровки довольно низкая, так что перебор более чем реален. Так кто вам мешает попытаться закодировать вашу гауссову шапочку сначала той же гауссовой шапочкой, параметризованной, например?

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

Цитата(Xenia @ Nov 16 2010, 02:03) *
P.S. Остальные ваши предложения мне не понравились smile.gif, но я опасаюсь аргументировать свой отказ из-за того, что боюсь соскальзования темы в другую колею.


В любом случае вам решать.
анатолий
Цитата
Но насколько я понимаю, биортогонал мне не нужен.

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

DRUID3
Цитата(анатолий @ Nov 16 2010, 10:26) *
В биортогонале как раз и смысл вейвлет-преобразования.

!?
Цитата(анатолий @ Nov 16 2010, 10:26) *
За счет этого разложенный по частям сигнал можно точно собрать обратно.

!!!??

Цитата(анатолий @ Nov 16 2010, 10:26) *
И при этом базис JPEG2000 без потерь - самое то, так как использует целочисленную арифметику без округлений.

!!!???
Цитата(анатолий @ Nov 16 2010, 10:26) *
Другое дело, всякие там лифтинг-алгоритмы - никчему - можно просто вычислить по схеме КИХ-фильтра,
но с коэффициентами вейвлет-ядра.

А вот здесь, можно ссылку пожалуйста...
DRUID3
Вот так. Поленился, не ответил сразу, а "желтая стрела" жизни стремительно ушла вперед... Итак...

Цитата(Xenia @ Nov 16 2010, 01:03) *
Мне это известно, и я готова к тому, что будут потери.

Меня пугает эта Ваша готовность. Может потому сам такой уже старый, а не научился безболезненно переживать потери... smile.gif Но если серьезнее то, согласен с многоуважаемым Oldring'ом, думаю Вам скорее бы подошел вот такой способ...

Цитата(Xenia @ Nov 16 2010, 01:03) *
Тем не менее, мне бы хотелось аппросимировать пик псевдогауссовой формы как можно меньшим числом взаимноортогональных функций.

Эх... Этот водоворот жизни и вечный наш поиск "чего-то там, за горизонтом"... Идея на-лету... Дифференциатор запускает коррелятор в котором только одна функция (вуалая) - гауссова smile.gif .

Цитата(Xenia @ Nov 16 2010, 01:03) *
Например, если я сделаю Фурье-преобразование и взгляну на частотную форму, то увижу, что при гауссовом исходном сигнале продукт будет выглядеть как медленно ниспадающая экспонента. Если мне захочется сохранить 95%, а в жертву принести только 5%, то я слишком мало смогу от той экспоненты отрезать. Зато если бы мой сигнал был периодической формы, то фурье-образ оказался бы очень подходящим продуктом - небольшим (выборочным) числом членов этого ряда я могла бы легко набрать эти 95%. А вот гаусс-кривую мне сделать малой кровью не удастся - членов ряда придется брать очень много...
... По моим представлениям, вейвлеты способны довольно сносно аппроксимировать гауссиану, благодаря тому, что снижают необходимость "подавления" паразиных вкладов, вдали от ее центра. Это происходит из-за того, что базисные функции вейвлета угасают сами собой с ростом расстояния, а гармоники нет. Отсюда и мои надежды на то, что для достижения 95% мне понадобиться гораздо меньше базисных функций вейвлета, чем гармоник.

"Вейвлетов" не меньше... Особенно чем дальше материнский вейвлет от гаусовой функции тем большее количество ненулевых векторов приходится использовать, представляя сигнал как их суперпозицию. laughing.gif И здесь Oldring уже приуспел в пояснении... laughing.gif

Цитата(Xenia @ Nov 16 2010, 01:03) *
P.S. Остальные ваши предложения мне не понравились smile.gif, но я опасаюсь аргументировать свой отказ из-за того, что боюсь соскальзования темы в другую колею.

rolleyes.gif

Цитата(Xenia @ Nov 15 2010, 23:39) *
Признаюсь, что в теории вейвлетов не сильна.

Так и я вообще-то даже не вейвлет-падаван... Юнглинг...Где-то так... Прочел брошюру, да книжечку пролистал... smile.gif

Цитата(Xenia @ Nov 15 2010, 23:39) *
Первое, что приходит в голову, - вырезать участки, содержащие пики, и хранить только эти участки, с указанием времени или номера точки, с которого тот участок начинается. Примерно так сейчас и делается. Но хотелось бы испытать и вейвлет сжатие, раз уж его так громко хвалят.

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

Цитата(Xenia @ Nov 15 2010, 23:39) *
Но насколько я понимаю, биортогонал мне не нужен. И, вероятно, jpeg2000 тоже. Скорее всего, мне нужен классический вариант типа Хаара. Однако видимо, будет лучше, если я вам расскажу о специфике своей задачи, а уж вы в ответ сами решите, который способ мне можно рекомендовать.
...
Про целочисленность алгоритма я, возможно, заикнулась зря. Если нельзя, то и не надо. Тут я имела в виду, что все замеры у меня целочисленные, т.к. их продуцирует АЦП. Но я понимаю, что в таких задачах без плавающей арифметики обойтись сложно.

Хаар по идее своей целочисленный. Да и всякие там Добеши и остальные масштабировать к int не особая проблема. Но все-таки Хаар - самая простая (тривиальная) реализация(кстати потому его очень любят ПЛИСеры), и плюс целочисленность...

Цитата(Xenia @ Nov 15 2010, 23:39) *
У меня явно не изображения, а одномерные сигналы, приближающиеся по форме к кривой Гаусса (кривой нормального распределения). В просторечии я называю их пиками.
smile.gif Вы разбили мне сердце... smile.gif
Xenia
Цитата(DRUID3 @ Nov 17 2010, 06:07) *
Но все-таки Хаар - самая простая (тривиальная) реализация(кстати потому его очень любят ПЛИСеры), и плюс целочисленность...

Хорошо. Путь будет Хаар smile.gif. А где его взять?
Oldring
Цитата(Xenia @ Nov 22 2010, 06:15) *
Хорошо. Путь будет Хаар smile.gif. А где его взять?



Кхм... Здесь. laughing.gif
http://ru.wikipedia.org/wiki/%D0%94%D0%B8%...%BD%D0%B8%D0%B5
Tanya
Цитата(Xenia @ Nov 16 2010, 00:39) *
У меня явно не изображения, а одномерные сигналы, приближающиеся по форме к кривой Гаусса (кривой нормального распределения). В просторечии я называю их пиками.

Значит так. АЦП измеряет напряжение на своем входе всегда с одной и той же периодичностью (обычно это 50Гц, чтобы меньше сказывались сетевые наводки). Долгое время "ничего нет", т.е. на входе присутствует некий постоянный шум или медленный дрейф ("базовая линия"). И вдруг внезапно "выходит" пик - сигнал гауссообразной формы со слегка заметным "хвостом" (задний фронт более пологий, чем передний, тогда как гауссиана полностью симметрична). Обычно за 20-60 секунд входное напряжение успевает достигнуть локального максимума, а затем снова сходит до уровня базовой линии. И так процесс продолжается от нескольких часов до суток с небольшим.

Я не настаиваю на вейвлетах, но, к сожалению, не знаю ортогональных разложений, которые бы экономно аппроксимировали сумму гауссиан с центрами в разных точках.

Кажется мне, что можно попробовать ручками подобрать подходящую аппроксимацию. Например - два (три...) смещенных гаусса для разных пиков. Или несимметрично растянутый гаусс. Если подойдет, то и аппроксимировать таким образом.
Так как процесс медленный, то времени должно хватить. А с ресурсами - Вам виднее. Вы должны вступить в область нелинейного программирования... Экспоненты можно затабулировать.
DRUID3
Цитата(Oldring @ Nov 22 2010, 11:09) *
Кхм... Здесь. laughing.gif

Говеннейшая реализация... biggrin.gif Хотя вообще-то это образовательный материал и ему незачем соответствовать каким-то иным запросам кроме наглядности...
Oldring
Цитата(DRUID3 @ Nov 22 2010, 13:51) *
Говеннейшая реализация... biggrin.gif Хотя вообще-то это образовательный материал и ему незачем соответствовать каким-то иным запросам кроме наглядности...



Мне кажется, коллега в состоянии реализовать Хаара и самостоятельно по этой статье с нужной степенью качестве. Моё восхищение вызвал сам вопрос, что такое Хаар, после длительного обсуждения применимости вейвлетов для задачи. laughing.gif
Xenia
Цитата(Oldring @ Nov 22 2010, 14:49) *
Мне кажется, коллега в состоянии реализовать Хаара и самостоятельно по этой статье с нужной степенью качестве. laughing.gif

Так я, в общем-то, и спрашивала хорошую реализацию (чтобы под МК годилась), а не ссылок на общеобразовательные ресурсы. А ситуация просто дикая - некто спрашивает про алгоритм (скажем БПФ или БВП), а его отсылают ... к Википедии. А потом тот пыхтит, пытаясь компактно все это запрограммировать. Вот и получается самострок, в котором еще ошибок можно дофига выловить.

Давайте-ка я вам дам на словах QL-алгоритм диагонализации симметричных матриц smile.gif, и посмотрю как вы споро программку на С++ по моим словам накропаете, и сколько в ней будет ошибок.

Разумные люди понимают наличие разрыва между "формулками" и программной реализацией. В свое время (где-то в 60-х годах) Райнш и Уилкинсон написали "Справочник алгоритмов на языке Алгол" для матричных вычислений. А до тех пор лишь в математических журналах алгоритмы на пальцах показывали, вот дело и стояло на месте. Именно с этого момента все эти алгоритмы стали активно использоваться (коммерческие пакеты EISPACK, LINPAСK, LAPACK и т.п.). И плевать, что там алгоритмы на Алголе! Зато написано настолько понятно, что я сама до сих пор тем Справочником активно пользуюсь, потому как в современных пакетах уже не разобраться.

А у вас, я гляжу, стиль объяснения такой, чтобы только указочкой на формулки указывать и округлые общие слова говорить. Я не только по себе сужу, но и другим темам, где вы объяснения даете (например, тема "Сложение сигналов в самый узкий"). Вы уж извините меня за прямоту, но у меня сложилось впечатление, что вы сами не понимаете того, что пытаетесь объяснять другим.

Цитата(DRUID3 @ Nov 22 2010, 13:51) *
Говеннейшая реализация... biggrin.gif

Ну так и где же ваша хорошая реализация, которую я уже "три года" жду? Или вы тоже, как Oldring, будете кругами вокруг ходить, советовать мне Гугликом по интернетику поискать?

Цитата(Tanya @ Nov 22 2010, 13:04) *
Кажется мне, что можно попробовать ручками подобрать подходящую аппроксимацию. Например - два (три...) смещенных гаусса для разных пиков. Или несимметрично растянутый гаусс. Если подойдет, то и аппроксимировать таким образом.

Не годится. Смещенные гауссы не образуют взаимноортогонального базиса, а я это требование озвучила с самого начала, как необходимое.
Tanya
Цитата(Xenia @ Nov 22 2010, 20:12) *
Не годится. Смещенные гауссы не образуют взаимноортогонального базиса, а я это требование озвучила с самого начала, как необходимое.

Ну и что? Вы хотите просто жить... Раскладывать нужно на то, на что нужно, а не на то, что проще.
Искать под фонарем...
DRUID3
Цитата(Tanya @ Nov 22 2010, 19:31) *
Ну и что? Вы хотите просто жить... Раскладывать нужно на то, на что нужно, а не на то, что проще.

Искать под фонарем...


Эх Таня... Ну пробует человек этот мир на зуб... Что в этом плохого!? В конце концов вспомните себя в 26... laughing.gif

Цитата(Xenia @ Nov 22 2010, 19:12) *
Разумные люди понимают наличие разрыва между "формулками" и программной реализацией. В свое время (где-то в 60-х годах) Райш и Уилкинсон написали "Справочник алгоритмов на языке Алгол" для матричных вычислений. А до тех пор лишь в математических журналах алгоритмы на пальцах показывали, вот дело и стояло на месте. Именно с этого момента все эти алгоритмы стали активно использоваться (коммерческие пакеты EISPACK, LINPAСK, LAPACK и т.п.). И плевать, что там алгоритмы на Алголе! Зато написано настолько понятно, что я сама до сих пор тем Справочником активно пользуюсь, потому как в современных пакетах уже не разобраться.

Да, все верно. Хорошие вычислительные алгоритмы - дело очень непростое. А писать ЦОС(не либу вызывать поставляемую с процом, как у bf) это совсем не одно и то-же, что ваять утилитку. Кто не верит - пусть попробует сам. Пишу это специально для говнодиректоров, говноменеджеров и прочих унылых болванов которые в жизни вообще ни строчки кода не написали сами(ну разве что когда катали на экзамене), но думают, что главное "правильно сыграть" руководителя... Ну и еще "горячим головам" которые по молодости и наивности своей рискуют осчастливить какого-то недоумка за миску риса... wink.gif

Цитата(Xenia @ Nov 22 2010, 19:12) *
Ну так и где же ваша хорошая реализация, которую я уже "три года" жду? Или вы тоже, как Oldring, будете кругами вокруг ходить, советовать мне Гугликом по интернетику поискать?

))) Я не так давно гуглил опенсоус вейвлет-проекты. Кстати именно потому вспомнил Вашу просьбу. И почти везде - полнейшее гавно(неуниверсальные процедуры - под определенный базис, системные вызовы внутри вычислительной функции, FIR "в лоб" с поэлементным сдвигом массива, нигде не применена быстрая свертка - хотя где-где а в вейвлетах ей самое место, задействованы "массивные" механизмы расширений языка - как вот на WiKi, неразделимо срощены с кодированием - для 2D и т.д. ... ну и float восновном). Еще опенджпег правда не просмотрел. Он, кстати, целочисленный насколько помню - хорошо для ARM7-9. Все-равно - того что видел вполне достаточно что-бы отсоветовать гуглить... smile.gif Но... Все-таки Вы наглая барышня - вот так брать на понт - мол "а тебе слабо"? Потому у меня к Вам ответное предложение - читайте личку...
Xenia
Цитата(Tanya @ Nov 22 2010, 20:31) *
Ну и что? Вы хотите просто жить... Раскладывать нужно на то, на что нужно, а не на то, что проще.
Искать под фонарем...

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

К тому же, надо признаться, я "сдвигов", как огня боюсь smile.gif. Имеется в виду вот что. Положим, мой сигнал действительно состоит (т.е. является суммой) из пары сигналов, известной (!) мне формы. То бишь это случай чисто модельный, когда я два гаусса сдвинула до состояния частичного перекрывания, а затем их сложила. Но попробуте-ка вычислить местонахождение эти двух гауссов из суммарного сигнала. При этом в задаче предполагается, что каждый из этих двух исходных сигналов задан на отельном графике с вершиной в точке x=0, а суммарный сигнал находится где-то у черта на куличках в районе x=176. Короче говоря, требуется лишь определить смещения для каждой составляющей, чтобы они легли на свое место в "пазле". Т.е. x1 и x2. Во всем остальном (высоты и сигма), будем полагать, уже подобраны, как надо. Это крайне упрощенная часть общей задачи апроксимации, но и ее я пока осилить не смогла.
Tanya
Цитата(Xenia @ Nov 22 2010, 21:07) *
И тем не менее, от нелинейных задач, решаемых лишь итерационными методами, хотелось бы уйти даже ценой некоторой неадекватности представления.

Зачем? Цель - неадекватность? Уже почти достигнута. Все спектроскописты раскладывают на "правильные" модельные представления. И варьируют физически понятные параметры. Возьмите два сдвинутых гаусса и разлагайте их 1000 и одним способом по соответствующим базисам, но только не на два гаусса.
Если Ваша истинная цель в этом, - больших Вам успехов.
Oldring
Цитата(Xenia @ Nov 22 2010, 20:12) *
Так я, в общем-то, и спрашивала хорошую реализацию (чтобы под МК годилась), а не ссылок на общеобразовательные ресурсы. А ситуация просто дикая - некто спрашивает про алгоритм (скажем БПФ или БВП), а его отсылают ... к Википедии. А потом тот пыхтит, пытаясь компактно все это запрограммировать. Вот и получается самострок, в котором еще ошибок можно дофига выловить.

Давайте-ка я вам дам на словах QL-алгоритм диагонализации симметричных матриц smile.gif, и посмотрю как вы споро программку на С++ по моим словам накропаете, и сколько в ней будет ошибок.

Разумные люди понимают наличие разрыва между "формулками" и программной реализацией. В свое время (где-то в 60-х годах) Райнш и Уилкинсон написали "Справочник алгоритмов на языке Алгол" для матричных вычислений. А до тех пор лишь в математических журналах алгоритмы на пальцах показывали, вот дело и стояло на месте. Именно с этого момента все эти алгоритмы стали активно использоваться (коммерческие пакеты EISPACK, LINPAСK, LAPACK и т.п.). И плевать, что там алгоритмы на Алголе! Зато написано настолько понятно, что я сама до сих пор тем Справочником активно пользуюсь, потому как в современных пакетах уже не разобраться.

А у вас, я гляжу, стиль объяснения такой, чтобы только указочкой на формулки указывать и округлые общие слова говорить. Я не только по себе сужу, но и другим темам, где вы объяснения даете (например, тема "Сложение сигналов в самый узкий"). Вы уж извините меня за прямоту, но у меня сложилось впечатление, что вы сами не понимаете того, что пытаетесь объяснять другим.


Понимаю я или нет - это вопрос философский. Но людям, до которых в конце концов доходит, результат обычно нравится. laughing.gif

Вот когда узнаете, что такое Хаар - вам, барышня, стыдно станет. Хотя бы за сравнение с QL. biggrin.gif
Для QL существуют гораздо более хорошие источники и без ваших слов. Голуб, например. Мне его самому до сих пор кодировать не приходилось, но вот когда понадобится - я у вас спрашивать не буду, уж поверьте. laughing.gif

А вот возиться с алгоритмами сжатия с потерями - приходилось...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.