Microsoft Vision Api-VisionServiceException:执行POST请求时出错!收到错误代码:400

时间:2018-10-22 07:22:54

标签: android

我正在使用Microsoft视觉api从图像中读取文本。我的三星手机(操作系统:Android M),联想K4 Note(操作系统:Android M)可以正常工作。

我还有另一部夏普AQUOS(OS:牛轧糖)手机。在这部手机中,文字识别失败。视觉api返回此异常,

VisionServiceException:执行POST请求时出错!收到错误代码:400

有人遇到这个问题吗?请给我建议解决方案。

我的代码在下面给出。

Bitmap bitmap = CustomCameraStore.getInstance().getBitmap1();
        ByteArrayOutputStream output = new ByteArrayOutputStream(bitmap.getByteCount());
        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, output);
        ByteArrayInputStream inputStream = new ByteArrayInputStream(output.toByteArray());

        OCR ocr = visionClient.recognizeText(inputStream, LanguageCodes.AutoDetect, true);
        String result = gsonObject.toJson(ocr);

1 个答案:

答案 0 :(得分:2)

我已经找到了提出问题的原因。此异常是由于我已将图像发布到视觉api导致的。我在此博客的帮助下达到了这一点,下面提供了链接, https://westus.dev.cognitive.microsoft.com/docs/services/56f91f2d778daf23d8ec6739/operations/56f91f2e778daf14a499e1fc

我减少了用于压缩位图的quality变量。下面显示了代码。

Bitmap bitmap = CustomCameraStore.getInstance().getBitmap1();
        ByteArrayOutputStream output = new ByteArrayOutputStream(bitmap.getByteCount());
        bitmap.compress(Bitmap.CompressFormat.JPEG, 70, output);
        ByteArrayInputStream inputStream = new ByteArrayInputStream(output.toByteArray());

        OCR ocr = visionClient.recognizeText(inputStream, LanguageCodes.AutoDetect, true);
        String result = gsonObject.toJson(ocr);

这是一个可悲的事情,毫无疑问地拒绝了这个问题。无论如何,不​​要担心。我将这个答案发送给可能有帮助的人。