QUOTE (Alex11 @ Aug 23 2010, 19:28)

Вы бы поиграли с модельками, тем более, что у Вас есть разные варианты записанного сигнала. Возможно, что Вам будет достаточно очень небольшого по буферу Фурье, чтобы определить основную частоту. Нужно только разойтись с гармониками, а дальше уточнить частоту по огибающей.
Я и играюсь тут, просто коллективный разум хотел еще привлечь, иожет велосипед изобретаю.
Так же попробовал метод описанный в одном из блогов:
QUOTE
The solution I used is a pretty simple one. We set two thresholds (a positive and a negative one), and start counting when the signal value becomes higher than the positive threshold. We keep counting and wait for the signal to go below the negative threshold, then wait for it to go above the positive one again. This sometimes helps us count only the transitions we’re interested in.
Он дает правильное определение чаще чем обычный подсчет переходов через ноль, но все-равно ошибается, когда амплитуда "помехи" достаточно велика.
Вот 4 последовательных периода наложенные друг на друга. Видно, что они отличаются незначительно, но внутри самого периода у них есть особенности и характерные неравномерности. Но сам период я вычислил зная частоту струны и то, что струна был настроена.
В идеале нужен алгоритм, который найдет подобную зависимость и определит период.
Эскизы прикрепленных изображений