在使用HIAI引擎的“通用文本识别”功能时,我无法使其检测并返回任何文本。例如,对于示例图像,它返回空文本但状态码为200。我使用了HIAI文档中的示例程序,所以我不知道问题出在哪里。因此,我从头开始创建了另一个应用程序,结果仍然相同。
回答:
我已经找到了一些解决方法,至少足以让它工作。你导入的一些图像可能太大,导致返回状态码200,格式无效,即图像的高度和宽度过大。你需要检查位图的高度是否超过2560像素,宽度是否超过1440像素,并相应地进行缩放或裁剪。
我所做的:
Bitmap initClassifiedImg; if(bitmap.getHeight()>2560 && bitmap.getWidth()>1440) initClassifiedImg = Bitmap.createScaledBitmap(bitmap, 1440, 2560, true); else if(bitmap.getHeight()>2560) initClassifiedImg = Bitmap.createScaledBitmap(bitmap, bitmap.getWidth(), 2560, true); else if (bitmap.getWidth()>1440) initClassifiedImg = Bitmap.createScaledBitmap(bitmap, 1440, bitmap.getHeight(), true); else initClassifiedImg = Bitmap.createBitmap(bitmap);
设置此代码以检查位图,至少不会生成状态码200的错误。请注意,某些图像仍然无法生成结果。如果结果代码为0且没有结果,这意味着它只是无法识别图像中的文本。