|
|
  |
Придумал алгоритм интерполяции. Протестируем результаты?, вызов от дилетанта |
|
|
|
Apr 11 2012, 08:39
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
Синк пока не пробовал, попробую. Для начала на своем 1С симуляторе  Но я верю что там будет все хорошо и при 2 отсчетах на период. Синк же ведь такой баян, который можно растянуть насколько размаха рук хватит  И точность можно повышать до любых значений, просто растягивая этот баян шире  Кстати, интересно будет посмотреть на работу синка при 1.3 точки на период  А при локальных алгоритмах, которые принципиально оперируют только несколькими окрестными точками, совершенно другая ситуация - и это понятно всему здравомыслящему человечеству  Кстати, на примере Катмулла-Рома и Фарроу, я понял еще одну очевидную вещь - можно и к Лагранжу 4-го порядка приделать его "близнеца" - Катмулла-Рома 4-го порядка, с заданием условий по производным в конечных точках, чтолько точек будет не 4 а 5. И к Лагранжу любого порядка можно таким образом приделать своего Катмулла-Рома того же порядка. Причем, я предполагаю что математика расчета будет проще по сравнению с Лагранжем. Также предполагаю что точность в свою очередь будет похуже. Вот это я и проверю в 1С
|
|
|
|
|
Apr 11 2012, 23:48
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
2 SFx я уже пробовал и с известными значениями производных (график ошибки приводил), и угадывать их по другим алгоритмам. Если вашу википедийную ссылку применить к равномерным интервала дискретизации, то среднее арифметическое производных на двух соседних отрезках даст именно Катмулла-Рома. Более того, к нему же приводит попытка интерполяции этих 3-х точек параболой. То что там называется "кардинальным сплайном" я конечно тоже попробую, но навскидку мне кажется результаты будут хуже чем просто Катмулл-Ром. Я пробовал несколько вариантов "угадывания" производной в средней точке по 3-м точкам (используя информацию о значении средней), но на практике все они или были сильно хуже, или асимптотически стремились к Катмуллу-Рому, который информацию об этой средней точке не использует!  GetSmart да-да, вы правы. Видимо я злоупотребляю смайликами в своих постах, и становится непонятно когда а шучу. Хотя после шутки в виде предложения интерполировать по 4-м локальным точкам синус частотой 0.49 частоты дискретизации я думал мне тоже можно предложить попробовать интерполировать синком 0.7 частоты дискретизации
|
|
|
|
|
Apr 12 2012, 17:00
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
Попробовал т.н. "кардинальный сплайн" - результаты похожи на то, что мы вводим в Катмулла-Рома некий коэффициент погрешности, который при равенстве нулю дает самый лучший результат. Я не понял его глубокого смысла. Собственно, если у кого есть идеи как ещё можно рассчитать производную в точке по значениям её и окрестных отсчетов - вэлкам, буду проверять. А пока сравнительные графики ошибки Лагранжа 3-го и 4-го порядков и Катмулла-Рома 3-го и 4-го порядков. Если при расчете последнего я не ошибся, то его результат довольно странный.
Эскизы прикрепленных изображений
|
|
|
|
|
Apr 14 2012, 17:43
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
Цитата(rudy_b @ Apr 10 2012, 17:06)  Не торопитесь. С точки зрения практики, минимизация нужна именно там, где ошибка велика (по сравнению с прочими ее источниками, а их немало). А когда величина ошибки становится малой - не столь важны ее небольшие колебания. Спасибо за поддержку в нужный момент  Если я не ошибаюсь, то мне все-таки удалось победить Фарроу на отдельно взятой территории. Кубическим сплайном, как ни странно  Так что объем вычислений примерно тот же. Более того, я могу влиять на степень отклонения от Фарроу от нулевой до например представленной на картинке и больше  А при малых ошибках, как вы правильно заметили, и погрешности округлений будут сравнимы, и другие источники подтянутся. Добавил рядом график с шагом поменьше, чтобы было более понятно поведение ошибки. upd: а ещё вот такие интересные картинки могу получить. То есть, я могу достичь любого предела абсолютной ошибки за меньшее количество отсчетов на период чем Фарроу
Сообщение отредактировал _Ivana - Apr 14 2012, 21:09
Эскизы прикрепленных изображений
|
|
|
|
|
Apr 24 2012, 05:05
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
И снова здравствуйте  И снова я придумал очередной алгоритм  Точнее - несколько, но последний настолько меня вдохновляет, что я снова пишу сюда. Сразу про количество операций. Допустим в сравнении с Фарроу - Лагранжем 3. Хотя при самом подходе к расчету количества операций выяснились забавные "особенности" - некоторые считают извлечение квадратного корня и сложение отдельными операциями, хотя понятно что они требуют существенно разных машинных ресурсов, а другие считают например что Лагранж - 3 рассчитывается "за 3 умножения и 3 сложения", хотя ровно столько требуется для расчета его полинома, а расчет коэффициентов наверное считается что не занимает операций совсем  Я рискну высказать свое мнение насчет количества операций и в Фарроу и моего алгоритма. Итак, Фарроу: 1 умножение на константу 2 сдвига (умножения/деления на степени 2) 3 умножения на переменную 12 сложений (одно на приведение параметра) Мой алгоритм: 1 умножение на константу 3 сдвига (умножения/деления на степени 2) 3 умножения на переменную 12 сложений Сейчас занимаюсь сравнительным анализом спектров ресемпленных сигналов, осваиваю СпектраПлюс. Предварительные результаты также радуют, хотя остаются еще вопросы. Например, очень удивляет поведение рассчитанных коэффициентов гармоник и интермодуляционных искажений - при лучшем на глаз спектре они могут быть больше и наоборот. Если кто поможет прояснить этот момент - буду признателен. Картинки показательных спектров могу предоставить.ЗЫ сегодня пойду рассказывать суть и получать критические оценки от специалиста из нашего Воронежского государственного университета (лет 20 там не был). Завтра сделаю доклад там же на семинаре среди доцентов и профессоров математического факультета. Если вдруг кого здесь заинтересует - напишу их мнение, независимо от его содержания  И конечно же графики ошибки моего алгоритма (красный) в сравнении с Фарроу (зеленый) и Лагранжем 4-го порядка (синий): Цитата(sup-sup @ Apr 8 2012, 20:53)  После интерполяции должен остаться такой же спектр в исходной полосе. А за ее пределами нулевой. Так как реально такого не бывает, качество интерполяции можно сравнивать с классической реализацией (добавление нулей и фильтрация ненужных спектральных компонентов). Это в идеале, действительно, единственно возможная кривая, как сказал ViKo. А тут уже зависит от качества интерполирующего фильтра. От его неравномерности в полосе, от переходной полосы и от затухания вне полосы. Вот этими параметрами можно и мериться. И выделенное жирным хотелось бы еще научиться анализировать - чтобы было больше показателей и критериев сравнения алгоритмов. Подскажите куда копать, кто знает.
Эскизы прикрепленных изображений
|
|
|
|
|
Apr 26 2012, 06:44
|
Знающий
   
Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515

