Hello,
I’m evaluating the Java BarCode library to recognize DataMatrix barcodes. To that end I requested and got an evaluation license.
My first try simply produces wrong results. The code below mimics that of the samples and the attached .png image is present in the right folder.
package com.aspose.barcode.samples;
import com.aspose.barcode.License;
import com.aspose.barcoderecognition.BarCodeReadType;
import com.aspose.barcoderecognition.BarCodeReader;
public class LWDataMatrixTest {
public static void main(String[] args) throws Exception {
License lic = new License();
lic.setLicense(com.aspose.barcode.samples.Constants.LICENSE_FULL_PATH);
BarCodeReader reader =
new BarCodeReader(com.aspose.barcode.samples.Constants.GENERATED_IMAGES_PATH + “test-0.png”,
BarCodeReadType.getDataMatrix());
while (reader.read()) {
System.out.println(reader.getCodeText());
}
}
}
There are 11 codes on the low quality image. I’m not expecting all 11 to be recognized. However, I get 6 strings not reproduced here for they are incredibly long, about 680 characters, no one of which is correct!
Some suggestion?
Thanks
Mario Rossi
Hi Mario,
Hi Mario,
- Could you please state, what compaction mode (Binary/Text) have you used to generate your provided DataMatrix barcode symbols?
- Please provide the code text for all the symbols in your provided sample.
Hello,
first, it’s Mario not Moris (copy and paste might help)
The 11 barcodes were encoded with the following strings, including the trailing semicolon.
I was using a library which automatically decides the best encoding depending on the contents of the strings, so I don’t know which mode the library chose, if ASCII, BASE256 or whatever.
0.6 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
0.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.2 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.4 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.6 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
2.4 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
2.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
3.2 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
3.6 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
Hope this helps
Mario Rossi
mrossi:
first, it's Mario not Moris (copy and paste might help)
1.6 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
1.8 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
2.4 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
2.8 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
3.2 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
3.6 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@
Hello,
in the meantime I tried 2 other recognition products, too.
The results agree with yours but there are 2 more
1 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.2 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
1.4 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
1.6 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
1.8 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
2.4 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
2.8 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
3.2 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
3.6 // CN=ATS-095-555;DOC=70b4c229-@6@6-11@@-8@80-@8@@@8@18@@@;PG=1;
So, there is certainly a problem with the DataMatrix generator we are using (except for the first code), but at least your results and that of other recognition software match.
However, this does not explain why my experiment with your library produces strings that are 680 characters long! Why do I not obtain the results you found? Are you using a more recent version of the library than 4.5.0?
Unfortunately, today I’ve no time for further experiments, I will retry tomorrow, so please stay tuned.
Thanks
Mario Rossi
Hi Mario,
Hello Babar,
as a test suite, find attached 3 .png of different qualities.
They all encode the following strings in different sizes, once as BASE256 and once as ASCII, as indicated in the captions, for a total of 20 barcodes.
3.6 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
3.2 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
2.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
2.4 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.6 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.4 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1.2 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
1 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
0.8 // CN=ATS-095-555;DOC=70b4c229-e6c6-11df-8e80-c8bcc8d18abf;PG=1;
Please check with your development version of the recognizer and report your results.
Thanks
Mario Rossi
Hi Mario,
Hi Babar,
as the saying goes: “no news, good news”. Still, I’m a little bit worried about not hearing anything from your side for almost a week.
Regards
Mario Rossi
Hi Mario,
- test-hi.png: All 20 barcodes got recognized with correct CodeText
- test-med.png: All barcodes from 1.2 to 3.6 got recognized with correct CodeText.
- test-low.png: Only 1.2, 1.6 and 1.8 got recognized. Among these, 1.2 barcodes gave incorrect CodeText in 2nd iteration.
Hello,
nice to hear that many codes get recognized correctly. What’s peculiar, however, is that the larger codes in test-low.png are not recognized and that only 1.2, 1.6 and 1.8 are identified. I would have expected that codes with larger “pixels” were easier to recognized than those with finer structure.
Since my evaluation license will expire in less than 2 weeks, it would be helpful either:
- to get a newer release that I can test in the remaining time before expiration of the license
- or to have the chance to obtain another evaluation license once the newer release will be published
Mario Rossi
mrossi:
- to get a newer release that I can test in the remaining time before expiration of the license
mrossi:
- or to have the chance to obtain another evaluation license once the newer release will be published
Regards,
The issues you have found earlier (filed as BARCODJAVA-33156) have been fixed in this update.
This message was posted using Notification2Forum from Downloads module by Aspose Notifier.