数字墨水识别

借助机器学习套件的数字墨水识别 API,您可以在数百种语言的数字表面上识别手写文本,并对草图进行分类。数字墨水识别 API 采用与 Gboard、Google 翻译和 Quick, Draw! 游戏中的手写识别技术相同的技术。

借助数字墨水识别,您可以在屏幕上输入内容,而无需在虚拟键盘上输入内容。这样一来,用户就可以用键盘上没有的字符进行输入,例如拉丁字母键盘上的“ệ”或“sen”等字符。该 API 还可以转录手写笔记并识别手绘形状和表情符号。

数字油墨识别可与用户在屏幕上描画的笔画配合使用。如果您需要读取从相机拍摄的图片中的文本,请使用 Text Recognition API

数字墨水识别完全离线,在 Android 和 iOS 上均受支持。

iOS Android

主要功能

  • 将手写文本转换为 Unicode 字符序列。
  • 以近乎实时的方式在设备上运行。
  • 用户的手写内容会保留在设备上。在没有网络连接的情况下执行识别。
  • 支持 300 多种语言和 25 多种系统,包括所有主要的拉丁语,以及中文、日语、韩语、阿拉伯语和西里尔文。请参阅所支持语言的完整列表
  • 识别表情符号和基本形状。
  • 根据需要动态下载语言包,以降低设备端存储空间。

识别器接受 Ink 对象作为输入。Ink 是用户在屏幕上所写内容的矢量表示形式:一系列描边,其中每个都是包含时间信息(称为“接触点”)的坐标列表。描边会在用户拿起触控笔或手指时开始,然后在用户举起触控笔时结束。系统会将 Ink 传递给识别器,该识别器会返回一个或多个可能的识别结果以及置信度。

示例

英语手写内容

下面的左侧图片显示了用户在屏幕上绘制的内容。右侧的图片是对应的 Ink 对象。它包含描边,红色圆点表示每个描边中的接触点。

    

有四划。Ink 对象中的前两个描边如下所示:

墨水
描边 1 x 392、391、389、287......
52、60、76、97...
t 0、37、56、75...
描边 2 x 497、494、493、490......
167、165、165、165...
t 694、742、751、770...
...

当您将此 Ink 发送到英语的识别器时,它会返回几个可能的转录内容,其中包含 5 个或 6 个字符。它们按置信度降序排列:

RecognitionResult
认可候选人 1
识别候选者 2 手持车
认可候选人 3
候选候选人 4 Handu
候选翻译 5 Handwe

表情符号素描

下面的左侧图片显示了用户在屏幕上绘制的内容。右侧的图片是对应的 Ink 对象。它包含描边,红色圆点表示每个描边中的接触点。

    

Ink 对象包含六个描边。

           

墨水
描边 1 x 269、266、262、255...
40、40、40、41...
t 0、36、56、75...
描边 2 x 179、182、183、185...
157、158、159、160...
t 2475、2522、2531、2541......
...

将此 Ink 发送到表情符号识别器时,您会获得几种可能的转录内容(按置信度降序排列):

RecognitionResult
认可候选人 1 😃? (U+1f62d)
识别候选者 2 😝? (U+1f605)
认可候选人 3 😹? (U+1f639)
候选候选人 4 😄? (U+1f604)
候选翻译 5 😝? (U+1f606)