java - 如果屏幕上显示多个二维码,请扫描二维码

标签 java android android-camera zxing qr-code

我正在开发一个Android示例应用程序作为一个学术项目,我需要扫描二维码,我使用了二维码扫描库,如果屏幕上只有一个二维码,我能够成功检测到二维码。

对,我想扫描 QR 码,尽管相同的 QR 码同时显示在屏幕上的多个位置。例如,在我的笔记本电脑屏幕上,二维码图像类似于下面提到的图像。所有二维码都是相同的,它们之间没有区别。 考虑下面的图像,它们具有 6 个和 4 个相同的 QR 码,但带有一些填充。现在,用户聚焦或将相机放置在屏幕上应扫描的任何位置。如果相机一次聚焦多个二维码,则扫描其中任意一个。

我正在考虑的解决方案

1)我们可以限制相机预览框的区域并尝试获取二维码,但根据我的要求这是不可行的。 2)我应该先对图像应用任何图像处理算法吗?

请帮助我如何实现稳健。 任何帮助,将不胜感激。感谢您抽出时间。

2 张图片:

enter image description here

enter image description here

问候

最佳答案

BoofCV 的 QR 扫描仪可以轻松处理彼此相邻的多个 QR 码。

https://boofcv.org/index.php?title=Example_Detect_QR_Code

我在你的图像上运行了 Android 演示,它可以很好地读取它们。每个二维码都被视为独立的,即使它们具有相同的消息。您可以获得每个人的位置和消息。

https://play.google.com/store/apps/details?id=org.boofcv.android&hl=en_US

关于java - 如果屏幕上显示多个二维码,请扫描二维码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30767188/

相关文章:

Java.util.scanner 错误

java - net.sf.jasperreports.engine.JRRuntimeException : Export property type interface java. 实用程序。不支持 map

android - 如何在不保存/显示图像的情况下拍照

android - 如何将使用 MediaRecorder 录制的视频长度读取到通过 context.getFilesDir() 构建的私有(private)应用程序存储目录中?

android - 释放后调用的方法

java - 如何测量读取多播时从服务器接收到的数据包最大传输单元 (MTU)

java - 使用 Spring 主题 回顾最后一个 Controller 方法

Android AdMob SDK 异常行为

android - 适用于Android项目CI的Openshift Jenkins设置

android - 使用 smack 在消息应用程序中实现接收者状态(已读或正在打字) - Android