code_scanner

备注

当前模块只适用于 CoreS3 主机

code_scanner 模块用于扫码识别

Micropython 案例

二维码识别

 1# SPDX-FileCopyrightText: 2024 M5Stack Technology CO LTD
 2#
 3# SPDX-License-Identifier: MIT
 4import os, sys, io
 5import M5
 6from M5 import *
 7import camera
 8import code_scanner
 9import image
10
11
12img = None
13qrcode = None
14
15
16def setup():
17    global img, qrcode
18    M5.begin()
19    Widgets.fillScreen(0x222222)
20    camera.init(pixformat=camera.RGB565, framesize=camera.QVGA)
21    camera.set_hmirror(False)
22
23
24def loop():
25    global img, qrcode
26    M5.update()
27    img = camera.snapshot()
28    qrcode = code_scanner.find_qrcodes(img)
29    if qrcode:
30        print(qrcode.payload())
31        print(qrcode.type_name())
32        img.draw_string(10, 10, str(qrcode.payload()), color=0x3333FF, scale=2)
33    M5.Lcd.show(img, 0, 0, 320, 240)
34
35
36if __name__ == "__main__":
37    try:
38        setup()
39        while True:
40            loop()
41    except (Exception, KeyboardInterrupt) as e:
42        try:
43            from utility import print_error_msg
44
45            print_error_msg(e)
46        except ImportError:
47            print("please update to latest firmware")

UiFlow2 应用示例

二维码识别

qrcode_detect_example.png

qrcode_detect_example.m5f2

Methods

code_scanner.find_qrcodes(img: image.Image) image.qrcode

二维码识别

  • img 需要识别的图像

返回 image.qrcode 对象

UIFlow2.0

find_qrcodes.png

class image.QRCode

QRCode QRCode 对象由 code_scanner.find_qrcodes(img: image.Image) 返回。

code_scanner.payload() str

返回二维码的有效载荷字符串

UIFlow2.0

payload.png

code_scanner.type_name() str

返回二维码的类型

UIFlow2.0

type_name.png