zxing.net обнаруживает текст в виде штрих-кода - PullRequest
0 голосов
/ 06 сентября 2018

Я использую ZXing.Net для извлечения штрих-кодов из изображений, полученных с сетевого сканера.

Однако ZXing иногда обнаруживает часть текста в виде штрих-кода.

Вот пример:

Sample scan

Красные линии (приблизительно) - это обнаруженные штрих-коды (выдержка из возврата ResultingPoints методом DecodeMultiple).

В этом примере обнаружены следующие штрих-коды: 0, Marqueur de debut de scan и 07493835. Ожидаются первые два, но не последний (07493835).

Есть ли способ исправить это поведение?

К вашему сведению, вот как я называю библиотеку:

    public static BarCodeInfo[] ScanBarCode(Bitmap source)
    {
        var barcodeReader = new BarcodeReader();
        barcodeReader.Options.TryHarder = true;

        var result = barcodeReader.DecodeMultiple(source);
        if (result != null)
        {
            return result.Select(r =>new BarCodeInfo(r.Text, r.ResultPoints)).ToArray();
        }
        else
        {
            Debug.WriteLine("No barcode found");
            return new BarCodeInfo[0];
        }
    }

public class BarCodeInfo
{
    private string m_Text;
    private ResultPoint[] m_ResultPoints;

    public BarCodeInfo(string text, ResultPoint[] resultPoints)
    {
        this.m_Text = text;
        this.m_ResultPoints = resultPoints;
    }

    public string Text => m_Text;
    public ResultPoint[] ResultPoints => m_ResultPoints;
}

Без установки TryHarder в true штрих-коды не обнаруживаются в моих изображениях (которые на самом деле являются страницами формата A4).

...