Is license plates a use case for Vision AI?

A client have a number of trucks coming in for registration. I am not sure Vision AI is the optimum for this application, since Vision AI is looking for anomalies. But anyhow, I wanted to hear you thoughts on the topic :-)

  • Hi Jakob,

    I'll let the Vision AI experts aswer formally, but as you already noted, Vision AI primarily does classification and I'm not sure if it will do text recognition.

    At least the scenario you describe sounds like it should lend itself well to a software-based approach and not require a specifialized hardware solution, given that truck reception typically involves the vehicle moving slowly or even coming to a full stop, and there can be good/consistent lighting, and perhaps no concerns for tailgating (i.e. not requiring steep camera angles).

    Generally speaking, license plates can be challenging if considering use cases involving high/variable speed, difficult camera angles, variable lighting, variable colors of license plates (in some countries), etc.

  • Hi Jakob!

    This is indeed an interesting topic for discussion!

    I would agree with Rickard, that the Vision AI is for detecting anomalies giving you the good/bad response, witch is fun in its own way!

    But it was some time ago that I played with this so to check with the developers on what's on the roadmap is a good idea.

    There are many CCTV services that enables some detection of objects and similar so it might also be worth exploring, I believe Freegate is one of the ones with license plate detection built in, if CCTV is your source. 

    But if you want to build your own solution it is in essential a OCR detection and reading that is needed.

    When it comes to enabling this to System Platform / Aveva it might be worth reading up on Googles open source project, Tesseract OCR.

    https://github.com/tesseract-ocr/tessdoc

    Worth exploring just because of the name, right? :)

    And there are some projects available that builds upon this.

    I have, on a concept level, used IronOCR, a (licensed) C# Library that utilizes the tesseract and adds already made functions for reading license plates.

    https://ironsoftware.com/csharp/ocr/

    They are working on a new version (that's why some functions below are not in their online documentation) but this is an example to use if you are testing their latest version. Just for you to get the idea.

    It would be cool to have this as a ScriptFunction library and feed it with the image you want to validate in an object.

    But getting a fully functioning license-plate reader that reads in real time might be a bigger challenge than a few lines of code.

    And there might be existing solutions that takes care of all issues Slight smile but it would improve material reception areas in many AVEVA based systems, so I would vote up anyone taking on this challenge.

    var ocr = new IronTesseract();

    using var inputLicensePlate = new OcrInput();

    inputLicensePlate.LoadImage("plate4.jpg");

    OcrLicensePlateResult resultLicensePlate = ocr.ReadLicensePlate(inputLicensePlate);

    Rectangle rectangle = resultLicensePlate.Licenseplate;

    String output = resultLicensePlate.Text;

    double score = resultLicensePlate.Confidence;

    Console.WriteLine($"output: {output} \n score: {score}");

     

  • I am on the same thread as you here. Vision AI does not read the text, it only recognize the image. At a first verification that could be somewhat OK, but sooner or later there will be a demand to also build some logic around which plate it is. And for that, we will have to read the text. I was just curious if there where any ref out there.