Смотрите как черновая версия алгоритма выравнивания биений пытается их выравнивать на примере пианино Аккорд. Как всегда буду рад любым комментариям. Не могу пока похвастаться значительными успехами но может и это хлеб? Честно говоря, большего достичь пока не удаётся. Чтобы добиться большего нужно внимательно пересмотреть критерий. Сейчас числовым критерием выровненности биений является
количество скачков соответствующих графиков в сторону уменьшения количества биений (без учета знака биений) - в сумме по всем консонансам. Чем это число меньше - тем "настройка" считается лучше. Это - довольно прямолинейный подход, явно нуждающийся в улучшении. Пока я не научил программу грамотно учитывать различия в амплитудах обертонов. А также - диапазон клавиатуры. Вернее, это мне пока не удалось. Ещё вернее - я пока толком не знаю как бы это сделать.
Итак, пианино Аккорд будучи записано на микрофон выглядит вот так:
Кстати, если применить к нему стандартный алгоритм EPT по уменьшению энтропии, получится вот такая картина:
А вот если применить алгоритм выравнивания по биениям (который на самом деле не использует никакой энтропии) то будет вот такая кривая настройки:
Давайте подробнее рассмотрим каких результатов удалось добиться программе при работе с этим инструментом. Подробнее - по всем интервалам. Правые концы всех кривых обрублены как раз там где одна из бьющихся частот оказывается больше 4000 герц, там нечего анализировать. Навскидку, сравнивая
было-стало, мы можем увидеть некоторое выравнивание "пил":
Малая терция:
Большая терция:
Кварта:
Квинта:
Малая секста:
Большая секста:
Октава:
Большая децима:
Кривая октавных биений 2:1 загибается вверх, хотя кривые остальных октавных биений загибаются книзу. Не знаю пока важно ли это и насколько - различный знак этих октавных биений. И как объяснить их различное поведение.
Я экспериментировал и с микрофонными записями других инструментов. Везде по-разному. Где-то результат заметно глаже, где-то хуже представленного. Но он достижим везде.
P.S.: У роялей, похоже, дела с пилой обстоят горааааздо лучше. Во всяком случае там кривые выходят гораздо глаже. Ну
почти без брака. Если будет интересно - покажу ещё картинки чтобы было понятно.