/ / zxing CODE_39-बारकोड - zxing की गलत स्थिति देता है

zxing CODE_39-बारकोड - zxing की गलत स्थिति देता है

मैं वेबकैम छवियों में बारकोड खोजने के लिए zXing का उपयोग कर रहा हूं:

http://s21.postimg.org/vxdrx07av/zxing.png

zxing बारकोड विश्वसनीय पाता है और सूचना को निकालता है। यह बारकोड की स्थिति दो बिंदुओं (x1, y) (x2, y) के रूप में भी लौटाता है (दोनों बिंदुओं के लिए समान मान क्योंकि यह स्कैनलाइन (मुझे लगता है) का उपयोग करता है)।

यदि मैं इन बिंदुओं को साजिश करता हूं, तो वाई-मान ठीक है, पहला (बाएं) एक्स-मान अधिकांश छवियों में थोड़ा सा सही है और दायां अंत बिंदु दूर है। (उदाहरण छवि देखें)।

मैं कुछ पोस्टप्रोकैसिंग की योजना बना रहा हूं, इसलिए मुझे इसकी आवश्यकता हैबारकोड की स्थिति। क्या किसी ने इस व्यवहार को पहले देखा है? मैं नहीं देखता कि प्रतिपादन के दौरान गलती कैसे हो सकती है और कमांड लाइन डेमो एप्लिकेशन में अंक निकाले जाते हैं।

// मैंने बस एक EAN_13 पढ़ने की कोशिश की और सही बारकोड स्थान मिला। छवि में कोड CODE_39 है इसलिए इस डिटेक्टर के साथ कोई समस्या हो सकती है।

// संपादित 2: (मूल छवि और मार्कर के साथ एक टिप्पणी में हैं)

मैं क्यूटी रैपर का उपयोग करता हूं और एंडपॉइंट्स को निकालने के रूप में (qzxing.cpp l। 140ff)

    res = ((MultiFormatReader*)decoder)->decode(ref, hints);

if (pts){
pts->clear();
for (int j = 0; j < res->getResultPoints()->size(); j++) {
cout << "  Point[" << j <<  "]: "
<< res->getResultPoints()[j]->getX() << " "
<< res->getResultPoints()[j]->getY() << endl;
pts->push_back(QPointF(res->getResultPoints()[j]->getX(),res->getResultPoints()[j]->getY()));
}
}

यदि मैं एक ईएएन 14-बारकोड निकालता हूं, तो एंडपॉइंट्स वास्तव में एंडमार्कर्स (दो छोटे सलाखों) के भीतर होते हैं, इसलिए मुझे लगता है कि मैं सही ढंग से बिंदुओं को पढ़ और कल्पना करता हूं।

उत्तर:

जवाब के लिए 0 № 1

अच्छा है, वह एक बग है। इसे अब सिर में तय किया जा रहा है। जवाब यह है कि यह एक बग है: https://code.google.com/p/zxing/issues/detail?id=1776