利用 Linux 平台下的 Zbar 技术进行条形码扫描(linuxzbar)
Linux平台的Zbar技术可以大大简化我们扫描条形码的任务,它是一个开源,可移植的类库,允许轻松实现条形码识别功能。 它支持条形码类型包括UPC-A,UPC-E,EAN- 8,EAN-13,代码128,CODE39,QRCODE等。
这里有一个简单的使用Linux中的Zbar技术扫描条形码的步骤。
首先,安装好Zbar库:
$ sudo apt-get install libzbar0
其次,配置环境变量:
$ export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
$ export PKG_CONFIG_PATH=/usr/lib64/pkgconfig:$PKG_CONFIG_PATH
然后,利用Zbar库提供的函数开始识别图片吧:
#include
int main (int argc, char **argv){
// create a reader zbar_image_scanner_t *scanner = NULL;
scanner = zbar_image_scanner_create();
// configure the reader zbar_image_scanner_set_config(scanner, 0, ZBAR_CFG_ENABLE, 1);
// scan the image for barcodes int n = zbar_scan_image(image, scanner);
// read results const zbar_symbol_t *symbol = zbar_image_first_symbol(image);
for(; symbol; symbol = zbar_symbol_next(symbol)) { zbar_symbol_type_t typ = zbar_symbol_get_type(symbol);
const char *data = zbar_symbol_get_data(symbol); printf("decoded: %s\n", data);
}
// clean up zbar_image_scanner_destroy(scanner);
zbar_image_destroy(image);
return(0);}
简而言之,原理是通过在Linux平台上使用Zbar库提供的一些函数来实现条形码的扫描,条形码的识别和数据的解析。 它主要支持一些常见的条形码类型,从而可以快速精准地完成对条形码的扫描,从而帮助我们节省测试时间。
总之, Linux 平台上的Zbar 技术可以提高我们对条形码的扫描和解析效率,利用它可以将条形码性能与识别效果实现最大化。