Re: Issue 583 in zxing: Problem reading certain RSS Expanded codes

162 views
Skip to first unread message

zx...@googlecode.com

unread,
Oct 14, 2010, 12:11:24 PM10/14/10
to zx...@googlegroups.com
Updates:
Summary: Problem reading certain RSS Expanded codes
Labels: Type-Defect Priority-Medium

Comment #2 on issue 583 by sro...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

Hmm sounds like a valid issue. There is definitely support for RSS Expanded
-- you can see the unit tests for bits that work. It's complex enough,
enough variations, that there could be a problem with this flavor. I didn't
write that support so am not in a good position to fix it myself.

zx...@googlecode.com

unread,
Feb 13, 2011, 10:39:37 AM2/13/11
to zx...@googlegroups.com

Comment #3 on issue 583 by kberi...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

The main problem with scanning the coupon above is that the symbology is
actually GS1 DataBar (the new name for the RSS symbology family) Expanded
Stacked, which is a multi-layer subset version of Expanded.
"The third type has two variations, a single row variation (GS1
DataBar
Expanded) and a multi-row stacked variation (GS1 DataBar Expanded
Stacked" - ISO/IEC FDIS 24724

So, this brings me to my question/issue. Can the person(s) who did the
initial work on the GS1 DataBar (RSS) decode engine provide an idea of when
the Expanded Stacked decode functionality will work? I am getting ready to
do some research here at Ohio University and need to have the Expanded
Stacked functionality working on both the Android platform and ideally the
iPhone and Blackberry platforms. If funding for your time is necessary so
as to get things done quickly, please contact me at aut...@ohio.edu.

Thanks.

Kevin Berisso
Director, AIDC Lab
Ohio University

zx...@googlecode.com

unread,
Feb 14, 2011, 3:35:45 AM2/14/11
to zx...@googlegroups.com

Comment #4 on issue 583 by sro...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

Like the comment says, it's already supported in theory. It's probably a
bug.
WYSIWYG here, there are not even part-time people working on the project so
you're welcome to work on it and contribute a patch but there is no roadmap
for any work otherwise.

zx...@googlecode.com

unread,
May 13, 2011, 2:50:09 PM5/13/11
to zx...@googlegroups.com
Updates:
Cc: dswit...@google.com

Comment #5 on issue 583 by dswit...@google.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

Issue 828 has been merged into this issue.

zx...@googlecode.com

unread,
May 13, 2011, 2:54:15 PM5/13/11
to zx...@googlegroups.com
Updates:
Status: Accepted

Comment #6 on issue 583 by dswit...@google.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

I've tried scanning the images in this document:

http://www.idautomation.com/barcode/gs1-databar-faq.html

We can handle the first three in Table 1 but not the last. So there are
indeed problems with expanded support. It seems to fail when the code is
both expanded and stacked. For example, in Table 2 we can read the first
image but not the second and third.

If anyone would like to work on this that would be great. Please post a
patch to this issue.

zx...@googlecode.com

unread,
Jul 7, 2011, 3:00:10 AM7/7/11
to zx...@googlegroups.com

Comment #7 on issue 583 by Anth...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

this maybe a bug unsure

Scanned a GS1-128 on the software the Format Type was display as a CODE_128
instead of a GS1_128

http://en.wikipedia.org/wiki/GS1-128

zx...@googlecode.com

unread,
Jul 7, 2011, 3:59:26 AM7/7/11
to zx...@googlegroups.com

Comment #8 on issue 583 by sro...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

GS1-128 is the same as Code 128.

zx...@googlecode.com

unread,
Oct 25, 2011, 12:56:55 AM10/25/11
to zx...@googlegroups.com

Comment #9 on issue 583 by exabr...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

There is a gentleman offering funding to get this issue fixed... I'm not
sure who originally started the implementation of code 128 barcodes, but it
seems like finishing it would be a beneficial thing.

zx...@googlecode.com

unread,
Nov 25, 2011, 4:25:25 PM11/25/11
to zx...@googlegroups.com

Comment #10 on issue 583 by ian.w.da...@gmail.com: Problem reading certain

I would be willing to work on this issue, if someone could provide me
access to the relevant standards doc(s) and/or some pointers on what needs
to be done...

zx...@googlecode.com

unread,
Nov 26, 2011, 6:14:50 AM11/26/11
to zx...@googlegroups.com

Comment #11 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

The spec for RSS barcodes is described in ISO 24724. ISO specs are not free
though so it couldn't be provided to you directly, but can be bought from
ISO. I think the issue lies in RSS Expanded Stacked barcodes.

zx...@googlecode.com

unread,
Feb 1, 2012, 10:24:15 AM2/1/12
to zx...@googlegroups.com

Comment #12 on issue 583 by exabr...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

Actually, I think the GS1 specification is open. It's a substandard of
code128,
But this is from my limited understanding. I'm probably making everything I
just said up.

Here's a document on the symbols contained in GS1-128
http://www.gs1tw.org/twct/gs1w/download/GS_Section_5-3_V7.pdf


Attachments:
GS_Section_5-3_V7.pdf 215 KB

zx...@googlecode.com

unread,
Feb 1, 2012, 12:06:02 PM2/1/12
to zx...@googlegroups.com

Comment #13 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

The original issue is really about a format that is not GS1-128 (which is
Code 128).

zx...@googlecode.com

unread,
Feb 4, 2012, 11:25:09 PM2/4/12
to zx...@googlegroups.com

Comment #14 on issue 583 by toddkeit...@gmail.com: Problem reading certain

I too am doing research and am in need of being able to scan gs1 databar
(formerly rss) expanded stacked barcodes such as those on coupons. Is
there an estimated date that this will be working on the barcode reader
software for android?

zx...@googlecode.com

unread,
Feb 5, 2012, 3:29:58 AM2/5/12
to zx...@googlegroups.com

Comment #15 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

No, there is no roadmap for anything here. I would assume that you need to
supply a patch if you want it done.

zx...@googlecode.com

unread,
Feb 5, 2012, 1:27:17 PM2/5/12
to zx...@googlegroups.com

Comment #16 on issue 583 by ian.w.da...@gmail.com: Problem reading certain

Me and one of the original authors of RSS14 support have started work on
expanded stacked, such as used on newer US coupons. The code works on some
test images, but could use further work to be more robust. I haven't been
able to devote much time to this lately, so I can't make any promises about
when/if I'll be able to do that. But you can see the changes we've made so
far at this address:

https://dev.morelab.deusto.es/trac/rssexpanded_stacked

I'd suggest contacting Pablo Orduna if you want commit access -- he's
maintaining the repo.

zx...@googlecode.com

unread,
Feb 24, 2012, 6:22:24 AM2/24/12
to zx...@googlegroups.com

Comment #17 on issue 583 by baert.xa...@gmail.com: Problem reading certain
Hi everybody,

I'm working on a POS solution using Androïd touchpad. I installed and
configured ZXing to make some tests. All is fine expect this type of
barcode : GS1 Databar expanded.

I read you're working on it, but i'm a bit lost between the different types
of GS1 Databar existing. I found this web site which allows to generate any
types of barcode :
http://barcode.tec-it.com/

After some tests making me losing my eyes, I found that the barcode used on
some products are GS1 Databar Expanded.

An example of the code I encode : 010358378006712021000900000093

You can see the result in the attached file.

Thanks a lot for any help, sorry for my english, it's not my natural
language,


Attachments:
GS1_DataBar_Expanded.jpg 13.1 KB

zx...@googlecode.com

unread,
Feb 25, 2012, 1:30:24 PM2/25/12
to zx...@googlegroups.com

Comment #18 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

I think that is supported but not sure. It may just be hard to scan once it
gets large. I dont think anyone is working on this.

zx...@googlecode.com

unread,
May 20, 2012, 2:57:04 PM5/20/12
to zx...@googlegroups.com

Comment #19 on issue 583 by kimn...@gmail.com: Problem reading certain RSS
Expanded codes
http://code.google.com/p/zxing/issues/detail?id=583

Replying to #17 -

GS1 DataBar Expanded Stacked is the format widely used now on grocery
coupons.

There are examples of all the types at this link:

http://www.gs1.org/barcodes/technical/bar_code_types

Try out this generator for testing:

http://www.idautomation.com/barcode/gs1-databar-coupon.html

Thank you for working on a solution.


zx...@googlecode.com

unread,
Nov 7, 2012, 9:22:53 AM11/7/12
to zx...@googlegroups.com

Comment #20 on issue 583 by Shumovi...@gmail.com: Problem reading certain
@srowen: zxing fails to recognize the barcode attached to comment #17 cos
it is too strict when matching find patterns. Particularly, the next line
http://code.google.com/p/zxing/source/browse/trunk/core/src/com/google/zxing/oned/rss/AbstractRSSReader.java#25

> private static final int MAX_INDIVIDUAL_VARIANCE = (int)
> (PATTERN_MATCH_RESULT_SCALE_FACTOR * 0.4f);

Replacing "0.4" with "0.5" fixes it and zxing returns correct result.

MIN_FINDER_PATTERN_RATIO and MAX_FINDER_PATTERN_RATIO are specified by ISO
spec, but MAX_AVG_VARIANCE and MAX_INDIVIDUAL_VARIANCE are (afaik) more or
less arbitrary. So I think it is safe to do this change assuming that
MAX_AVG_VARIANCE will prevent false positives. What do you think?

zx...@googlecode.com

unread,
Nov 7, 2012, 9:49:09 AM11/7/12
to zx...@googlegroups.com

Comment #21 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

I tried the change, but it makes several unit tests fail, even some of the
RSS ones (so it's not just false positives). You might try that and try
different settings -- maybe you'll find a more optimal setting or a bug.
yes the value is just determined by a bit of empirical testing.

zx...@googlecode.com

unread,
Nov 7, 2012, 1:07:17 PM11/7/12
to zx...@googlegroups.com

Comment #22 on issue 583 by Shumovi...@gmail.com: Problem reading certain
@srowen, please ignore my prev comment, I was wrong. Sorry for disturbing
you.

What about GS1 expanded stacked barcodes? Right now zxing doesn't supports
it. There is already zxing fork that supports them (see comment #16). It
looks abandoned (the last commit -- 11 months ago). But the implementation
is reasonable. The only issue I see -- it doesn't check find patters
sequence, but it can be fixed easily. What about merging it? It can be done
in a separate branch, or we can make it a separate reader for now.
I need to decode stacked barcodes, but can't rely on abandoned fork. I will
start working on making it production-ready if it will be merged.

zx...@googlecode.com

unread,
Nov 7, 2012, 1:42:46 PM11/7/12
to zx...@googlegroups.com

Comment #23 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

I'm up for committing it if it works reasonably at all. I expect it would
be worth dusting off and adding to the project -- I would double-check that
it is Apache licensed. It should slot in to the project just fine since it
started from the project as a starting point.

zx...@googlecode.com

unread,
Nov 11, 2012, 6:27:31 AM11/11/12
to zx...@googlegroups.com

Comment #24 on issue 583 by Shumovi...@gmail.com: Problem reading certain
@srowen, did you have a chance to try it? The code is Apache licensed.

It is trivial to merge -- there were only two small changes in
RSSExpandedReader since the last sync (r2098).
It past all the blackbox tests.
To make unit tests work, you need to remove all asserts on "maybeLast" from
RSSExpandedInternalTestCase.java (they are not relevant any more,) and add
the next lines to RSSExpandedReader.java at line 170:

> if (firstCharacter == null)
> return false;

I have a set of patches to make it more robust. But the original code
should be merged first.

Can I do anything else to make it merged into the main repo? Please let me
know if there is any issue need to be solved before you can merge it.
Anyway, we can revert back at any moment if things will go wrong.


zx...@googlecode.com

unread,
Nov 11, 2012, 7:32:57 AM11/11/12
to zx...@googlegroups.com

Comment #25 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

No, I have not done anything here. Do you have a patch? yes I'd look at
those.

zx...@googlecode.com

unread,
Nov 11, 2012, 7:45:59 AM11/11/12
to zx...@googlegroups.com

Comment #26 on issue 583 by Shumovi...@gmail.com: Problem reading certain
Please hold on.
I just got a write access to rssexpanded repo. I'll sync it with the latest
zxing and continue working on it. I'll let you know when I feel it is ready
for merging.

zx...@googlecode.com

unread,
Nov 11, 2012, 9:05:57 AM11/11/12
to zx...@googlegroups.com

Comment #27 on issue 583 by Shumovi...@gmail.com: Problem reading certain
I finished updating rssexpanded repo. Please consider merging it.
Starting from rev 13 I'll commit my own improvements. I'm actually not
familiar with java and zxing coding standards, so please review carefully
(or just merge rev 12 and ignore successive commits for now.)
Please let me know if I missed something.

zx...@googlecode.com

unread,
Nov 11, 2012, 12:27:10 PM11/11/12
to zx...@googlegroups.com

Comment #28 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

I wouldn't worry much about the coding standards as that is easily fixed on
my IDE. Do you have even a rough patch? It's not quite possible to merge
from another SVN repo, and if you already have a rough cut of the diff to
the project head that will be close enough.

zx...@googlecode.com

unread,
Nov 12, 2012, 4:10:58 AM11/12/12
to zx...@googlegroups.com

zx...@googlecode.com

unread,
Nov 12, 2012, 10:09:58 AM11/12/12
to zx...@googlegroups.com
Updates:
Status: Fixed
Owner: srowen

Comment #30 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

Superb -- that's good work from Pablo et al and good job on the port. I
tweaked it slightly and committed.

zx...@googlecode.com

unread,
Nov 12, 2012, 10:27:40 AM11/12/12
to zx...@googlegroups.com

Comment #31 on issue 583 by pablo.or...@deusto.es: Problem reading certain
Great!!! And thank you, but the credits are mainly for Ian W. Davis and
Yuras Shumovich; at Deusto we only made small changes and repo management.

zx...@googlecode.com

unread,
Nov 12, 2012, 10:29:21 AM11/12/12
to zx...@googlegroups.com

Comment #32 on issue 583 by srowen: Problem reading certain RSS Expanded
codes
http://code.google.com/p/zxing/issues/detail?id=583

Got it, I will add Ian's name to AUTHORS to reflect that

Reply all
Reply to author
Forward
0 new messages