【问题标题】:Unable to read white on black Data Matrix barcode无法读取黑色 Data Matrix 条码上的白色
【发布时间】:2015-02-19 06:27:48
【问题描述】:

Data Matrix 条码支持已添加到 iOS 8 中,如果 Data Matrix 条码是黑底白字(暗底光),我可以使用它来读取它们。但是,它永远不会读取黑底白字(黑底白字)条码。

读起来很好:

无法阅读:

根据 Data Matrix ECC 200,应支持暗亮。

有人知道如何让 iOS 8 读取深色 Data Matrix 条码上的光吗?

【问题讨论】:

  • 我可以知道您使用的是哪个 API 吗?
  • @gabbler 我正在使用本机 iOS 条形码功能 (AVCaptureMetadataOutput) 和关联的委托 (AVCaptureMetadatOutputObjectsDelegate)。
  • 你是用相机扫描图片,还是直接传入图片解码?
  • 我正在使用相机 - iOS(当前)不支持传入图片进行解码。
  • @ssasa 我真的希望使用原生 iOS 功能。当(几乎)我需要的一切都是 iOS 的一部分时,不得不求助于另一个库似乎很愚蠢。

标签: ios ios8 barcode datamatrix


【解决方案1】:

您可以实时反转AVCaptureSession 的颜色,让您读取数据矩阵代码。

您可以使用GPUImage 反转颜色。它速度快且易于插入。只需反转并让 AVFoundation 正常查找即可。

【讨论】:

  • AVCaptureVideoPreviewLayer 用于在捕获视频时呈现视频。应用反转过滤器只会反转用户看到的内容,而不是 AVCaptureSession 的输入,所以看不出这有什么帮助。你在想别的吗?
  • #facepalm - 是的,我在想别的东西 :) 您使用什么系统来捕获 QR 图像?在我编辑我的答案之前,您是在处理静态图像还是使用实时预览来捕获 QR 码?
  • 我不认为 GPUImage 的输出可以作为 AVCaptureSession 的输入,这是在其上使用 iOS 条形码扫描所必需的。
  • 有人让它工作吗?我也在寻找解决方案。 iOS 上的 ZXing 似乎也不起作用。
  • @Uniphonic 答案是从捕获会话中获取帧,使用 CIFilter 反转图像并使用 iOS11+ 上的新 Vision 框架从反转图像中检测条形码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
  • 2018-03-09
  • 2017-04-23
  • 1970-01-01
  • 2018-08-22
  • 1970-01-01
  • 2013-06-22
相关资源
最近更新 更多