QR-код (2D штрих-код) алгоритмы кодирования и декодирования? [закрытый]


Ищет свободный / открытый код или описание алгоритмов для кодирования (простого) и декодирования (жесткого) 2D штрих-кода QR-кода .

Это не кажется тривиальной проблемой, но она настолько популярна в Японии, что должно быть что-то уже доступное...
9 39

9 ответов:

У меня есть коллега, который работал над ZXing ("переход зебры").

У этого есть довольно разнообразная поддержка платформы.

(в ответ на вопрос о QR-кодах в PHP)

Тип QR-диаграммы Google Charts может работать для вас, если вы не ожидаете большого трафика или если вы можете кэшировать изображения. Он чрезвычайно прост в использовании - просто поместите текст для кодирования в URL.

Вот хорошая библиотека LGPL для кодирования QR-кода libqrencode

Libqrencode-это библиотека языка Си для кодирование данных в символе QR-кода, a своего рода 2D символы, которые могут быть сканируется с помощью удобных терминалов, таких как мобильный телефон с ПЗС. Емкость QR-код до 7000 цифр или 4000 характеры, и весьма крепок.

Вот проект Google code, который декодирует QR-код - нацелен на iPhone, но является LGPL, и источник доступен. Должен быть адаптируемым...

- Адам

Http://www.swetake.com/qr/qr1_en.html

Просто подумал, что я упомяну этот, который объясняет, как они работают.

PyQrCodec - это библиотека Python для кодирования Qr-кодов в PNG и декодирования их из различных форматов изображений.

Вы можете найти пример c# здесь http://twit88.com/home/opensource/qrcode бесплатно (нужно только зарегистрироваться)

Вы можете использовать zbar непосредственно для декодирования QR-кода.

#!/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)

Вы можете попробовать python-qrtools: https://launchpad.net/qr-tools Он использует qrencode для генерации и zbar для декодирования (с веб-камеры или файла ; -)