homeaboutdownloadsupportiPhonewikicommunity
Why another bar code reader?
There are scores of commercial and shareware programs that read many different symbologies, but searching around a few years ago, the few open source readers I was able to find didn't meet my needs. This project aims to create a high performance, stable, robust library component with supporting infrastructure that makes it easy to use in a variety of applications. (and most importantly... "it sounded like fun at the time" :)
How does it work?
A common design for a bar code "image scanner" is to apply digital image processing techniques to an image containing a bar code: exact details vary, but this usually involves several filter steps to cleanup noise, sharpen and enhance contrast, edge detection and shape analysis to determine symbol location and orientation, etc. Finally the data is extracted from this pristine image. All of these processing stages require CPU cycle and memory resources and are often sensitive to various "filter parameter" configurations which are difficult for end-users to understand and setup.
The ZBar library uses an approach closer to that used by "wand" and "laser" scanners: linear (1D) bar codes are designed to be decoded by a simple light sensor passing over the light and dark areas of a symbol. Taking advantage of this, the ZBar implementation makes linear scan passes over an image, treating each pixel as a sample from a single light sensor. The data is scanned, decoded and assembled on the fly.
Taking a cue from modern processing paradigms, ZBar further abstracts this idea into a layered streaming model. Processing is separated into independent layers with well defined interfaces, which can be used together or individually plugged into any other system. A high-level description of the modules is provided here:
- video input
- Abstraction of a video device which produces a stream of images for scanning. The current release has interfaces to video4linux (versions 1 and 2). Support is in progress for VfW (Windows)
- output window
- Simple abstraction of a display output window that can present a scanned image to the user and accept input in response. To maximize flexibility, the window may be opened and owned by the library, or attached to an application managed window embedded in a GUI. The current release supports basic X11 interfaces (XVideo and XImage). Support is in progress for VfW (Windows).
- image scanner
- Makes scan passes over a two-dimensional image to produce a linear stream of intensity samples. The input images may come from the video input module, or any external image source (such as an image file output by a flatbed scanner or digital camera). This module also incorporates the optional inter-frame consistency heuristic applied to a video stream.
- linear scanner
- Scans a stream of abstract intensity samples to produce a "bar width" stream. The intensity samples could be pixel values from the built-in image scanner, pixel values from an alternate external image scanner, or even raw sensor samples from a "decoder-less" wand or laser sensor. The bars are detected and measured by applying some very basic 1D signal processing to the input sample stream
- decoder
- The decoder searches a stream of bar widths for recognizable patterns and produces a stream of completely decoded symbol data. The current release implements decoding for EAN-13, UPC-A, UPC-E, EAN-8, Code 128 and Code 39 symbologies. Support is planned eventually for PDF-417 and EAN/UPC add-ons
- processor
- One potential drawback of a completely independent modular approach is that it can take some coding to tie all of the modules together, complicating even simple applications. The high-level "processor" module connects all of the other modules to flexibly support many common uses. For example, this makes it easy to pop up a window (or not) and scan for bar codes from video or image sources with very few lines of code. The included sample applications:
zbarcam
and zbarimg
are two examples of how this can be done (UTSL). - widgets
- For applications which already have a GUI, it does not always make sense to open a separate window for reading bar codes. To facilitate tighter integration between the reader and an existing GUI, the library also comes with ready-made "widgets" for various popular toolkits (currently Qt4, GTK+-2.0 and PyGTK2). The test programs in the distribution are good examples of how you can use these widgets to quickly incorporate a bar code reader widget into your application.
- language interfaces
- With the performance sensitive image processing done in C, library wrappers for Perl (currently available) and Python make building a bar code application fast and easy!
- plugin
- Support has been started for a NPAPI (Mozilla) plugin, which is supported by popular linux browsers and OpenOffice.org (among others).
spadix@users.sourceforge.net Copyright 2007-2010 (c) Jeff Brown - All Rights Reserved.
Verbatim copying and distribution of this entire article are permitted worldwide, without royalty, in any medium, provided this notice, and the copyright notice, are preserved.
Last modified: Fri Jul 15 11:18:33 PDT 2011
FAQs
ZBar Bar Code Reader is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 93, Code 39, Codabar, Interleaved 2 of 5, QR Code and SQ Code.
How does ZBar work? ›
The ZBar library uses an approach closer to that used by "wand" and "laser" scanners: linear (1D) bar codes are designed to be decoded by a simple light sensor passing over the light and dark areas of a symbol.
What is ZBar? ›
ZBar is an open-source C barcode reading library with C++, Python, Perl, and Ruby bindings.
What is the use of Zbarimg? ›
For each specified image file zbarimg scans the image for bar codes and prints any decoded data to stdout. Images may optionally be displayed to the screen. The underlying library currently supports EAN-13 (including UPC and ISBN subsets), EAN-8, Code 128, Code 39, and Interleaved 2 of 5 symbologies.
What is bar code reader and what does it do? ›
Barcode readers capture and translate barcodes into numbers and/or letters for translation by computer. Barcode scanners can be connected to a computer through a serial port, keyboard port or interface device called a wedge.
What is the purpose of the ZBar? ›
Zbar are steel deformed tie bars for the purpose of formwork support. They are usually tied with Z-bar Wingnuts and Flange Plates. It isn't uncommon to see Z Bars used in conduit enclosures and passed through the middle of formwork, before being removed for reuse at a later date.
Where is ZBar used? ›
Uses and Applications for Aluminum Zee Bar Extrusions
There are many construction applications where z bars, or z channels, can be used for furring out walls or used for insulation applications. Hanging Wall Panels.
What are Z-bars used for? ›
Roll Formed Z-Bars are commonly used as Framing, Supports, Reinforcements, Stiffeners for PVC-Rails, Slides, Tracks, and many other uses.
What barcodes are supported by ZBar? ›
ZBAR BAR CODE READER
It supports EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 93, Code 39, Codabar, Interleaved 2 of 5, QR Code and SQ Code. Included with the library are basic applications for decoding captured bar code images and using a video device (e.g. webcam) as a bar code scanner.
How to use ZBar tools? ›
Directions for use
- Turn your wheel to find the air escaping. ...
- Insert the plug through the eye of the needle.
- Insert the needle tool into the hole using the file to clear it if needed.
- Forcefully pull out the tool by turning your wrist.
- Reinflate the tyre if required.
MYRBETRIQ may increase your chances of not being able to empty your bladder. Tell your doctor right away if you have trouble emptying your bladder or if you have a weak urine stream. MYRBETRIQ may cause an allergic reaction with swelling of the face, lips, throat or tongue with or without difficulty breathing.
What is the drug Mirabegron used for? ›
Mirabegron is a medication used in the management of overactive bladder. It is in the sympathomimetic class of medications. It received approval from the US Food and Drug Administration (FDA) in June 2012 for treating overactive bladder with symptoms of urge urinary incontinence, urgency, and urinary frequency.
What is the use of Mira 25 tablet? ›
Mira 25 Tablet ER is used to treat symptoms of overactive bladder that includes increased or frequent urination, urgent need to urinate and inability to control urination. It helps to relax the muscle surrounding the bladder and increase it's ability to store urine.
What will a code reader tell you? ›
This OBD-II system was introduced in 1996 and primarily works off of a series of sensors in your car that regulate vehicle functions. OBD-II codes, or trouble codes, tell you specifically what's wrong with your car – from the transmission to the ignition, to brakes and airbags.
What are the disadvantages of a barcode reader? ›
The Disadvantages of Barcode Scanning and the Human Factor
Finally, barcode scanning is limited by its reliance on physical data tags or labels; if these become damaged or removed from an item, it may be difficult to scan the product accurately. Another disadvantage of barcode scanning is the potential for human error.
What can I do with a barcode scanner? ›
A quick scan of the barcode attached to any important item, from laptops, to products, to folders with sensitive files, to safety equipment, scanners can quickly tell you everything you need to know about the item you are seeking and can update your system with the most timely information possible.
How does z flashing work? ›
Z flashing is commonly used in horizontal siding installations, where the bottom edge of the siding meets a brick, stone, or stucco base. This creates a smooth transition from one material to another and establishes a barrier that prevents water infiltration behind the building's facework.
What is z trim used for? ›
Z trim is an important and versatile trim that can be used to attach the final trim for endwalls, sidewalls, gable trim and hips. Your Z-Trim will have paint on one side and primer on the other.
Do you nail Z flashing? ›
Secure the flashing to the framing with 2-1/2 inch nails at each wall stud. Keep the nails toward the top edge of the flashing, do not penetrate the seat or face.
How many calories in a ZBar? ›
CLIF Kid Zbar: each 1.27 oz (36g) Zbar has 130-150 calories, with 10g -12g of whole grains, 2g protein and 2g - 3g fiber depending on the flavor and is certified USDA organic. Zbar does not contain high fructose corn syrup or artificial flavors.