Сравните два звука в Android - программирование

Сравните два звука в Android

Можно сравнить голос с уже записанным голосом в телефоне. Основываясь на сравнении, мы можем оценивать как Хорошее, Очень Хорошее, Отличное и т.д. Большинство закрытых звуков получают высокий рейтинг.

Кто-нибудь знает, возможно ли это в Android?

Справка очень заметна.

4b9b3361

Ответ 1

Для общей библиотеки обработки звука я могу порекомендовать marsyas. К сожалению, официальная домашняя страница в настоящее время не работает.

Marsyas даже предоставляет пример приложения для Android. Получив правильную структуру анализа сигналов, вам необходимо проанализировать свой сигнал. Например, AimC реализация для marsyas может использоваться для сравнения голоса.

Я рекомендую установить marsyas на свой компьютер и скриптировать сценарии с примерами python.

Для анализа голоса вы можете использовать такую ​​сеть:

vqNetwork = ["Series/vqlizer", [
        "AimPZFC/aimpzfc",
        "AimHCL/aimhcl",
        "AimLocalMax/aimlocalmax",
        "AimSAI/aimsai",
        "AimBoxes/aimBoxes",
        "AimVQ/vq",
        "Gain/g",
    ]

Эта сеть берет ваши аудиоданные и преобразует их, так как они обрабатываются человеческим ухом. После этого он использует векторное квантование, чтобы уменьшить множество возможных векторов до очень специфических кодовых книг с 200 элементами. Затем вы можете преобразовать выходные данные сети в считываемые символы (например, utf8), которые затем можно сравнить, используя что-то вроде расстояний редактирования строк (например, расстояние Левенштейна).

Другая возможность заключается в использовании MFCC (Mel Frequency Cepstral Coe) для распознавания речи, который marsyas поддерживает также и использует что-то, например Dynamic Time Warping, чтобы сравнить выходы. Этот документ описывает процесс довольно хорошо.