【问题标题】:Analyze partial or corrupted QR codes [closed]分析部分或损坏的二维码 [关闭]
【发布时间】:2012-11-11 07:34:26
【问题描述】:

如何分析损坏/不完整的二维码?通常,QR 解码器只会告诉您无法读取数据。这不是很有用。即使代码不可读,也可以提取一些信息!

  • 找到查找器模式了吗?
  • 是否找到时序模式?
  • 什么版本?
  • 错误级别是多少?
  • 面具是什么?
  • 格式是否完好?
  • 什么是模式?
  • 是否在正确长度后找到停止模式?
  • 有什么有意义的数据吗?

如何从损坏/不完整的二维码中提取此信息?

【问题讨论】:

  • 大脑 + 计算机 = 解决这个问题的成功组合
  • merricx.github.io/qrazybox 将代码可视化,提供大量底层信息并允许手动图形操作。

标签: decode qr-code


【解决方案1】:

这是一个以多种方式出现的问题;有些比其他的更容易。

回答您的直接问题:您需要的工具:您的大脑。

软件可以提供帮助,但解码部分或打印错误的代码需要一些工作。这就像侦探工作。首先,您需要拿出您所拥有的并填写您对它们的创建方式的了解,然后做出有根据的猜测以获得胜利。


这是一个概念之旅。通过查看这些文章,您的要点列表中的大部分项目都会得到解答。

本文详细解释了整体格式:

Wounded QR Codes

例如,这是文章中关于格式化的第一张图片:


以下是解码部分图像过程的真实示例:

Decoding a partial QR code

从挑战图片开始

然后显示被编码的位的顺序:

然后通过侦探工作的过程来产生最终的图像:


这是一个不同的问题。您有完整的图像,但无法正确扫描,因此您必须手动解码:

Decoding small QR codes by hand

从纹身开始:

方向错误,也无法正确扫描。

所以你完成了解码过程:

产生最终结果:Maci Clare Peltz


祝你检测愉快!

【讨论】:

    【解决方案2】:

    你可以简单地破解一些开源代码,比如zxing,在解码过程中在命令行上打印出它的进度,然后看看它走了多远。只需添加一些System.out.println() 声明即可。

    问题是误报。它几乎总能找到至少 3 个看起来像 QR 码查找器图案的区域;它总是需要 3 个最有可能的候选人。它们通常是幻影,因为您通常不会看 QR 码。下一步将失败,查找有效的版本信息。 (在极不可能的情况下,它甚至会找到虚拟版本信息。)

    您提到的其中一些方面不一定会被库检测到,因为它们不必检测到,例如时序模式和停止模式(短数据不需要)。

    除了这些警告之外,应该很容易。

    【讨论】:

    • 谢谢 - 这正是我所需要的。虽然我做不到。我正在努力解决这个问题,并将我的努力和问题分开发布。
    猜你喜欢
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-14
    • 2013-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多