1 of 13

STP Machathon 3.0 Summit

Transformers

2 of 13

Contents

    • Pipeline Overview
    • Processing & Segmentation
    • Character Recognition model
    • Conclusion

3 of 13

Pipeline Overview

4 of 13

Processing & Segmentation

5 of 13

I- Processinng

Bad Illimination & Noise?

    • We used Morphological operations like to Maximize Contrast
    • Gaussian Blur to remove Noise

6 of 13

I- Processinng

    • Thresholding on both Value and Saturation channels.

7 of 13

II - Contours

Noisy Contours?

    • Polygon Approximation

Concave polygons?

    • Convex hull

Difficult Camera angles?

    • 4-Point transformation

8 of 13

II – Contours (summary)

    • Sorted Contours Based on Area
    • Polygon Approximation
    • Convex hull for Concave polygons
    • 4-Point transformation
    • We had 2 cases:
      • Contours already separated for numbers and letters
      • Big Countour containing both

9 of 13

III – Separating Characters

    • Use Contours to get symbols in white plate
    • Problem!
    • Arabic Letter may consist of multiple charachters e.g ت this may consist of 2/3 countours.

10 of 13

Solution: Sliding windows

    • Variable window width
    • Must have no black pixels on the sides
    • Must have a specific range of black pixels inside
    • For each group of windows the one with max black pixels is selected

11 of 13

Summary

12 of 13

Character Recognition model

13 of 13

IV – Character Recognition

    • - Some Arabic letters and numbers are similar e.g
      • ألف أ , واحد ١
      • خمسة ٥ , هاء ه
    • Solution!
    • Train 2 models, one for classifying only Arabic letter other for classifying Arabic numbers.