ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба А линейную интерполяцию можете забомбить, для сравнения? Что-то много лишнего. Откуда взялись частоты 2 kHz и 3 kHz? Если частота дискретизации была 5 kHz, то будут только 1 kHz и 4 kHz, ну и т.д. 14, 16, 19, 21... После интерполяции в идеале должны были остаться только 1 kHz и 49 kHz. А много ли точек в вашем кадре, по которому спектр вычисляете? А не увеличить ли количество раз в 250? И окна еще разные можно попробовать. P.S. А линейный масштаб по частоте приятнее будет смотреться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба По порядку - спектр исходного сигнала, после линейной интерполяции (:) ) и Лагранж 4-го порядка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Где какой? А красный и синий что за спектры? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба P.S. А линейный масштаб по частоте приятнее будет смотреться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Лагранж-4 из последних 3-х картинок самый зашумленный. Синий - мгновенный, красный - пиковый. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Ну, и как это понимать? Что линейная интерполяция более качественная??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Подозреваю что на вашем примере - да. При ресемплировании того же синуса 1кГц из 44100 в те же 50000 будет совершенно другая картина, спектр линейного преобразования будет содержать больше ВЧ составляющих. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Подозреваю что на вашем примере - да. Странно... То есть, имеем 5 точек на синусоиде. Забили внутри каждого промежутка между точками еще по 9 (увеличили частоту дискретизации в 10 раз). В первый раз тупо ровненько по прямой, во второй - по хитрому полиному Лагранжа. И оказалось, что первый вариант лучше? Можно узнать ответы на все вопросы в сообщении 91? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Количество точек FFT = 16384. А на другие вопросы или ответил, или они риторические. Впрочем, могу прислать вам вавки - сами проанализируете. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Количество точек FFT = 16384. А на другие вопросы или ответил, или они риторические. Впрочем, могу прислать вам вавки - сами проанализируете. Тогда, если интерес у Вас не пропал, попробуйте интерполировать цифровыми фильтрами. Например, каскадным интегратором-гребенчатым фильтром, CIC. Похоже, интерполяция полиномами не даст качественного звука. Та же ссылка, что уже давал, а от нее - дальше... http://ru.wikipedia.org/wiki/%D0%9F%D0%B5%...%86%D0%B8%D1%8F Ну, и сами синусоиды покажите, что ли? По паре периодов. Может, на глаз что-то неправильное попадется? А если разрядность увеличить? А если там ограничение возникает? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 (изменено) · Жалоба Сейчас посмотрю синусоиды на глаз, и попробую ещё кое-что. Блин, мой косяк!!! Маза-фаза.... Предыдушим полиномиальным спектрам не верить! буду искать ошибку... :) Изменено 10 апреля, 2012 пользователем _Ivana Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
NiceParty 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 (изменено) · Жалоба ...Похоже, интерполяция полиномами не даст качественного звука... Ну, во-первых, как мне кажется, топикстартер где-то накосячил со спектрами. Когда я строил подобные картинки, то у меня они были посимпатичней. А во-вторых, смотря для чего эту интерполяцию использовать. Для апсемплинга от 48кГц к 192кГц она не подходит. Поэтому используют стандартные sinc-и, но они требуют существенно большего объема вычислений. Если же использовать интерполяцию для ресемплинга аудио, например от 44100 к 48000, то результат получается вполне сносным. Я отслушивал результаты подобного ресемплинга. Для ряда применений этого может оказаться вполне достаточным. Попросите топикстартера сделать спектрограммы ресемплинга 8кГц синуса из 44100 (чтобы соблюсти пропорцию частоты сигнала и дискретизации) в 48000 по разным вариантам полиномиальной интерполяции. Думаю, это будет интересным. P.S. Пока писал, топикстартер уже нашел у себя ошибку :) Изменено 10 апреля, 2012 пользователем NiceParty Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба Вроде теперь на глаз все без выбросов (при попытке увеличить точность в интеджерах вылетал за их пределы). Новые графики: Катмулл-Ром, Фарроу и линейка. Надеюсь, это будет больше похоже на правду :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 10 апреля, 2012 Опубликовано 10 апреля, 2012 · Жалоба А теперь сделайте, чтобы этих палок не было! :) "вы знаете какое-нибудь другое мирное русло, в которое я мог бы направить свой избыток энергии, и которое было бы не менее интересно и увлекательно?" По-моему - очень достойное занятие. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivana 0 10 апреля, 2012 Опубликовано 10 апреля, 2012 (изменено) · Жалоба А теперь сделайте, чтобы этих палок не было! :) Каких палок? :) Выбросов на синусоиде? Сделал уже. И спектры привел уже по интерполяции без выбросов. У меня алгоритм в целых числах считает, и до последнего времени я использовал 15бит точности задания времени, все было хорошо, но мне пожадничалось и захотелось 16, я добавил разрядов, а ваш пример как раз показал что надо оставить 15бит :) Спасибо Вам за такой тест на ошибку :) Теперь все красиво. А насчет отсутствия палок в спектре, боюсь тут я бессилен :) Судя по картинкам синусоиды, интерполируется она настолько хорошо, насколько может по данным алгоритмам. Изменено 10 апреля, 2012 пользователем _Ivana Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться