探索 Azure 认知服务:从文本处理到语音交互
1. 手写文本处理与计算机视觉服务限制
在处理文本时,若遇到手写文本,可使用如下代码进行高亮处理并打印其内容:
if (line.appearance.style.name == 'handwriting'):
draw_box(line.bounding_box)
print(line.text)
read_in_stream
函数在将手写文本转换为 Python 字符串方面表现出色。例如,它能识别出像“$ 100”、“Jeff”、“Prosise”等手写内容。
不过,计算机视觉服务有一项重要限制:它不接受大于 4 MB 的图像。若上传的图像超过此大小,会抛出 ComputerVisionErrorResponse
异常。你可以捕获这些异常(或更高级别的 AzureError
异常)并优雅地恢复,也可以在提交图像前检查其大小,必要时进行缩小处理。
2. 语言服务
语言服务和翻译服务采用了先进的自然语言处理(NLP)模型,可进行情感分析、神经机器翻译、问答等多种任务。以下是语言服务的一些关键功能及示例代码。
2.1 情感分析
使用 TextAnalyticsClient
类可以方便地对文本进行情感分析。以下是一个对多个文本样本进行情感分析的示例: