.png&w=1920&q=75)
Banksy OCR is a containerized optical character recognition application for Mini-Challenge 2 that reads license plates and road signs using an open-source vision-language model running on AMD GPUs through ROCm. Architecture: when the container starts, a persistent server loads Qwen2.5-VL-7B-Instruct (bf16, weights baked into the image) onto the GPU once and runs a warm-up pass. The harness entrypoint, python3 /app/app.py --input-image <path>, is a thin client that sends the image to that resident model, so each call avoids reloading weights. A task-specific prompt encodes the transcription rules (drop state names and slogans on US plates, keep the province character and letter on Chinese plates, keep words printed on signs, join multi-line signs top to bottom, never add units), and deterministic post-processing strips labels, quotes, unit suffixes and leftover jurisdiction banners before writing /app/output/<name>_output.json with text and confidence. Inputs: PNG, JPEG and TIFF (first frame), any size; very large images are downscaled before inference. Validation: built FROM the mandated rocm/pytorch rocm10.0 / Ubuntu 26.04 / Python 3.14 / PyTorch 2.13 base without squashing (all base layers verified intact). Tested inside the final container on an AMD Radeon 8060S (ROCm 10.0, torch 2.13.0): 31.2 GiB image, 23 s startup, 0.7-2.5 s per image, about 16.5 GiB peak GPU memory, 10/10 on a synthetic set covering clean, angled, blurred, low-light, noisy and multi-line cases. The same code was also run on an MI300X in the AMD notebook environment.
Category tags: