ОБСЛУЖИВАНИЕ И РЕМОНТ ФОРТЕПИАНО

ГОСТЕВАЯ ВЕРСИЯ ФОРУМА


Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 01:45 
Активный завсегдатай
Аватара пользователя
Здесь буду понемножку разбираться с тем каким образом программы определяют частоту сигнала. Для начала - картинка про то как в программе Spectroid выглядят колебания простого камертона.Изображение

Программа Spectroid использует БПФ - быстрое преобразование Фурье (FFT - Fast Foutier Transform) для определения частотного состава звука. Множество параметров программы позволяют сделать более точным тот или иной аспект её работы но невозможно сделать так чтобы определение частот работало одновременно и точно и быстро. Тем не менее...

Чему здесь на мой взгляд можно верить:
1) Тому что в звуке есть по крайней мере ещё пара обертонов кроме основного тона.
2) Тому что основной тон громче остальных обертонов

Чему не стоит верить:
1) Тому что основной тон "расщеплен" на колебания (обеих ножек камертона?) со слегка различными частотами. Даже если это и могло быть так, на данной картинке расщепление основного пика скорее свидетельствует о несовершенстве используемой математики
2) Пикам на 452гц - по той же причине. Вокруг 440гц нарисована целая "сталинская высотка" с ложными пиками. Это артефакты математического преобразования а не следы колебаний с соответствующими частотами. "Ширина" основного пика - также ложная.
3) Тому что частота камертона 439гц а не 440. В целом точность определения частоты сильно зависит как от используемых параметров преобразования Фурье так и от диапазона. Ошибка в 1гц весьма вероятна. Аналогично - и для первого обертона.

Это лишь поверхностный разбор простого примера. Вопросы - верить/не верить - должны, разумеется, возникать при использовании любых программ для настройки фортепиано.


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 02:29 
Старожил Форума
Аватара пользователя
Я ничего не понимаю, но читаю с интересом! И хочу сказать, что у меня много было программ, правда мало профессиональных, но все же: вилочковые камертоны только по ГОСТУ имеют право на погрешность аж в 0,5Гц. Не могу знать почему такая сильная погрешность допускается, но факт. И кроме всего, вилочковые камертоны, даже немецкие и американские имеют погрешность (те что у меня были) до +0,8Гц и -1,0Гц. Я был сильно удивлен даже еще не имея профессии настройщика, возможно меня это шокировало в силу того, что я КИПовец и работал в отделе метролога, и такие отклонения кажутся огромными. И до сих пор мне так кажется, что камертон - источник определенной высоты тона и ничего сложного в его настройке нет и отклонения больше 0,1Гц для серийного производства это брак. А лабораторные приборы и того должны быть еще точнее, где класс точности должен идти на сотые доли. Но, ради справедливости, скажу, что большинство все таки не отклонялись больше, чем на 0,2Гц. Так что я склоняюсь все же к тому, что программа не врет, а камертон плохо настроен. Его можно настроить: подпиливая "рога" (укорачивая) частота повышается, а подпиливая у ног внизу, как бы удлинняя "рога" частота понижается.

_________________
Готовлю кофе


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю daly "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 08:18 
Мэтр
Аватара пользователя
Есть такой закон физический: точность определения частоты периодического колебания прямо пропорциональна длительности существования этого колебания. Если звук длится одну секунду, то определить его частоту можно с точностью не более +/-1 Гц. Если длится 10 секунд, достижимая точность +/-0,1 Гц, 100 сек. - +/-0,01 Гц. Камертон, как правило, 100 секунд звучать просто не может. Лет 25 назад я написал программку для простенького детского компьютера "микроша", чтобы померить частоту моего камертона. Идея была такая: компьютер считает одновременно импульсы от камертона и секундные импульсы от кварцевых часов. По первому импульсу от часов начинается счет импульсов камертона, по началу сто первого импульса часов счет заканчивается и число камертонных импульсов выводится на экран. Ни один из моих камертонов до ста секунд не дотягивал, поэтому пришлось городить устройство для поддержки колебаний камертона. Зато я подогнал мои камертоны к частоте 440 Гц с точностью до 0,01 Гц. Правда, у всех обычных стальных камертонов температурный коэффициент частоты такой, что подержи его в руках полминуты, и частота уйдет вниз на полгерца. А у дюралевых и латунных - и того больше.
Так что, картинка здесь сильно зависит от времени, в течение которого программа частоту меряет.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Klopff "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 12:07 
Administrator
Аватара пользователя
Klopff писал(а):
Есть такой закон физический: точность определения частоты периодического колебания прямо пропорциональна длительности существования этого колебания. Если звук длится одну секунду, то определить его частоту можно с точностью не более +/-1 Гц. Если длится 10 секунд, достижимая точность +/-0,1 Гц, 100 сек. - +/-0,01 Гц.
Владимир Алексеевич, а как же тогда программа определяет с точностью до сотых герца частоту звука за полсекунды?

Изображение


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 13:27 
Активный завсегдатай
Аватара пользователя
Извините что встреваю. Я не В.А. но я уверен что программа врёт. Лучше было бы для неё если бы она выдавала меньше значащих цифр. Да и человек тоже не может этого сделать за полсекунды.

