ivan219 0 31 января, 2011 Опубликовано 31 января, 2011 · Жалоба Есть сигнал диапазоне частот от 0 до половины частоты дискретизации. Сигнал периодический. Нужно его вывести на монитор никаких других действий с сигналом производится больше не будет. Проблема: если частота высокая отображается не красиво. Вопрос: посоветуйте максимально хороший интерполятор. Пробовал Форроу 3 порядка так как других не знаю. Вроде не плохо, но он считает только по 4 точкам. Хочу, что бы в расчёте участвовало большее количество точек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SSerge 6 31 января, 2011 Опубликовано 31 января, 2011 · Жалоба Так а теорема Котельникова на что? Там и способ восстановления сигнала прописан. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan219 0 31 января, 2011 Опубликовано 31 января, 2011 · Жалоба Плохой Форроу. Не годится если частота высокая. Получается очень коряво. Так а теорема Котельникова на что? Там и способ восстановления сигнала прописан. Почитаю, но я думал, что какой то метод интерполяции подойдет с большим количеством точек участвующих в расчёте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 31 января, 2011 Опубликовано 31 января, 2011 · Жалоба Проблема: если частота высокая отображается не красиво.Что означает "не красиво"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 31 января, 2011 Опубликовано 31 января, 2011 · Жалоба Плохой Форроу. Не годится если частота высокая. Получается очень коряво. А формулы, по которым считали, можете привести? Вот здесь я нашел конкретные формулы, а не голые слова http://gwyddion.net/documentation/user-guide-ru/index.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan219 0 31 января, 2011 Опубликовано 31 января, 2011 (изменено) · Жалоба Что означает "не красиво"? Это когда точка скачет по экрану очень резко и вместо плавной линии ломаная кривая. Которая ну ни как не похожа на синусоиду. Смотрите картинку зелёным обозначен исходный сигнал. ViKo От сюда http://dsplib.ru/ На картинке зелёная исходная красная после Форроу увеличил в 8 раза. Изменено 31 января, 2011 пользователем ivan219 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sup-sup 0 1 февраля, 2011 Опубликовано 1 февраля, 2011 · Жалоба А почему не сделать интерполяцию классическим способом (не для реализации, так для проверки) - добавить нули и пропустить через фильтр (КИХ) нижних частот Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 1 февраля, 2011 Опубликовано 1 февраля, 2011 · Жалоба На картинке зелёная исходная красная после Форроу увеличил в 8 раза. А в одном масштабе по времени можете показать? А то непонятно, что вы интерполируете. А кривизна, скорее всего, от реализации - недостаточная разрядность или просто ошибка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan219 0 1 февраля, 2011 Опубликовано 1 февраля, 2011 (изменено) · Жалоба А почему не сделать интерполяцию классическим способом (не для реализации, так для проверки) - добавить нули и пропустить через фильтр (КИХ) нижних частот Хочу обойтись без лишнего. Интерполяция предпологается дробная. А в одном масштабе по времени можете показать? А то непонятно, что вы интерполируете. А кривизна, скорее всего, от реализации - недостаточная разрядность или просто ошибка. Смотрите на картинку в таком масштабе? А искажения исчезают, если количество точек исходного сигнала на один период колебания будет равно не менее 8. Тогда после интерполяции в 16 и более раз видно нормальную синусоиду. Изменено 1 февраля, 2011 пользователем ivan219 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
marti 0 2 февраля, 2011 Опубликовано 2 февраля, 2011 · Жалоба Хочу обойтись без лишнего. Интерполяция предпологается дробная. Смотрите на картинку в таком масштабе? А искажения исчезают, если количество точек исходного сигнала на один период колебания будет равно не менее 8. Тогда после интерполяции в 16 и более раз видно нормальную синусоиду. На предыдущей на синусоиду не похожа картинка. Если график рисовать не точками, а линиями, было яснее ясного в самом начале.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 2 февраля, 2011 Опубликовано 2 февраля, 2011 · Жалоба А искажения исчезают, если количество точек исходного сигнала на один период колебания будет равно не менее 8. Тогда после интерполяции в 16 и более раз видно нормальную синусоиду. Могу предположить только то, что уже говорил. У вас на первой картинке от точки к точке большие скачки, где-то происходит переполнение чисел, вот и ошибка. Попробуйте увеличить разрядность. А что синусоида "кривая" - это наверное, от отбрасывания дробных частей, отбрасывания вместо округления. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan219 0 2 февраля, 2011 Опубликовано 2 февраля, 2011 (изменено) · Жалоба На предыдущей на синусоиду не похожа картинка. Если график рисовать не точками, а линиями, было яснее ясного в самом начале.. Конечно, не синусоида я об этом и говорил по этому и попросил метод, где учитывается не 4 как в Форроу а больше. А точки понятнее, чем линии, когда линия не поймёшь на каком шаге ошибка. Могу предположить только то, что уже говорил. У вас на первой картинке от точки к точке большие скачки, где-то происходит переполнение чисел, вот и ошибка. Попробуйте увеличить разрядность. А что синусоида "кривая" - это наверное, от отбрасывания дробных частей, отбрасывания вместо округления. Скачки я заметил по этому и спросил другой метод. Переполнения или отбрасывания не происходит. Так как все вычисления на ПК с плавающей точкой двойной точности 32бит и перед выводом на экран всё округляется. Изменено 2 февраля, 2011 пользователем ivan219 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 3 февраля, 2011 Опубликовано 3 февраля, 2011 · Жалоба Скачки я заметил по этому и спросил другой метод. Переполнения или отбрасывания не происходит. Так как все вычисления на ПК с плавающей точкой двойной точности 32бит и перед выводом на экран всё округляется. Скачки я имел в виду - на исходной синусоиде. Большое изменение, большие числа. С плавающей арифметикой не возился. Попробуйте с обычной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan219 0 3 февраля, 2011 Опубликовано 3 февраля, 2011 · Жалоба Вопрос снят. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 4 февраля, 2011 Опубликовано 4 февраля, 2011 · Жалоба Вопрос снят. Это все, что вы можете сказать? Мне кажется, лучше донести до общественности, что было не так, и как оно разрешилось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться