FIND DECODING ANSWERS
Find answers to some of the most frequently asked technical questions regarding development with 2D Revolution’s decoding software.
A digital image is divided into individual picture elements or pixels. In a given image of a code that is being read, each bar or space in a barcode or dark or light cell in a 2D code has some number of pixels covering each element of the code. The lower the number of pixels covering the smallest bar or cell in a code or minimum bar width, the lower the resulting image resolution of the overall code and the more challenging the decoding process. The lower the image resolution that can be accomodated by decoding software, the greater the overall reading range will be, the higher the print density of codes that can be read and the larger the physical area that can be imaged to read a given code of a given print density. CortexDecoder can read barcodes at an image resolution of 1.5 pixels per minimum bar, stacked 1D barcodes such as PDF417 at 1.6 pixels per minimum bar, Data Matrix at 1.5 pixels per minimum cell size and all other 2D codes such as Aztec Code and QR Code at 1.75 pixels per minimum cell size.
CortexDecoder includes a scanned image capture capability. When this feature is enabled, the last image captured from the camera is available to be saved to the current image file storage location on the device. This is particularly useful for challenging direct part mark applications to determine if the additional settings from the DPM decoder license are needed or if optional checksums might need to be enabled for legacy barcode symbologies when print quality is an issue.
Optimal decode time performance is achieved when a fixed focus mode is used. However, the reading range and the ability to read a densely printed code may be limited for the standard fixed focus settings that are generally available. Setting the focus mode to an auto-focus mode will improve the reading range and the ability to read a densely printed code at some expense of speed performance, depending on the quality of the auto-focusing algorithm performance.
The default image resolution for CortexDecoder is 1280×720. Setting the image resolution to a higher setting will extend the reading range somewhat and possibly improve the reading performance of high density codes with poor print quality at some expense to required decoding times. Setting the image resolution to a lower setting, such as 640×480 will increase decoding speed at the expense of reading range and reading of high density printed codes.
If a front facing camera is available and selectable, CortexDecoder can read codes from this camera. In most cases, the resolution of the camera is limited to 2 megapixels or less and focusing capabilities are not available. Therefore, performance capabilities may be limited when compared to a rear facing camera with focusing capabilities and higher camera resolution.
In its default setting, CortexDecoder automatically discriminates between normal and reverse printed 2D codes such as Data Matrix, QR Code and Aztec Code. This setting can be changed to optimize decoding for either normal or reverse printing, if necessary. To automatically discriminate and read normal and reverse printed 1D codes, the 1D low contrast setting of the decoder must be enabled.
CortexDecoder is capable of consistently reading a wide variety of Direct Part Marks, particularly laser etched marks of sufficient mark quality and mark to substrate contrast consistency across the extent of the mark. In certain cases, particularly where dot peening marking methods or ink jet printing technology is used, enhanced DPM decoding settings may be required. An additional license is required to enable these enhanced DPM settings.
In general, CortexDecoder requires no settings to optimize decoding performance for a particular symbology or to enhance low image resolution decoding capabilities often presented by densely printed codes with minimum bar widths or cell sizes below 10 mils.
A high density or densely printed code is a bar code whose smallest bar or space or minimum bar width is less than 10 thousands of an inch or mils in width. This also applies to a 2D code whose cell size is also less than 10 mils.
The Android SDK is designed to work with Google officially released versions of the Android operating system and is backward compatible to version 4.0.1 or API level 14. 100% compatibility with AOSP versions of Android is not absolutely guaranteed and should be tested for API compatibility. Modifications to the Android SDK may be necessary to support customized AOSP versions of Android.
An API is available (sdkVersion in iOS, getsdkVersion in Android, for example) to access the current SDK version.