С помощью API распознавания цифровых рукописных данных ML Kit вы можете распознавать рукописный текст и классифицировать жесты на цифровой поверхности на сотнях языков, а также классифицировать эскизы. API распознавания цифровых рукописных данных использует ту же технологию, которая обеспечивает распознавание рукописного ввода в Gboard, Google Translate и Quick, Draw! игра.
Распознавание цифровых чернил позволяет:
- Пишите на экране, а не на виртуальной клавиатуре. Это позволяет пользователям рисовать символы, которых нет на их клавиатуре, например ệ, अ или 森 для клавиатур с латинским алфавитом.
- Выполняйте основные операции с текстом (навигацию, редактирование, выделение и т. д.) с помощью жестов.
- Распознавайте нарисованные от руки фигуры и смайлы.
Распознавание цифровых чернил работает с штрихами, которые пользователь рисует на экране. Если вам нужно прочитать текст с изображений, снятых камерой, используйте API распознавания текста .
Распознавание цифровых чернил работает полностью в автономном режиме и поддерживается на Android и iOS.
Ключевые возможности
- Преобразует рукописный текст в последовательности символов Юникода.
- Запускается на устройстве почти в реальном времени
- Почерк пользователя остается на устройстве, распознавание осуществляется без подключения к сети.
- Поддерживает более 300 языков и более 25 систем письма. Полный список поддерживаемых языков см.
- Поддерживает классификацию жестов для этих языков с помощью расширений
-x-gesture
- Поддерживает классификацию жестов для этих языков с помощью расширений
- Распознает смайлы и основные формы
- Сохраняет мало места на устройстве за счет динамической загрузки языковых пакетов по мере необходимости.
Распознаватель принимает объект Ink
в качестве входных данных. Ink
— это векторное представление того, что пользователь написал на экране: последовательность штрихов , каждый из которых представляет собой список координат с информацией о времени, называемой точками касания . Штрих начинается, когда пользователь опускает стилус или палец, и заканчивается, когда он поднимает его. Ink
передаются распознавателю, который возвращает один или несколько возможных результатов распознавания с уровнями достоверности.
Примеры
английский почерк
На изображении слева ниже показано, что пользователь нарисовал на экране. Изображение справа — соответствующий объект Ink
. Он содержит штрихи с красными точками, обозначающими точки касания внутри каждого штриха.
Всего четыре удара. Первые два штриха в объекте Ink
выглядят следующим образом:
Чернила | ||
---|---|---|
Инсульт 1 | x | 392, 391, 389, 287, ... |
y | 52, 60, 76, 97, ... | |
t | 0, 37, 56, 75, ... | |
Инсульт 2 | x | 497, 494, 493, 490, ... |
y | 167, 165, 165, 165, ... | |
t | 694, 742, 751, 770, ... | |
... |
Когда вы отправляете эти Ink
в распознаватель английского языка, он возвращает несколько возможных транскрипций, содержащих пять или шесть символов. Они упорядочены по убыванию достоверности:
Результат распознавания | |
---|---|
ПризнаниеКандидат №1 | рука |
ПризнаниеКандидат №2 | Handrw |
ПризнаниеКандидат №3 | трудно |
ПризнаниеКандидат №4 | Ханду |
ПризнаниеКандидат №5 | руки мы |
Жесты
Классификаторы жестов относят рукописный штрих к одному из девяти классов жестов, перечисленных ниже.
arch:above arch:below | |
caret:above caret:below | |
circle | |
scribble | |
strike | |
verticalbar | |
writing |
Эскизы эмодзи
На изображении слева ниже показано, что пользователь нарисовал на экране. Изображение справа — соответствующий объект Ink
. Он содержит штрихи с красными точками, обозначающими точки касания внутри каждого штриха.
Объект Ink
содержит шесть штрихов.
Чернила | ||
---|---|---|
Инсульт 1 | x | 269, 266, 262, 255, ... |
y | 40, 40, 40, 41,... | |
t | 0, 36, 56, 75, ... | |
Инсульт 2 | x | 179, 182, 183, 185, ... |
y | 157, 158, 159, 160, ... | |
t | 2475, 2522, 2531, 2541, ... | |
... |
Когда вы отправляете эти Ink
в распознаватель смайлов, вы получаете несколько возможных транскрипций, упорядоченных по убыванию достоверности:
Результат распознавания | |
---|---|
ПризнаниеКандидат №1 | 😂 (U+1f62d) |
ПризнаниеКандидат №2 | 😅 (U+1f605) |
ПризнаниеКандидат №3 | 😹 (U+1f639) |
ПризнаниеКандидат №4 | 😄 (U+1f604) |
ПризнаниеКандидат №5 | 😆 (U+1f606) |