Java Zxing未发现异常
我试着用Zxing来解码阿兹特克代码 我使用的代码来自。 以下是其中的一部分:Java Zxing未发现异常,java,image-processing,barcode,zxing,aztec-barcode,Java,Image Processing,Barcode,Zxing,Aztec Barcode,我试着用Zxing来解码阿兹特克代码 我使用的代码来自。 以下是其中的一部分: public static String readQRCode(String filePath, String charset, Map hintMap) throws FileNotFoundException, IOException, NotFoundException { BinaryBitmap binaryBitmap = new BinaryBitmap(new HybridBi
public static String readQRCode(String filePath, String charset, Map hintMap)
throws FileNotFoundException, IOException, NotFoundException {
BinaryBitmap binaryBitmap = new BinaryBitmap(new HybridBinarizer(
new BufferedImageLuminanceSource(
ImageIO.read(new FileInputStream(filePath)))));
Result qrCodeResult = new MultiFormatReader().decode(binaryBitmap,
hintMap);
return qrCodeResult.getText();
}
我试图通过上面的代码来阅读这些图像:
但这在以下方面失败:
Exception in thread "main" com.google.zxing.NotFoundException
我说-好吧,也许质量太低了-所以我拿了GIMP:
Exception in thread "main" com.google.zxing.NotFoundException
奇怪的是:几乎所有的条形码阅读器都能毫无问题地读取这两种条形码。例如:NeoReader(Android手机)可以从笔记本电脑的屏幕上正确地读取这两种数据
我想补充一点,绝对清晰的图像,比如,都能被代码正确识别
问题:
上面的代码有什么问题
如何解码这个阿兹特克代码?我可以做任何预处理,但需要什么步骤
请帮忙
项目详细信息:Java8,com.google.zxing:core:3.2.1,com.google.zxing:javase:3.2.1请不要使用jpg文件,因为您会丢失一些重要信息。使用无损压缩文件格式,如bmp或png 我仍然无法用zxing阅读此代码,但另一个网页:在预处理后阅读:
谢谢你的回复。稍后我将尝试您的预处理想法。它并不能解决整个问题,因为我仍然需要假设一些列/行编号。但这没关系,我想我可以处理它——在我的项目中,我甚至可以简单地把整个过程做几次(比如表单值80-85)。我真的很感谢你的工作-谢谢。你的解决方案在中兴有效!至少对于上面的示例图像。在线Zxing只有在通过URL传递图像(而不是文件)后才能成功解码。这里是输出:明天我将检查这个图像是否也被ZXingJava库解码。非常感谢。您能解释一下如何从第三步实现最终效果吗?@ZZ5在第三步中,我们有尺寸为83x83px的基于灰度的图像,因此您必须检查每个像素的灰度值是否小于114(在本例中,114给出了很好的结果)。若小于,那个么在最后一个矩阵中,你们可以放置黑色像素,否则是白色像素。使用谷歌阅读更多关于图像阈值的信息。@ZZ5不幸的是,我没有看到你的代码,所以我帮不了你。如果你想看看我的解决方案,这里是它(根据我的帖子,我对它做了一些修改):。要打开Program.avlite文件,应下载“Adaptive Vision Studio 4.3 Lite”。我认为它应该可以帮助您用任何其他语言(如Java/c++)编写解决方案。