Использование ZXing в Unity для поиска шаблона положения QRcode - PullRequest
0 голосов
/ 28 апреля 2018

В качестве заголовка я хочу использовать шаблон определения местоположения.

Пример

Я хочу знать, как получить координату x y этого шаблона, когда я получил новый QR-код с веб-камеры.
Как мне реализовать это Unity (C #)?

1 Ответ

0 голосов
/ 28 апреля 2018

Используйте следующий код для декодирования ZXing DLL.

private WebCamTexture camTexture;
private Rect screenRect;
void Start()
{
    screenRect = new Rect(0, 0, Screen.width, Screen.height);
    camTexture = new WebCamTexture();
    camTexture.requestedHeight = Screen.height;
    camTexture.requestedWidth = Screen.width;
    if (camTexture != null)
    {
        camTexture.Play();
    }
}

void OnGUI()
{
    // drawing the camera on screen
    GUI.DrawTexture(screenRect, camTexture, ScaleMode.ScaleToFit);
    // do the reading — you might want to attempt to read less often than you draw on the screen for performance sake
    try
    {
        IBarcodeReader barcodeReader = new BarcodeReader();
        // decode the current frame
        var result = barcodeReader.Decode(camTexture.GetPixels32(), camTexture.width, camTexture.height);
        if (result != null)
        {
            Debug.Log("DECODED TEXT FROM QR: " +result.Text);
        }
        ResultPoint[] point = result.ResultPoints;
        Debug.Log("X: " + point[0].X + " Y: " + point[1].Y);
    }
    catch (Exception ex) { Debug.LogWarning(ex.Message); }
}

Я взял ссылку от ZXing dll link . В файле readme также есть генератор кода qr. Пройдите через readme. Его почти то же самое ResultPoint[] point = result.ResultPoints; было добавлено к нему. Это дает положение 3 углов изображения. Очевидно, вам нужно будет добавить ZXing.dll в папку плагинов в разделе «Активы». Надеюсь, это поможет получить результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...