|
Цитата(_Ivana @ Apr 24 2012, 09:05)  Мой алгоритм: 1 умножение на константу 3 сдвига (умножения/деления на степени 2) 3 умножения на переменную 12 сложений
И выделенное жирным хотелось бы еще научиться анализировать - чтобы было больше показателей и критериев сравнения алгоритмов. Подскажите куда копать, кто знает. В выделенном жирным речь идёт не про собственно интерполятор, а про фильтр с передискретизацией, который обычно ставят до интерполятора. В алгоритме Фэрроу умножение на константу не требует отдельной операции, так как на эту константу можно домножить, к примеру, коэффициенты предшествующего фильтра. Если у Вас также, то это очень круто  . И уточните, пожалуйста, величину какой ошибки Вы приводите на графике - среднеквадратичной, максимальной или ещё какой-нибудь.
|
|
|
|
|
Apr 26 2012, 08:54
|
ʕʘ̅͜ʘ̅ʔ
    
Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691

|
Цитата(_Ivana @ Apr 24 2012, 09:05)  Сейчас занимаюсь сравнительным анализом спектров ресемпленных сигналов, осваиваю СпектраПлюс. Предварительные результаты также радуют, хотя остаются еще вопросы. Например, очень удивляет поведение рассчитанных коэффициентов гармоник и интермодуляционных искажений - при лучшем на глаз спектре они могут быть больше и наоборот. Если кто поможет прояснить этот момент - буду признателен. Картинки показательных спектров могу предоставить. Не надо никаких спектров. В источниках, где как-то рассматриваются интерполяторы, обычно укзывается 2 характеристики: - Набор АЧХ и ФЧХ в зависимости от значения задержки - Сложность Эта статья вроде была в открытом доступе где-то http://ieeexplore.ieee.org/xpl/login.jsp?t...%2F01203780.pdfУспехов Цитата(_Ivana @ Apr 24 2012, 09:05)  ЗЫ сегодня пойду рассказывать суть и получать критические оценки от специалиста из нашего Воронежского государственного университета (лет 20 там не был). Завтра сделаю доклад там же на семинаре среди доцентов и профессоров математического факультета. Если вдруг кого здесь заинтересует - напишу их мнение, независимо от его содержания  "...Доктора, Профессора, Медицинская сестра, Академик по Китам, Академик по Котам, С ними семьдесят студентов, Тридцать пять корреспондентов, Два редактора с корректором, Кинохроника с прожектором, Юные натуралисты И другие специалисты. "
|
|
|
|
|
Apr 26 2012, 13:59
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
Timmy, Цитата В алгоритме Фэрроу умножение на константу не требует отдельной операции, так как на эту константу можно домножить, к примеру, коэффициенты предшествующего фильтра. Если у Вас также, то это очень круто Точно утверждать пока не возьмусь, но мне кажется что и в моем случае этот метод сработает. Кстати, я ещё немножко оптимизировал свой алгоритм - убрал один сдвиг. Цитата И уточните, пожалуйста, величину какой ошибки Вы приводите на графике - среднеквадратичной, максимальной или ещё какой-нибудь. Это графики максимального модуля отклонения (максимальной ошибки), рассчитанные экспериментальным путем. Fat RobotСпасибо за ссылку, попробую разобраться. ЗЫ: я очень хорошо понимаю и разделяю Ваше насмешливо-несерьезное отношение к званиям, регалиям и авторитетам. Но среди них по статистике тоже иногда попадаются достаточно неглупые люди, в моем случае их оказалось примерно 2.5 человека  И мне было интересно и познавательно с ними пообщаться. А насчет перечисленного Вами видового разнообразия - то оно в не меньшей мере представлено и на этом форуме  Хочу спросить к какой категории вы относите себя, но из благодарности за помощь и ссылку воздержусь  А с другой стороны - куда мне было ещё обращаться? Где вот лично Вы были все предыдущие 9 страниц моих эпических плаваний?  ЗЗЫ: ссылка судя по всему интересная, но у меня нет денег в виртуальном пространстве и опыта работы с ними, поэтому к сожалению скачать пока не могу  Готов положить в 10 раз бОльшую сумму (если я правильно понял цифры цен в рублях) на сотовый тому, кто пришлет мне эту статью.
Сообщение отредактировал _Ivana - Apr 26 2012, 14:06
|
|
|
|
|
Apr 26 2012, 15:54
|
ʕʘ̅͜ʘ̅ʔ
    
Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691

