Skip to main content
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF! Donate Now

zbar package

Project description

Introduction

Author: Zachary Pincus zpincus@gmail.com

Contributions: Rounak Singh rounaksingh17@gmail.com (example code and zbar.misc).

zbar-py is a module (compatible with both Python 2.7 and 3+) that provides an interface to the zbar bar-code reading library, which can read most barcode formats as well as QR codes. Input images must be 2D numpy arrays of type uint8 (i.e. 2D greyscale images).

The zbar library itself packaged along with zbar-py (it’s built as a python extension), so no external dependencies are required. Building zbar requires the iconv library to be present, which you almost certainly have, except if you’re on windows. Then you probably will need to download or build the iconv DLL. Here are pre-built 32- and 64-bit binaries for same.

The python code is under the MIT license, and zbar itself is licensed under the GNU LGPL version 2.1.

Prerequisites:

  • iconv – c library required for building zbar-py; see above
  • numpy – for running zbar-py
  • pygame – for examples using a webcam

Simple examples:

More sophisticated examples can be found in ‘examples’ directory.

  • Scan for barcodes in a 2D numpy array:
import zbar
image = read_image_into_numpy_array(...) # whatever function you use to read an image file into a numpy array
scanner = zbar.Scanner()
results = scanner.scan(image)
for result in results:
    print(result.type, result.data, result.quality, result.position)
  • Scan for UPC-A barcodes and perform checksum validity test:
import zbar
import zbar.misc
image = read_image_into_numpy_array(...) # get an image into a numpy array
scanner = zbar.Scanner()
results = scanner.scan(image)
for result in results:
    if result.type == 'UPC-A':
        print(result.data, zbar.misc.upca_is_valid(result.data.decode('ascii')))

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
zbar-py-1.0.4.tar.gz (543.9 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page