← Все статьи

Как работают переводчики азбуки Морзе: от световых сигналов к тексту

Переводчик азбуки Морзе преобразует последовательности точек и тире в читаемый текст. Онлайн-конвертеры текста встречаются на каждом шагу, но куда интереснее и полезнее переводчики, работающие в реальном времени, — те, что расшифровывают настоящие световые или звуковые сигналы.

Перевод текста

Простейшая форма перевода Морзе — из текста в текст: вы вводите точки и тире, а переводчик выдаёт буквы. В основе — обычная таблица соответствий, где каждому символу сопоставлен его эквивалент в Морзе.

Например:

  • Ввод: .... . .-.. .-.. ---
  • Вывод: HELLO

Расшифровка сигнала в реальном времени

Перевод настоящих сигналов Морзе (световых вспышек или звуковых тонов) устроен сложнее. Вот как это работает.

1. Обнаружение сигнала

Сначала переводчик должен обнаружить сам сигнал:

  • Свет: камера покадрово измеряет изменения яркости.
  • Звук: микрофон улавливает частоту и громкость тона.

2. Определение порога

Адаптивный порог отделяет «включено» (сигнал есть) от «выключено» (сигнала нет):

  • замеряет уровень фоновой яркости или шума;
  • задаёт порог выше уровня шума;
  • непрерывно подстраивается под меняющиеся условия.

3. Анализ тайминга

Как только определены состояния «включено/выключено», переводчик измеряет длительности:

  • короткое «включено» — точка;
  • длинное «включено» (втрое длиннее точки) — тире;
  • короткое «выключено» — пауза между элементами;
  • среднее «выключено» (втрое) — пауза между символами;
  • длинное «выключено» (в семь раз) — пауза между словами.

4. Распознавание символа

Когда точки и тире определены, двоичное дерево или таблица соответствий сопоставляет каждую последовательность символу. Дерево Морзе начинается от корня: точка ведёт влево, тире — вправо, и так до листа с расшифрованным символом.

5. Подстройка под скорость

Хорошие переводчики автоматически определяют скорость передачи, измеряя самое короткое «включено» (это должна быть точка) и масштабируя под него все временные пороги.

Сложности расшифровки в реальном времени

  • Шум: перепады фонового освещения, дрожание камеры, звуковые помехи.
  • Разброс скорости: человек передаёт не идеально ровно.
  • Тайминг Фарнсуорта: некоторые отправители используют иные промежутки между символами.
  • Сила сигнала: слабые или далёкие сигналы бывает трудно различить.

Как расшифровывает Морзе наше приложение

Приложение «Азбука Морзе» использует камеру телефона как переводчик Морзе в реальном времени:

  1. Обработчик кадров снимает данные о яркости на частоте 30+ кадров в секунду.
  2. Адаптивный порог подстраивается под фоновое освещение.
  3. Анализ тайминга определяет точки, тире и паузы.
  4. Автоопределение скорости подстраивается под любой темп передачи.
  5. Поддержка двоичного протокола позволяет также расшифровывать двоичные сигналы в манчестерском кодировании.

Весь процесс идёт прямо на устройстве без задержек — интернет не нужен.

Скачайте бесплатно для iOS или Android.

Попробуйте приложение «Азбука Морзе»

Расшифровывайте, передавайте и учите азбуку Морзе на телефоне. Бесплатно для iOS и Android.