|
_Ivana,
1. Я был занят другими делами, не менее интересными, чем обсуждение интерполяторов на интернет-форуме. Только недавно стал на перископную глубину подниматься. Извините, что подвел Вас. Целых 9 страниц... Не ожидал, что Вы такой плодовитый.
2. То, что Вы используете все возможные способы получения информации, - это прекрасно и похвально. Серьезно. А вот то, что Вы напускаете туману "кое-что сделал, но не скажу" при обсуждении - это не серьезно и детский сад.
3. Вы очень глубоко смотрите и видите то, чего нет. Это цитата из детского стиха:Борис Заходер "Кит и Кот". Не более того.
И да.. Освойте Матлаб. Как инструмент, он весьма хороший.
Успехов
|
|
|
|
|
Apr 26 2012, 19:32
|
Местный
  
Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710

|
_Anatoliy, спасибо. Скиньте ваш номер сотового в личку, положу на него 300р (если не ошибаюсь). Fat RobotЦитата А вот то, что Вы напускаете туману "кое-что сделал, но не скажу" при обсуждении - это не серьезно и детский сад. Я не настолько наивен и меркантилен, чтобы лелеять надежду получить от этого материальную выгоду. Но чего я действительно не хочу - это чтобы написанное в интернете на весь мир кто-то бы выдал за свои разработки. Я понимаю что такая позиция не лучшим образом свидетельствует о моем моральном облике. Я помню стих 74 Дхаммапады ( http://dhamma.ru/canon/kn/dhp/dhammapada.htm ), глава о глупцах: Цитата 74. «Пусть думают и миряне, и отшельники, что это сделано мной. Пусть они зависят от меня во всех делах», – таково намерение глупца; его желание и гордость возрастают. Также я понимаю, что не обнародовав суть, мне трудно рассчитывать на конструктивное обсуждение. Я буду писать небольшую статейку по этому поводу, возможно многим она покажется банальной и наивной, как будет готова и пройдет цензуру - выложу. И спасибо за советы и пожелание успеха. Серьезно. Это приятно, особенно на фоне обесценивающих реплик демотивирующего характера от отдельных представителей, хоть я и не воспринимаю их серьезно.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|