QR码(二维条码)的编解码算法? [关闭]
Posted
技术标签:
【中文标题】QR码(二维条码)的编解码算法? [关闭]【英文标题】:QR code (2D barcode) coding and decoding algorithms? [closed] 【发布时间】:2010-09-18 21:44:47 【问题描述】:寻找免费/开源代码或算法描述来编码(简单)和解码(硬)二维条码QR code。
这似乎不是一个小问题,但它在日本如此流行,一定有一些已经可用的东西......
【问题讨论】:
显然日本的二维码规范是免费的,但国际标准委员会 (ISO) 决定对英文版收取 200 多瑞士法郎的费用。如果英文版只是日文版的翻译,那么我会说这个价格,这是完全不道德的。 要了解二维码中使用的reed solomon错误码规范参考math.stackexchange.com/questions/76045/… 【参考方案1】:我有一位同事在 ZXing(“斑马线”)工作。
这得到了相当多的平台支持。
【讨论】:
ZXing真的很好看。【参考方案2】:QR Code Demystified - Part 1QR Code Demystified - Part 2QR Code Demystified - Part 3QR Code Demystified - Part 4QR Code Demystified - Part 5QR Code Demystified - Part 6
和
http://www.thonky.com/qr-code-tutorial/introduction/
要了解其背后的数学理论,请参阅 Math Stackexchange 中的讨论
https://math.stackexchange.com/questions/76045/reed-solomon-polynomial-generator
【讨论】:
【参考方案3】:http://www.swetake.com/qrcode/qr1_en.html
只是想我会提到这个解释它们是如何工作的。
【讨论】:
网址坏了,我猜更新的是:swetake.com/qrcode/qr1_en.html。由于更改的字符太少,无法编辑帖子... 谢谢,已解决。【参考方案4】:(回应那些询问 php 二维码的人)
Google Charts QR chart type 可能适合您,如果您不希望有很多流量,或者如果您可以缓存图像。它非常易于使用 - 只需将要编码的文本放入 URL。
【讨论】:
【参考方案5】:这是一个很好的用于编码二维码的LGPL库libqrencode
Libqrencode 是一个 C 库,用于 在 QR 码符号中编码数据,a 一种二维符号系统,可以是 由方便的终端扫描,例如 带CCD的手机。的容量 二维码最多7000位或4000位 字符,并且非常健壮。
这是一个Google code project that decodes QR code - 针对 iPhone,但它是 LGPL 并且源可用。应该是适应性强...
-亚当
【讨论】:
对于那些希望编码和解码数据矩阵代码(另一种常见的二维条码格式)的人,libdmtx.sourceforge.net 是一个可以对它们进行编码和解码的 C 库。【参考方案6】:PyQrCodec 是一个 Python 库,用于将二维码编码为 PNG 并从各种图像格式解码它们。
【讨论】:
那个链接失效了。 这是一个(相同?)pyqrcode.sourceforge.net【参考方案7】:你可以在这里免费找到c#示例http://twit88.com/home/opensource/qrcode(只需要注册)
【讨论】:
【参考方案8】:您可以直接使用zbar来解码二维码。
#!/usr/bin/python
from sys import argv
import zbar
import Image
# create a reader
scanner = zbar.ImageScanner()
# configure the reader
scanner.parse_config('enable')
# obtain image data
pil = Image.open("base.png").convert('L')
width, height = pil.size
raw = pil.tostring()
# wrap image data
image = zbar.Image(width, height, 'Y800', raw)
# scan the image for barcodes
scanner.scan(image)
# extract results
for symbol in image:
# do something useful with results
print 'decoded', symbol.type, 'symbol', '"%s"' % symbol.data
# clean up
del(image)
【讨论】:
【参考方案9】:你可以试试python-qrtools:https://launchpad.net/qr-tools 它使用 qrencode 生成和 zbar 解码(来自网络摄像头或文件;-)
【讨论】:
以上是关于QR码(二维条码)的编解码算法? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章