Firebase MLkit无法从现有文件/ jpg中检测条形码

时间:2019-05-02 17:31:31

标签: java android firebase barcode-scanner firebase-mlkit

我正试图允许用户从其手机本地文件系统中“导入”现有图片,并将其扫描条形码。我能够获取图像的uri,但是一旦尝试将其传递给MLKit,即使原始图像是条形码,也不会检测到条形码。

我已经对此进行了广泛的研究,并且做了很多谷歌搜索,但是没有找到解决方案。起初,我认为问题可能出在旋转方面,因为Firebase看起来有些挑剔,没有正确的旋转方式。因此,我尝试手动旋转图像(在代码中以及通过使用Google照片进行编辑)。我尝试调整照片的大小(尺寸和压缩尺寸)并将jpg更改为png。我尝试使用似乎适用于此用例的两种Firebase视觉方法[FirebaseVisionImage.fromBitmap(bitmap);和FirebaseVisionImage.fromFilePath(context,uri);]我也尝试使用应该与旋转无关的常规Google视觉库。我什至尝试使用裁剪库,以防万一我设法调整大小和压缩错误。

我正在Google像素上对此进行测试。以上都不产生任何结果。没有错误。返回检测到的条形码的阵列只是空的。关于是否存在比其他文件更有效的特定大小(尺寸或文件大小)或更好的文件类型,该文档似乎非常模糊。另一个让我感到困惑的难题是,条形码的屏幕快照可以工作,但实际相机中的任何照片都行不通。

0 个答案:

没有答案