P.S. очень грубо: На вашей картинке указаны парамерты FFT, используемые программой. Из них можно предположить что примененная частота дискретизации = 9600 (замеров в секунду). Потому что лишь при такой частоте дискретизации можно измерить вдвое меньшую частоту 4800гц с точностью до 1 герца. При таком раскладе на размер бакета преобразования Фурье в 2048 семплов приходится примерно 45 полных циклов синусоиды частоты в 211гц. То есть, программа может "насчитать" и 45 и 44 и 46 полных циклов анализируя свой кусок в 2048 замеров (который кстати занимает 2048/9600=0.21сек а не 0.5сек времени). При этом теоретически ошибка может быть аж до 4.6гц в обе стороны. Разумеется, программы используют всякого рода уточняющие средства и за счет этого способны ошибаться не на 4гц а меньше. Но против здравого смысла трудно идти.

P.P.S: Выше я описал действия программы при оценке частоты чистого тона. Ваш случай несколько иной. Ваша программа, очевидно, показывает не измеренную частоту основного тона (он может и отсутствовать), но его оценку. При этом она может исходить из замеров других обертонов этой ноты (а у них частоты выше и там ошибки считаются соответственно по-иному). Всё это происходит в те же самые 0.21сек. Разумеется, все обертоны программа способна оценить одновременно. Такой комплексный анализ даёт программе больше шансов на меньшую ошибку в своих показаниях частоты основного тона. Но мы забегаем вперед. Я не расчитывал что вы сразу так вот зададите такой вопрос.

Кстати, хотел спросить у daly. А как он оценивал частоту своих камертонов с точностью до 0.2гц? По-видимому прослушивая одним ухом биения от двух камертонов (в течение 5-ти секунд)? Я не уверен но кажется двумя ушами услышать подобные биения нельзя. Разумеется если один камертон у одного уха а другой - у другого. Что там с бинауральным слухом?


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 13:58 
Administrator
Аватара пользователя
Сергей, а как же тогда работают профессиональные настроечные программы? Ведь они показывают малейшие изменения частоты при настройке, и им для этого не надобно слушать звук 100 секунд. Ничего не понимаю.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю AlexHutor "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 14:02 
Активный завсегдатай
Аватара пользователя
Так и работают, я думаю. В басах бОльшее количество обертонов помогает им оценить сдвиг "основной" частоты за счет комплексного анализа их всех. В дискантах такая точность не требуется потому что ошибка в центах содержит больше герц. Да там и обертонов меньше.

Мне кажется что вы работаете примерно также?


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 14:11 
Administrator
Аватара пользователя
Да, при слуховой настройке в басах настройщик слушает гармоники достаточно высокие, 3-ю и выше. В крайнем дисканте слушается основной тон и погрешность в герцах может быть в целых числах, а на слух это будет незаметно, т.к. в центовом выражении это малые величины.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю AlexHutor "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 14:37 
Активный завсегдатай
Аватара пользователя
Тут вот какая штука. Если оставить за пределами рассмотрения программы показывающие спектр а иметь в виду только настроечные программы, то им ведь нет никакой необходимости действительно показывать вам точное значение частоты основного тона. Им нужно лишь две вещи:
1) По возможности определить какую клавишу вы нажали
2) Дать вам понять куда крутить колок
Поэтому та цифра (с точностью до сотых долей герца) которую они показывают - лишь условность. Важно лишь показать вам - уменьшается она или увеличивается. Ну а то что она близка к частоте основного тона - это нормально.


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Быстрое преобразование Фурье
СообщениеДобавлено: 20 фев 2019, 14:50 
Активный завсегдатай
Аватара пользователя
Здесь мы приходим к вопросу о том почему в программе EPT два её индикатора - звуковысотный и стробоскопический (фазовый) ведут себя так по-разному. Могу пояснить. Я уже сообщал здесь что у этой программы это два различных индикатора.

Звуковысотный индикатор как раз "показывает" предполагаемую (условную) частоту основного тона, вычисленную на основе всех обертонов.

А вот стробоскопический индикатор показывает все обертоны поотдельности - кто из них куда крутится - но без комплексного анализа их всех. Именно поэтому, как многие заметили, полоски стробоскопического индикатора могут крутиться в различные стороны! То есть, они живо реагируют на достаточно большие ошибки определения частоты каждого из обертонов. И едут в разные стороны они именно потому что так оно и есть на самом деле - не только из-за физики но и из-за ошибок быстрого преобразования Фурье которое при определении одной единственной (лучше сказать каждой отдельной) частоты не слишком точно.

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

scherbakov.al писал(а):
амплитуда динамично изменяется во времени, происходит неравномерное затухание обертонов. На что тут опираться? А если я одну ноту сыграл громче, а другую тише, в итоге они получат разный "вес" при расчётах. Также при игре разной динамикой при замере получится немного разный амплитудный состав обертонов звука.
В точку! Это и есть проблема вычисления направления движения "центра масс" и одна из причин дерготни звуковысотного индикатора EPT


Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2, 3  След.

ГОСТЕВАЯ ВЕРСИЯ ФОРУМА



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Добавить в Избранное
Добавить в Избранное

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Вы можете создать форум бесплатно PHPBB3 на Getbb.Ru, Также возможно сделать готовый форум PHPBB2 на Mybb2.ru
Русская поддержка phpBB
Copyright © Aiwan. Kolobok smiles