From 66b4dbe2a13fee7868f737ca73f1559920d098dd Mon Sep 17 00:00:00 2001 From: Trey Moen <50057480+greatgitsby@users.noreply.github.com> Date: Tue, 8 Sep 2026 21:23:55 -0700 Subject: [PATCH] qrcode: add QR decoder (#38814) * qrcode: add QR decoder Decodes a QR code from a grayscale image or a module matrix: adaptive binarization, finder pattern search by run ratios, perspective sampling with alignment pattern refinement, format info, unmasking, block de-interleaving, Reed-Solomon correction, and numeric, alphanumeric, byte (with ECI), and Kanji segments. Fixtures are packed matrices from python-qrcode 8.2 covering every version and level, plus Segno 1.6.6 matrices for the ECI cases. * qrcode: tune decoder for the device Measured on a comma mici with real cabin frames downsampled to 672x380, the size the eSIM screen scans at. Per frame: 30 ms -> 8 ms with no code in view, 42 ms -> 13 ms with a code. - binarize: fixed two-radius fill from one integral image instead of an iterative outward fill (a dark cabin is almost all flat tiles), tile stats on a contiguous layout, flat tiles decided whole so sensor noise cannot become speckle, uint8 threshold compare - finder search: scan every 4th row, build column runs only at candidate columns - alignment search starts at a 2-module radius - Reed-Solomon syndromes through table lookups, placement order cached * qrcode: simplify decoder Fold the function-module mask into _data_coords and the format coordinates into _read_format, evaluate masks directly on the data coordinates, compact the ECI, numeric, and alphanumeric parsing, and flatten the retry loop in decode. No behavior change. --- openpilot/common/qrcode.py | 498 +++++++++++++++++- openpilot/common/tests/fixtures/qrcode_0.npz | Bin 0 -> 67335 bytes openpilot/common/tests/fixtures/qrcode_1.npz | Bin 0 -> 64985 bytes openpilot/common/tests/fixtures/qrcode_2.npz | Bin 0 -> 65540 bytes openpilot/common/tests/fixtures/qrcode_3.npz | Bin 0 -> 65135 bytes .../common/tests/fixtures/qrcode_eci.npz | Bin 0 -> 1810 bytes openpilot/common/tests/test_qrcode.py | 169 ++++++ 7 files changed, 666 insertions(+), 1 deletion(-) create mode 100644 openpilot/common/tests/fixtures/qrcode_0.npz create mode 100644 openpilot/common/tests/fixtures/qrcode_1.npz create mode 100644 openpilot/common/tests/fixtures/qrcode_2.npz create mode 100644 openpilot/common/tests/fixtures/qrcode_3.npz create mode 100644 openpilot/common/tests/fixtures/qrcode_eci.npz diff --git a/openpilot/common/qrcode.py b/openpilot/common/qrcode.py index 634beb94e0..895daece39 100644 --- a/openpilot/common/qrcode.py +++ b/openpilot/common/qrcode.py @@ -1,4 +1,7 @@ -"""Small QR encoder for the UI's byte-mode, error-correction-level-L codes.""" +"""QR code encoding, decoding, and UI textures.""" + +import functools +import itertools import numpy as np import pyray as rl @@ -241,3 +244,496 @@ def make_texture(data: str, inverted: bool = False) -> rl.Texture: rl_image.mipmaps = 1 rl_image.format = rl.PixelFormat.PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 return rl.load_texture_from_image(rl_image) + + +# ---- Symbol structure for decoding ---- + + +class QRError(Exception): + pass + + +_LEVELS = (1, 0, 3, 2) # format info level bits -> column in _EC + +_MASKS = [ + lambda i, j: (i + j) % 2 == 0, + lambda i, j: i % 2 == 0, + lambda i, j: j % 3 == 0, + lambda i, j: (i + j) % 3 == 0, + lambda i, j: (i // 2 + j // 3) % 2 == 0, + lambda i, j: (i * j) % 2 + (i * j) % 3 == 0, + lambda i, j: ((i * j) % 2 + (i * j) % 3) % 2 == 0, + lambda i, j: ((i + j) % 2 + (i * j) % 3) % 2 == 0, +] + +_ALIGNMENT = np.ones((5, 5), dtype=bool) +_ALIGNMENT[1:4, 1:4] = False +_ALIGNMENT[2, 2] = True + + +def _gf_inv(a: int) -> int: + return _EXP[-_LOG[a] % 255] + + +@functools.lru_cache +def _data_coords(version: int) -> tuple[np.ndarray, np.ndarray]: + """(rows, cols) of the data and error correction modules in placement order: two-column zigzag from the right.""" + dim = version * 4 + 17 + func = np.zeros((dim, dim), dtype=bool) # finder, timing, alignment, format, and version modules + func[:9, :9] = func[:9, dim - 8:] = func[dim - 8:, :9] = True + func[6, :] = func[:, 6] = True + positions = _alignment_positions(version) + for r, c in itertools.product(positions, positions): + if (r, c) not in ((6, 6), (6, dim - 7), (dim - 7, 6)): + func[r - 2:r + 3, c - 2:c + 3] = True + if version >= 7: + func[:6, dim - 11:dim - 8] = func[dim - 11:dim - 8, :6] = True + ys = np.arange(dim) + rows, cols = [], [] + # the vertical timing column is skipped, so the pairs left of it start at odd columns + for i, right in enumerate(col if col > 6 else col - 1 for col in range(dim - 1, 0, -2)): + r = np.repeat(ys[::-1] if i % 2 == 0 else ys, 2) + c = np.tile((right, right - 1), dim) + keep = ~func[r, c] + rows.append(r[keep]) + cols.append(c[keep]) + return np.concatenate(rows), np.concatenate(cols) + + +# ---- Matrix decoding ---- + + +def _poly_eval(p: list[int], x: int) -> int: + # p is highest degree first + y = 0 + for c in p: + y = _multiply(y, x) ^ c + return y + + +_EXP_TABLE = np.array(_EXP) +_LOG_TABLE = np.array([_LOG.get(v, 0) for v in range(256)]) + + +def _syndromes(msg: list[int], nsym: int) -> list[int]: + """syn[i] = msg(alpha^i), msg highest degree first.""" + m = np.array(msg) + exponents = np.arange(nsym)[:, None] * (len(msg) - 1 - np.arange(len(msg))) + return np.bitwise_xor.reduce(_EXP_TABLE[(_LOG_TABLE[m] + exponents) % 255] * (m != 0), axis=1).tolist() + + +def _rs_correct(msg: list[int], nsym: int) -> list[int]: + """Corrects up to nsym // 2 errors in a Reed-Solomon codeword, in place.""" + n = len(msg) + syn = _syndromes(msg, nsym) + if not any(syn): + return msg + + # Berlekamp-Massey, sigma is lowest degree first + sigma, prev, L, m, b = [1], [1], 0, 1, 1 + for r in range(nsym): + d = syn[r] + for i in range(1, L + 1): + d ^= _multiply(sigma[i], syn[r - i]) + if d == 0: + m += 1 + continue + coef = _multiply(d, _gf_inv(b)) + shifted = [0] * m + prev + saved = sigma[:] + sigma = sigma + [0] * max(0, len(shifted) - len(sigma)) + for i, c in enumerate(shifted): + sigma[i] ^= _multiply(coef, c) + if 2 * L <= r: + L, prev, b, m = r + 1 - L, saved, d, 1 + else: + m += 1 + sigma = sigma[:L + 1] + if 2 * L > nsym: + raise QRError("too many errors") + + # Chien search: codeword position p has locator alpha^(n-1-p) + positions = [p for p in range(n) if _poly_eval(sigma[::-1], _EXP[(p - n + 1) % 255]) == 0] + if len(positions) != L: + raise QRError("error locator mismatch") + + # solve syn[i] = sum_k e_k * X_k^i for the magnitudes e_k + xlog = [(n - 1 - p) % 255 for p in positions] + A = [[_EXP[(xlog[k] * i) % 255] for k in range(L)] + [syn[i]] for i in range(L)] + for col in range(L): + piv = next((r for r in range(col, L) if A[r][col]), None) + if piv is None: + raise QRError("singular") + A[col], A[piv] = A[piv], A[col] + inv = _gf_inv(A[col][col]) + A[col] = [_multiply(inv, v) for v in A[col]] + for r in range(L): + if r != col and A[r][col]: + f = A[r][col] + A[r] = [a ^ _multiply(f, c) for a, c in zip(A[r], A[col], strict=True)] + for k, p in enumerate(positions): + msg[p] ^= A[k][L] + + if any(_syndromes(msg, nsym)): + raise QRError("uncorrectable") + return msg + + +def _read_format(m: np.ndarray) -> int: + """Returns the closest format info (level bits << 3 | mask) from either copy.""" + dim = m.shape[0] + copies = ([(8, i) for i in range(6)] + [(8, 7), (8, 8), (7, 8)] + [(5 - i, 8) for i in range(6)], + [(dim - 1 - i, 8) for i in range(7)] + [(8, dim - 8 + i) for i in range(8)]) # (row, col), msb first + candidates = [] + for coords in copies: + bits = int("".join(str(int(m[r, c])) for r, c in coords), 2) + candidates += [((bits ^ f).bit_count(), i) for i, f in enumerate(_FORMATS)] + distance, fmt = min(candidates) + if distance > 3: + raise QRError("bad format info") + return fmt + + +_ALNUM = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:" + +_ECI_ENCODINGS = { + 0: "cp437", 2: "cp437", 1: "iso8859-1", 3: "iso8859-1", + **{i + 2: f"iso8859-{i}" for i in range(2, 17) if i != 12}, + 20: "shift_jis", 21: "cp1250", 22: "cp1251", 23: "cp1252", 24: "cp1256", + 25: "utf-16-be", 26: "utf-8", 27: "ascii", 170: "ascii", 28: "big5", 29: "gb18030", 30: "euc_kr", +} + + +class _Bits: + def __init__(self, data: list[int]): + self._value = int.from_bytes(bytes(data), "big") + self.remaining = len(data) * 8 + + def read(self, n: int) -> int: + if n > self.remaining: + raise QRError("bitstream underflow") + self.remaining -= n + return self._value >> self.remaining & (1 << n) - 1 + + def read_below(self, n: int, limit: int) -> int: + v = self.read(n) + if v >= limit: + raise QRError("value out of range") + return v + + +def _parse_data(data: list[int], version: int) -> str: + bits = _Bits(data) + out: list[str] = [] + encoding = None + band = 0 if version <= 9 else 1 if version <= 26 else 2 + while bits.remaining >= 4: + mode = bits.read(4) + if mode == 0: + break + if mode == 7: # ECI character set assignment + first = bits.read(8) + extra = 0 if first < 0x80 else 8 if first < 0xC0 else 16 if first < 0xE0 else -1 # 1, 2, or 3 byte assignment + if extra < 0: + raise QRError("bad ECI assignment") + assignment = (first & 0x7F >> extra // 8) << extra | bits.read(extra) + encoding = _ECI_ENCODINGS.get(assignment) + if encoding is None: + raise QRError(f"unsupported ECI assignment {assignment}") + elif mode == 1: + n = bits.read((10, 12, 14)[band]) + while n > 0: + k = min(n, 3) # 3 digits in 10 bits, the last 2 or 1 in 7 or 4 + out.append(f"{bits.read_below((4, 7, 10)[k - 1], 10 ** k):0{k}d}") + n -= k + elif mode == 2: + n = bits.read((9, 11, 13)[band]) + while n > 0: + k = min(n, 2) # 2 characters in 11 bits, a last one in 6 + v = bits.read_below((6, 11)[k - 1], 45 ** k) + out.append(_ALNUM[v // 45] * (k - 1) + _ALNUM[v % 45]) + n -= k + elif mode == 4: + n = bits.read((8, 16, 16)[band]) + segment = bytes(bits.read(8) for _ in range(n)) + try: + out.append(segment.decode(encoding or "utf-8")) + except UnicodeDecodeError as e: + if encoding is not None: + raise QRError("invalid ECI byte segment") from e + out.append(segment.decode("latin-1")) + elif mode == 8: + n = bits.read((8, 10, 12)[band]) + for _ in range(n): + v = bits.read(13) + c = (v // 0xC0) << 8 | v % 0xC0 + c += 0x8140 if c < 0x1F00 else 0xC140 + try: + out.append(c.to_bytes(2, "big").decode("shift_jis")) + except UnicodeDecodeError as e: + raise QRError("invalid Kanji character") from e + else: + raise QRError(f"unsupported mode {mode}") + return "".join(out) + + +def decode_matrix(m: np.ndarray) -> str: + """Decodes a square boolean module matrix (True = dark) without a quiet zone.""" + dim = m.shape[0] + if m.shape != (dim, dim) or dim % 4 != 1 or not 21 <= dim <= 177: + raise QRError("bad matrix size") + version = (dim - 17) // 4 + + fmt = _read_format(m) + level = _LEVELS[fmt >> 3] + rows, cols = _data_coords(version) + bits = m[rows, cols] ^ _MASKS[fmt & 7](rows, cols) + codewords = np.packbits(bits[:len(bits) // 8 * 8]).tolist() + + ec, _ = _EC[version - 1][level] + lens = _block_lengths(version, level) + blocks = [[0] * (n + ec) for n in lens] + for (b, i), codeword in zip(_interleaved(version, level), codewords, strict=True): + blocks[b][i] = codeword + + data: list[int] = [] + for block, n in zip(blocks, lens, strict=True): + data += _rs_correct(block, ec)[:n] + return _parse_data(data, version) + + +# ---- Image decoding ---- + + +def _box_sums(a: np.ndarray, radii: tuple[int, ...]) -> list[np.ndarray]: + """Sums over (2r + 1)^2 neighborhoods of the last two axes, edge padded, from one integral image.""" + P = max(radii) + lead = [(0, 0)] * (a.ndim - 2) + cs = np.pad(np.cumsum(np.cumsum(np.pad(a, lead + [(P, P), (P, P)], mode="edge"), -2), -1), lead + [(1, 0), (1, 0)]) + H, W = a.shape[-2:] + out = [] + for r in radii: + lo, hi = P - r, P + r + 1 + out.append(cs[..., hi:hi + H, hi:hi + W] - cs[..., lo:lo + H, hi:hi + W] - cs[..., hi:hi + H, lo:lo + W] + cs[..., lo:lo + H, lo:lo + W]) + return out + + +def _binarize(gray: np.ndarray) -> np.ndarray: + """Adaptive threshold: each pixel against the mean of the surrounding tiles that have contrast.""" + h, w = gray.shape + if h < 21 or w < 21: + raise QRError("image too small") + B = max(8, min(h, w) // 128 * 2) + H, W = -(-h // B), -(-w // B) + padded = np.pad(gray, ((0, H * B - h), (0, W * B - w)), mode="edge") + # block statistics from a subsample are plenty + sub = np.ascontiguousarray(padded[::2, ::2].reshape(H, B // 2, W, B // 2).transpose(0, 2, 1, 3)).reshape(H, W, -1) + blocks = sub.sum(axis=2, dtype=np.uint32) / sub.shape[2] + known = sub.max(axis=2) - sub.min(axis=2) >= 32 + # Flat tiles cannot estimate their own threshold: use the tiles with contrast nearby, then + # further out, then the global midrange. A flat tile is then all dark or all light. + est = np.full((H, W), (blocks.min() + blocks.max()) / 2) + filled = np.zeros((H, W), dtype=bool) + for total, count in _box_sums(np.stack((known * blocks, known.astype(float))), (2, 6)): + fill = ~filled & (count > 0) + est[fill] = total[fill] / count[fill] + filled |= fill + thr = np.where(known, np.minimum(est, 254) + 1, np.where(blocks <= est, 255, 0)).astype(np.uint8) + return (padded.reshape(H, B, W, B) < thr[:, None, :, None]).reshape(H * B, W * B)[:h, :w] + + +class _Runs: + """Run-length table of a padded, flattened binary image with a per-pixel run index.""" + + def __init__(self, padded: np.ndarray): + self.flat = padded.ravel() + self.lines, self.stride = padded.shape + change = self.flat[1:] != self.flat[:-1] + self.starts = np.concatenate(([0], np.flatnonzero(change) + 1)) + self.lengths = np.diff(np.append(self.starts, self.flat.size)).astype(np.int32) + + def run_at(self, line: np.ndarray, pos: np.ndarray) -> np.ndarray: + """Index of the run containing the pixel at `pos` along `line`.""" + return np.searchsorted(self.starts, line * self.stride + pos + 1, side="right") - 1 + + @staticmethod + def _match(lengths: list[np.ndarray], ratios: tuple[int, ...]) -> tuple[np.ndarray, np.ndarray]: + """Checks windows of runs against the ratios, given the length of each run. Returns (ok, module size).""" + S = sum(ratios) + total = sum(lengths[1:], start=lengths[0]) + ok = total >= 2 * S # modules need to be at least 2 px + for L, r in zip(lengths, ratios, strict=True): + ok &= np.abs(2 * S * L - 2 * r * total) <= r * total # integer form of |L - r * total / S| <= r * total / (2 * S) + return ok, total / S + + def scan(self, ratios: tuple[int, ...]) -> np.ndarray: + """Returns the indices of all dark runs starting a window of runs matching the ratios.""" + n = len(ratios) + N = len(self.lengths) - n + 1 + if N <= 0: + return np.zeros(0, dtype=int) + ok, _ = self._match([self.lengths[k:N + k] for k in range(n)], ratios) + ok &= self.flat[self.starts[:N]] + first = np.flatnonzero(ok) + return first[self.starts[first] // self.stride == self.starts[first + n - 1] // self.stride] + + def check(self, first: np.ndarray, ratios: tuple[int, ...]) -> tuple[np.ndarray, np.ndarray, np.ndarray]: + """Checks the run windows starting at run index `first`. Returns (ok, center position along the line, module size).""" + n, half = len(ratios), len(ratios) // 2 + ok = (first >= 0) & (first + n <= len(self.starts)) + idx = np.clip(first[:, None] + np.arange(n), 0, len(self.starts) - 1) + matched, module = self._match([self.lengths[idx[:, k]] for k in range(n)], ratios) + ok &= matched & self.flat[self.starts[idx[:, 0]]] + ok &= self.starts[idx[:, 0]] // self.stride == self.starts[idx[:, -1]] // self.stride + center = self.starts[idx[:, half]] % self.stride - 1 + self.lengths[idx[:, half]] / 2 + return ok, center, module + + +def _find_patterns(binary: np.ndarray, ratios: tuple[int, ...]) -> list[tuple[float, float, float]]: + """Finds dark/light run patterns with the given module ratios. Returns (x, y, module size).""" + half = len(ratios) // 2 + step = 2 # the center rows of a 2 px finder pattern still get scanned twice + rows_t = _Runs(np.pad(binary[::step], ((0, 0), (1, 1)))) + first = rows_t.scan(ratios) + if len(first) == 0: + return [] + _, cx, hmod = rows_t.check(first, ratios) + row = rows_t.starts[first] // rows_t.stride * step + + xi = cx.astype(int) + xs, col = np.unique(xi, return_inverse=True) + cols_t = _Runs(np.pad(binary[:, xs].T, ((0, 0), (1, 1)))) + ok, cy, vmod = cols_t.check(cols_t.run_at(col, row) - half, ratios) + ok &= (0.5 <= vmod / hmod) & (vmod / hmod <= 2) + line = np.clip(np.rint(cy / step), 0, rows_t.lines - 1).astype(int) + ok2, cx2, hmod2 = rows_t.check(rows_t.run_at(line, xi) - half, ratios) + ok &= ok2 & (0.5 <= hmod2 / vmod) & (hmod2 / vmod <= 2) + + found: list[list[float]] = [] # [x, y, module, count] + for x, y, module in zip(cx2[ok], cy[ok], (hmod2[ok] + vmod[ok]) / 2, strict=True): + for f in found: + if abs(f[0] - x) <= f[2] and abs(f[1] - y) <= f[2] and 0.5 <= f[2] / module <= 2: + c = f[3] + f[0], f[1], f[2], f[3] = (f[0] * c + x) / (c + 1), (f[1] * c + y) / (c + 1), (f[2] * c + module) / (c + 1), c + 1 + break + else: + found.append([x, y, module, 1]) + found.sort(key=lambda f: -f[3]) + return [(f[0], f[1], f[2]) for f in found if f[3] >= 2] + + +def _pick_finders(patterns: list[tuple[float, float, float]]) -> tuple[np.ndarray, np.ndarray, np.ndarray, float]: + """Returns (top-left, top-right, bottom-left) centers and the module size of the most square-looking triple.""" + best = None + for a, b, c in itertools.combinations(patterns[:10], 3): + mods = sorted((a[2], b[2], c[2])) + if mods[2] / mods[0] > 1.5: + continue + pts = [np.array(p[:2]) for p in (a, b, c)] + d = [np.linalg.norm(pts[(i + 1) % 3] - pts[(i + 2) % 3]) for i in range(3)] + tl = int(np.argmax(d)) # opposite the hypotenuse + p1, p2 = pts[(tl + 1) % 3], pts[(tl + 2) % 3] + v1, v2 = p1 - pts[tl], p2 - pts[tl] + n1, n2 = np.linalg.norm(v1), np.linalg.norm(v2) + if n1 == 0 or n2 == 0: + continue + cos = abs(np.dot(v1, v2)) / (n1 * n2) + if cos > 0.35 or not 0.6 <= n1 / n2 <= 1.6: + continue + score = cos + abs(np.log(n1 / n2)) + np.log(mods[2] / mods[0]) + if best is not None and score >= best[0]: + continue + if v1[0] * v2[1] - v1[1] * v2[0] < 0: + p1, p2 = p2, p1 + best = (score, pts[tl], p1, p2, float(sum(mods) / 3)) + if best is None: + raise QRError("no finder patterns") + return best[1:] + + +def _perspective(src: np.ndarray, dst: np.ndarray) -> np.ndarray: + """Homography mapping the four src points onto the four dst points.""" + A = [row for (x, y), (u, v) in zip(src, dst, strict=True) + for row in ([x, y, 1, 0, 0, 0, -u * x, -u * y], [0, 0, 0, x, y, 1, -v * x, -v * y])] + try: + h = np.linalg.solve(np.array(A, dtype=float), np.asarray(dst, dtype=float).ravel()) + except np.linalg.LinAlgError as e: + raise QRError("degenerate geometry") from e + return np.append(h, 1).reshape(3, 3) + + +def _transform(H: np.ndarray, pts: np.ndarray) -> np.ndarray: + p = np.column_stack((pts, np.ones(len(pts)))) @ H.T + return p[:, :2] / p[:, 2:3] + + +def _match_alignment(binary: np.ndarray, est: np.ndarray, offs: np.ndarray, r: int, module: float) -> np.ndarray | None: + h, w = binary.shape + dy = np.arange(max(0, int(est[1]) - r), min(h, int(est[1]) + r)) - est[1] + dx = np.arange(max(0, int(est[0]) - r), min(w, int(est[0]) + r)) - est[0] + if len(dy) == 0 or len(dx) == 0: + return None + y = np.rint(est[1] + dy[:, None, None] + offs[None, None, :, 1]).astype(int) + x = np.rint(est[0] + dx[None, :, None] + offs[None, None, :, 0]).astype(int) + valid = ((y >= 0) & (y < h) & (x >= 0) & (x < w)).all(axis=2) + samples = binary[np.clip(y, 0, h - 1), np.clip(x, 0, w - 1)] + score = np.where(valid, (samples == _ALIGNMENT.ravel()).sum(axis=2), 0) + if score.max() < 23: + return None + hits = np.argwhere(score == score.max()) + centers = np.column_stack((est[0] + dx[hits[:, 1]], est[1] + dy[hits[:, 0]])) + closest = centers[np.argmin(np.linalg.norm(centers - est, axis=1))] + return centers[np.linalg.norm(centers - closest, axis=1) <= module / 2].mean(axis=0) + + +def _locate_alignment(binary: np.ndarray, H: np.ndarray, center: float, module: float) -> np.ndarray | None: + """Template matches the 5x5 alignment pattern around its position estimated from H.""" + grid = np.mgrid[-2:3, -2:3].reshape(2, -1).T[:, ::-1] + center # (25, 2) module coords (x, y) + pts = _transform(H, grid) + # the affine estimate can be off in both position and local scale under perspective + for radius in (2, 4, 8, 16): + for scale in (1.0, 0.8, 1.25, 0.65, 1.5): + found = _match_alignment(binary, pts[12], (pts - pts[12]) * scale, int(module * radius), module) + if found is not None: + return found + return None + + +def _sample(binary: np.ndarray, tl: np.ndarray, tr: np.ndarray, bl: np.ndarray, module: float, dim: int, use_alignment: bool) -> np.ndarray: + src = np.array([(3.5, 3.5), (dim - 3.5, 3.5), (3.5, dim - 3.5), (dim - 3.5, dim - 3.5)]) + dst = np.array([tl, tr, bl, tr + bl - tl]) + H = _perspective(src, dst) + if use_alignment and dim > 21: + align = _locate_alignment(binary, H, dim - 6.5, module) + if align is not None: + src[3], dst[3] = (dim - 6.5, dim - 6.5), align + H = _perspective(src, dst) + + rows, cols = np.mgrid[0:dim, 0:dim] + pts = _transform(H, np.column_stack((cols.ravel() + 0.5, rows.ravel() + 0.5))) + xy = np.rint(pts).astype(int) + h, w = binary.shape + if (xy < 0).any() or (xy[:, 0] >= w).any() or (xy[:, 1] >= h).any(): + raise QRError("code extends outside image") + return binary[xy[:, 1], xy[:, 0]].reshape(dim, dim) + + +def decode(gray: np.ndarray) -> str | None: + """Decodes the QR code in a 2D uint8 grayscale image. Modules need to be at least 2 px. + Returns None if nothing could be decoded.""" + try: + binary = _binarize(gray) + tl, tr, bl, module = _pick_finders(_find_patterns(binary, (1, 1, 3, 1, 1))) + except QRError: + return None + + d = (np.linalg.norm(tr - tl) + np.linalg.norm(bl - tl)) / 2 + dim = int(round((d / module + 7 - 17) / 4)) * 4 + 17 + dims = [cand for cand in (dim, dim - 4, dim + 4) if 21 <= cand <= 177] + for cand, use_alignment, transpose in itertools.product(dims, (True, False), (False, True)): + try: + m = _sample(binary, tl, tr, bl, module, cand, use_alignment) + return decode_matrix(m.T if transpose else m) + except QRError: + pass + return None diff --git a/openpilot/common/tests/fixtures/qrcode_0.npz b/openpilot/common/tests/fixtures/qrcode_0.npz new file mode 100644 index 0000000000000000000000000000000000000000..96f550e5f439d278daf2229532464a4bd343c753 GIT binary patch literal 67335 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�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%0A8eMO4(kk{PsChp6l#(` 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

{@U4myW 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 edCn>z{u?K3c2-QsJN_QyI4bp57DQW2jrMo-! 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⋙hffI8A9#N#;jCY#)#qjamhi} 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 np.ndarray: + bits = np.unpackbits(FIXTURES[key]) + size = math.isqrt(len(bits)) + return bits[:size * size].reshape(size, size).astype(bool) + + +def render(matrix: np.ndarray, box: int = 6, border: int = 4) -> np.ndarray: + img = np.repeat(np.repeat(np.pad(matrix, border), box, axis=0), box, axis=1) + return np.where(img, 0, 255).astype(np.uint8) + + +def make(data: str, version: int | None = None, level: int = 0, box: int = 6, border: int = 4): + matrix = fixture(hashlib.sha256(f"{version}:{level}:{data}".encode()).hexdigest()) + return matrix, render(matrix, box, border) + + +def warp(img: np.ndarray, H: np.ndarray) -> np.ndarray: + """Bilinear resampling through the output -> input homography H, white outside the image.""" + h, w = img.shape + rows, cols = np.mgrid[0:h, 0:w] + pts = qr._transform(H, np.column_stack((cols.ravel() + 0.5, rows.ravel() + 0.5))) - 0.5 + x0, y0 = np.floor(pts[:, 0]).astype(int), np.floor(pts[:, 1]).astype(int) + fx, fy = pts[:, 0] - x0, pts[:, 1] - y0 + padded = np.pad(img.astype(float), 1, constant_values=255) + + def at(y, x): + return padded[np.clip(y + 1, 0, h + 1), np.clip(x + 1, 0, w + 1)] + + out = at(y0, x0) * (1 - fx) * (1 - fy) + at(y0, x0 + 1) * fx * (1 - fy) + at(y0 + 1, x0) * (1 - fx) * fy + at(y0 + 1, x0 + 1) * fx * fy + return np.clip(out, 0, 255).astype(np.uint8).reshape(h, w) + + +def rotate(img: np.ndarray, angle: float) -> np.ndarray: + h, w = img.shape + t = np.radians(angle) + R = np.array([[np.cos(t), -np.sin(t)], [np.sin(t), np.cos(t)]]) + center = np.array([w / 2, h / 2]) + corners = np.array([(0, 0), (w, 0), (w, h), (0, h)], dtype=float) + return warp(img, qr._perspective((corners - center) @ R.T + center, corners)) + class TestQRCode(OpenpilotTestCase): def test_alignment_positions(self): assert qr._alignment_positions(7) == [6, 22, 38] assert qr._alignment_positions(32) == [6, 34, 60, 86, 112, 138] assert qr._alignment_positions(40) == [6, 30, 58, 86, 114, 142, 170] + + def test_all_versions(self): + for version in range(1, 41): + for level in range(4): + with self.subTest(version=version, level=level): + data = "".join(chr(ord("a") + i % 26) for i in range(version)) + matrix, img = make(data, version, level, box=3) + assert qr.decode_matrix(matrix) == data + assert qr.decode(img) == data + + def test_modes(self): + for data in ["0123456789012345", "HELLO WORLD $1.50", LPA, "こんにちは", "ünïcødé", "mixed 123 ABC xyz"]: + with self.subTest(data=data): + matrix, img = make(data) + assert qr.decode_matrix(matrix) == data + assert qr.decode(img) == data + + def test_error_correction(self): + matrix, _ = make(LPA, level=2) + rng = np.random.default_rng(0) + flipped = matrix.copy() + for r, c in rng.integers(9, matrix.shape[0] - 9, size=(40, 2)): + flipped[r, c] ^= True + assert qr.decode_matrix(flipped) == LPA + + def test_large_modules(self): + for data in ["0123456789012345", "HELLO WORLD $1.50", LPA, "mixed 123 ABC xyz"]: + for box in [16, 20, 24, 32]: + for dark, light in [(0, 255), (60, 200), (140, 250)]: + with self.subTest(data=data, box=box, dark=dark): + _, img = make(data, box=box) + img = np.where(img == 0, dark, light).astype(np.uint8) + assert qr.decode(img) == data + + def test_image_edges(self): + # a code touching the image edge must not lose the rows and columns left over from tiling + matrix, _ = make(LPA) + for size in (200, 203): + with self.subTest(size=size): + img = np.full((size, size), 255, dtype=np.uint8) + code = render(matrix, box=5, border=0) + img[size - code.shape[0]:, size - code.shape[1]:] = code + assert qr.decode(img) == LPA + + def test_eci(self): + # qrcode_eci.npz: packed Segno 1.6.6 matrices, generated with mode='byte', + # eci=True, micro=False and the named encoding. Mixed also includes numeric, + # alphanumeric, and Kanji segments after changing the byte encoding twice. + cases = { + "iso8859-5": "Привет", "utf-16-be": "héllo", "utf-8": "こんにちは", + "shift_jis": "日本語", "cp1251": "Привет", "iso8859-1": "héllo", + "mixed": "hélloПривет日本語123ABC漢字", + } + for encoding, expected in cases.items(): + with self.subTest(encoding=encoding): + matrix = fixture(encoding) + assert qr.decode_matrix(matrix) == expected + assert qr.decode(render(matrix)) == expected + + def test_parse_data(self): + def parse(stream: str) -> str: + stream += '0' * (-len(stream) % 8) + return qr._parse_data([int(stream[i:i + 8], 2) for i in range(0, len(stream), 8)], 1) + + def eci(assignment: str, payload: bytes = b'A') -> str: + return parse('0111' + assignment + '0100' + f'{len(payload):08b}' + ''.join(f'{b:08b}' for b in payload) + '0000') + + # ASCII assignment 170 uses the two-byte ECI representation. + assert eci('1000000010101010') == 'A' + for assignment in ['00001110', '1000001111100111', '110000010000000000000000', '11100000']: + with self.subTest(assignment=assignment), self.assertRaises(qr.QRError): + eci(assignment) + with self.assertRaises(qr.QRError): + eci('00011010', b'\xff') # Invalid UTF-8 must not fall back to Latin-1. + + # out-of-range numeric, alphanumeric, and Kanji values are format errors, not crashes + for stream in ['0001' + '0000000011' + '1111111111', '0001' + '0000000010' + '1111111', + '0010' + '000000010' + '11111111111', '0010' + '000000001' + '111111', + '1000' + '00000001' + '0000000111111']: + with self.subTest(stream=stream), self.assertRaises(qr.QRError): + parse(stream) + + def test_rotation(self): + for angle in [0, 90, 180, 270, 25, 110]: + with self.subTest(angle=angle): + _, img = make(LPA, box=8, border=12) + assert qr.decode(rotate(img, angle)) == LPA + + def test_mirrored(self): + _, img = make(LPA) + assert qr.decode(img[:, ::-1]) == LPA + + def test_perspective_and_noise(self): + _, img = make(LPA, box=10, border=8) + h, w = img.shape + corners = np.array([(40, 60), (w - 20, 30), (w - 60, h - 40), (30, h - 90)]) + arr = warp(img, qr._perspective(corners, np.array([(0, 0), (w, 0), (w, h), (0, h)]))).astype(float) + rng = np.random.default_rng(1) + arr = arr * 0.6 + 60 + rng.normal(0, 12, arr.shape) # low contrast + noise + # uneven lighting + arr += np.linspace(-40, 40, w)[None, :] + assert qr.decode(np.clip(arr, 0, 255).astype(np.uint8)) == LPA + + def test_no_code(self): + rng = np.random.default_rng(2) + assert qr.decode(rng.integers(0, 256, size=(240, 320), dtype=np.uint8)) is None + assert qr.decode(np.full((240, 320), 200, dtype=np.uint8)) is None + + def test_encoder_roundtrip(self): + for version in range(1, 21): + with self.subTest(version=version): + assert qr.decode_matrix(np.array(qr._Qr(version, b"hello").modules)) == "hello"