В открытом доступе опубликованы инструменты для распознавания текста по звуку клавиатуры

В открытом доступе опубликованы инструменты для распознавания текста по звуку клавиатуры

Инструмент keytap требует обучения перед использованием, но его улучшенная версия keytap2 избавляет от этой необходимости.

Разработчик под псевдонимом ggerganov опубликовал на GitHub набор программных инструментов командной строки и графического интерфейса пользователя (GUI) для захвата и анализа аудиоданных. Самыми интересными из них являются keytap и keytap2.

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

В набор данных входит аудиозапись нажатий на клавиатуре с указанием соответствующих клавиш. На базе этих данных алгоритм keytap изучает звук различных клавиш, а затем пытается определять нажатые клавиши только по записанному звуку. Однако, как отметил ggerganov, во время сбора данных для обучения алгоритма должны использоваться одни и те же клавиатура и микрофон, а расстояние между ними не должно меняться, в противном случае все обучение будет неэффективным. Кроме того, keytap не позволяет распознавать нажатия по звуку в реальном времени.

Тем не менее, в среду, 16 декабря, разработчик опубликовал инструмент keytap2 с улучшенным функционалом. Перед началом его использования исследователю больше не нужно собирать набор данных для обучения.

«Алгоритм проводит кластерный анализ обнаруженных нажатий клавиш, основываясь на схожести их звуков, а затем использует статистические данные о частоте N-грамм букв в предполагаемом языке, на котором написан текст (например, английском). То есть, что необходимо заранее знать язык текста, но это намного меньшее требование по сравнению с первой версией (keytap – ред.). Кроме того, для успешного статистического анализа необходимо достаточное количество записанных образцов», – сообщил ggerganov.

Узнать подробности о реализации keytap2 можно здесь .

N-грамма – последовательность из n элементов. С семантической точки зрения, это может быть последовательность звуков, слогов, слов или букв. Последовательность из двух последовательных элементов часто называют биграмма, а из трех – триграмма. Не менее четырех и выше элементов обозначаются как N-грамма, N меняется на количество последовательных элементов.


В нашем телеграм канале мы рассказываем о главных новостях из мира IT, актуальных угрозах и событиях, которые оказывают влияние на обороноспособность стран, бизнес глобальных корпораций и безопасность пользователей по всему миру. Узнай первым как выжить в цифровом кошмаре!