[zbar-commits] push rev [351]: Codabar reliability enhancements
Status: Beta
Brought to you by:
spadix
From: <sp...@us...> - 2012-02-22 18:31:44
|
changeset: 351:12f07c808986 user: sp...@us... date: Sun Apr 17 20:02:05 2011 -0700 details: http://zbar.hg.sourceforge.net:8000/hgroot/zbar/zbarzbar/rev/12f07c808986 description: Codabar reliability enhancements - fix missing check - require minimum quality - bump default uncertainty diffstat: ChangeLog | 4 ++++ zbar/decoder/codabar.c | 4 ++++ zbar/img_scanner.c | 19 ++++++++++++------- 3 files changed, 20 insertions(+), 7 deletions(-) diffs (69 lines): diff -r e70d560835cd -r 12f07c808986 ChangeLog --- a/ChangeLog Thu Apr 14 17:16:48 2011 -0700 +++ b/ChangeLog Sun Apr 17 20:02:05 2011 -0700 @@ -1,4 +1,8 @@ current: + * Codabar reliability enhancements + - fix missing check + - require minimum quality + - bump default uncertainty * tweak Codabar bar/space ratio validation * finish Codabar support for python, perl, java and iPhone interfaces - reduce Codabar uncertainty to minimum diff -r e70d560835cd -r 12f07c808986 zbar/decoder/codabar.c --- a/zbar/decoder/codabar.c Thu Apr 14 17:16:48 2011 -0700 +++ b/zbar/decoder/codabar.c Sun Apr 17 20:02:05 2011 -0700 @@ -172,6 +172,10 @@ dbprintf(2, " [2space inner ratios]"); return(-1); } + if((ispc >> 8) == 4) { + dbprintf(2, " [space comb]"); + return(-1); + } ispc >>= 10; dbprintf(2, "(%d)", ispc); unsigned ic = ispc * 4 + ibar; diff -r e70d560835cd -r 12f07c808986 zbar/img_scanner.c --- a/zbar/img_scanner.c Thu Apr 14 17:16:48 2011 -0700 +++ b/zbar/img_scanner.c Sun Apr 17 20:02:05 2011 -0700 @@ -493,7 +493,7 @@ zbar_image_scanner_set_config(iscn, ZBAR_CODE128, ZBAR_CFG_UNCERTAINTY, 0); zbar_image_scanner_set_config(iscn, ZBAR_CODE93, ZBAR_CFG_UNCERTAINTY, 0); zbar_image_scanner_set_config(iscn, ZBAR_CODE39, ZBAR_CFG_UNCERTAINTY, 0); - zbar_image_scanner_set_config(iscn, ZBAR_CODABAR, ZBAR_CFG_UNCERTAINTY, 0); + zbar_image_scanner_set_config(iscn, ZBAR_CODABAR, ZBAR_CFG_UNCERTAINTY, 1); zbar_image_scanner_set_config(iscn, ZBAR_COMPOSITE, ZBAR_CFG_UNCERTAINTY, 0); return(iscn); } @@ -816,8 +816,11 @@ for(symp = &syms->head; *symp; ) { zbar_symbol_t *sym = *symp; if((sym->type < ZBAR_COMPOSITE && sym->type > ZBAR_PARTIAL) || - (sym->type == ZBAR_DATABAR || sym->type == ZBAR_DATABAR_EXP)) { - if(filter && sym->quality < 4) { + sym->type == ZBAR_DATABAR || + sym->type == ZBAR_DATABAR_EXP || + sym->type == ZBAR_CODABAR) + { + if((sym->type == ZBAR_CODABAR || filter) && sym->quality < 4) { /* recycle */ *symp = sym->next; syms->nsyms--; @@ -825,10 +828,12 @@ _zbar_image_scanner_recycle_syms(iscn, sym); continue; } - else if(sym->type > ZBAR_EAN5) - nean++; - else - naddon++; + else if(sym->type < ZBAR_COMPOSITE) { + if(sym->type > ZBAR_EAN5) + nean++; + else + naddon++; + } } symp = &sym->next; } |