Skip to main content

Real time Barcode and QR Code scanner Edit

Project description

zbarcam

Build Status

Real time Barcode and QR Code scanner using the camera. It's built on top of Kivy and pyzbar.

screenshot

How to use

Simply import and instanciate ZBarCam in your kvlang file and access its symbols property.

#:import ZBarCam kivy_garden.zbarcam.ZBarCam
#:import ZBarSymbol pyzbar.pyzbar.ZBarSymbol
BoxLayout:
    orientation: 'vertical'
    ZBarCam:
        id: zbarcam
        # optional, by default checks all types
        code_types: ZBarSymbol.QRCODE, ZBarSymbol.EAN13
    Label:
        size_hint: None, None
        size: self.texture_size[0], 50
        text: ', '.join([str(symbol.data) for symbol in zbarcam.symbols])

A full working demo is available in kivy_garden/zbarcam/main.py.

Install

Ubuntu

Install system requirements (Ubuntu 18.04):

sudo apt install libzbar-dev

Install garden requirements:

garden install --upgrade xcamera

Install zbarcam:

pip install --upgrade https://github.com/kivy-garden/zbarcam/archive/develop.zip

Then import it in your Python code via:

from kivy_garden.zbarcam import ZBarCam

You may also need to compile/install OpenCV manually, see OpenCV.md.

Android

Build for Android via buildozer, see buildozer.spec.

Contribute

To play with the project, install system dependencies and Python requirements using the Makefile.

make

Then verify everything is OK by running tests.

make test
make uitest

Troubleshooting

Install Unable to import package 'kivy.garden.xcamera.XCamera'

You're missing the xcamera dependency. Install it as described in the install instructions.

Android ValueError: Empty module name

More likely an import issue in your .kv file. Try to from zbarcam import ZBarCam in your main.py to see the exact error. It's common to forget Pillow in buildozer.spec requirements section.

OpenCV related

See OpenCV.md.

Credits

I borrowed a lot of code from tito/android-zbar-qrcode.

Project details


Download files

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

Source Distribution

zbarcam-2019.902.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

zbarcam-2019.902-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file zbarcam-2019.902.tar.gz.

File metadata

  • Download URL: zbarcam-2019.902.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8

File hashes

Hashes for zbarcam-2019.902.tar.gz
Algorithm Hash digest
SHA256 c04c73dead7095dc16de2a03b39daa734176f44657fe61602d167ec09dd8e2e5
MD5 de7b806d06c537f35a59df041329f9ef
BLAKE2b-256 046fc8519c895869e590315df9f984f3b28e811ea7d386cd904be84eee9abb5e

See more details on using hashes here.

File details

Details for the file zbarcam-2019.902-py3-none-any.whl.

File metadata

  • Download URL: zbarcam-2019.902-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8

File hashes

Hashes for zbarcam-2019.902-py3-none-any.whl
Algorithm Hash digest
SHA256 ec436f7cf5aa9a2823636e99a3d301579fcfe696908cc62a63ed2fa5545dab94
MD5 c887e2f45e5c0a550b6dc862436f5a21
BLAKE2b-256 937decca7d92d96eea58713685e28d0c6a733907b40ebb4dc8e1b880fcb65c89

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page