GSoC: QR/Barcode AI

Steps

1. Detect (YOLOv8)
A deep learning model, YOLOv8, is used to detect codes in the image.
Unlike traditional methods that require clear patterns, YOLOv8 can detect codes even when they are blurred, dark, or partially damaged.

Output:
Accurate bounding box and code type (QR, Barcode, or ArUco marker).

2. Enhance (Smart Image Processing)
The cropped ROI is analyzed to identify image issues such as low lighting, blur, or angle distortion.

To fix these problems, the system applies specific image processing techniques:

  • Low light: CLAHE and Gamma Correction

  • Blur: Wiener Deconvolution

  • Tilted code: Perspective Transformation

Result: A clear, high-contrast, properly aligned image of the code.

3. Decode (OpenCV Engine)
The enhanced image is passed to standard decoders such as OpenCV or ZBar.

Because the image quality has been improved, the decoders can successfully read the code, even in cases where they previously failed.

This is my approach. Please give me some suggestions.