Skip to main content

Real time Barcode and QR Code scanner Edit

Project description

zbarcam

Build Status PyPI version Documentation 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 src/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.907.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

zbarcam-2019.907-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: zbarcam-2019.907.tar.gz
  • Upload date:
  • Size: 7.2 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.907.tar.gz
Algorithm Hash digest
SHA256 fabe91a34a448dbaa8a6d3e046a2e109eb87892450e39a9b9722eabc5dace603
MD5 80a2e66e3dc976a83cf66d9df060c771
BLAKE2b-256 9e49f5ae45107cf7a7c6cad3e1d1a3f5e62cda20011ce3a8c2fda73638b775d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zbarcam-2019.907-py3-none-any.whl
  • Upload date:
  • Size: 7.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.907-py3-none-any.whl
Algorithm Hash digest
SHA256 3e1f264e48b87338bedd7eaec0e63e0c1b297fe7cc7ca92706f00fd286f23c9e
MD5 07ea02500b2a30a1d35dca669f3729ac
BLAKE2b-256 9e68b2b2a9edf5fb72015f229a29a9a5a82765c281ce299ba37399fd7c6fde7e

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