Recent

Author Topic: How to write a license plate recognition program?  (Read 9540 times)

schuler

  • Full Member
  • ***
  • Posts: 223
Re: How to write a license plate recognition program?
« Reply #15 on: March 26, 2019, 12:38:48 pm »
Hello Max,
Have you been given a training set so your code can learn from?

In my opinion, this is a problem to be solved with neural networks. You may have a look at these links:
https://matthewearl.github.io/2016/05/06/cnn-anpr/
https://www.kaggle.com/dataturks/vehicle-number-plate-detection

You can port neural networks from TF, Keras, convnetjs to FPC with:
http://forum.lazarus.freepascal.org/index.php/topic,39049.0.html

In the case that your code is public, I can comment on it if you need.

Thaddy

  • Hero Member
  • *****
  • Posts: 14197
  • Probably until I exterminate Putin.
Re: How to write a license plate recognition program?
« Reply #16 on: March 26, 2019, 02:57:53 pm »
Thanks. That was what I suggested before and I would approach it.
Another option is using OpenCV for which there are bindings, but is not always optimal on non-intel platforms.
https://software.intel.com/en-us/articles/what-is-opencv and https://opencv.org

Bindings for FPC and Delphi:
https://github.com/Laex/Delphi-OpenCV
« Last Edit: March 26, 2019, 03:02:21 pm by Thaddy »
Specialize a type, not a var.

schuler

  • Full Member
  • ***
  • Posts: 223
Re: How to write a license plate recognition program?
« Reply #17 on: March 26, 2019, 04:17:55 pm »
@Thaddy
I've never run a benchmark against OpenCV. Thank you for bringing to my attention. I'll try eventually.

@Max,
mw108 created a MNIST example here (it identifies numbers - not exactly what you need but it's similar):
https://bitbucket.org/108bits/cai-implementations/commits/branch/master
https://forum.lazarus.freepascal.org/index.php?topic=18769.45

More about MNIST:
https://en.wikipedia.org/wiki/MNIST_database

Leledumbo

  • Hero Member
  • *****
  • Posts: 8746
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: How to write a license plate recognition program?
« Reply #18 on: March 27, 2019, 06:31:05 pm »
This is indeed neural networks area of work. The biggest problem is finding a (hopefully readily available) training set of symbols to recognize. Coding the neural network itself should be fairly easy and simple as it's just floating point math in the end. I just wrote an k-ary classifier single layer perceptron (not the bleeding edge, I know, but still sufficient for the task) from scratch in just 120 lines of Pascal, minus the training and testing data, and it still includes a bunch of Write(Ln) statements for progress visualization.

daanjanssennn

  • Newbie
  • Posts: 1
Re: How to write a license plate recognition program?
« Reply #19 on: January 07, 2021, 02:03:38 pm »
Hello,

In my internship I have to write a program for license plate recognition. I have never worked with Pascal or Lazarus before. After I managed to filter out the number plate on a picture quite clearly (binarize, crop etc. ) I want to write an algorithm that recognizes the letters and numbers of the number plate. But I have never written an algorithm and unfortunately I have no idea where to start. That's why I'm here looking for help. Where do I best start? And what do I even have to do to write an algorithm?

Max

Ps:
If I should have some mistakes in the text I am sorry but I come from Germany and my English is partly still to be improved. (I would write in a german forum but I find only a decent one, where the registration is not possible at the moment.) :)

Hi Max,
You can look for some kind of SDK for license plate recognition.
I am using for Delphi this one: https://www.dtksoft.com/lprsdk


JanRoza

  • Hero Member
  • *****
  • Posts: 672
    • http://www.silentwings.nl
Re: How to write a license plate recognition program?
« Reply #20 on: January 07, 2021, 02:43:34 pm »
Do you think that after almost two years this answer is still relevant?
OS: Windows 10 (64 bit) / Linux Mint (64 bit)
       Lazarus 3.2 FPC 3.2.2
       CodeTyphon 8.40 FPC 3.3.1

Alexandr R

  • New Member
  • *
  • Posts: 24
Re: How to write a license plate recognition program?
« Reply #21 on: January 10, 2021, 06:51:22 pm »

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1203
Привет.
Нашёл для кое-что на Паскаль  Вас. Это только первый шаг к распознаванию символов. Много чего ещё есть но на моём родном языке и в формате ПДФ . Гугл в помощь и удачи.
Hey.
Found something for Pascal you. This is just the first step towards character recognition. There is a lot more, but in my native language and in PDF format. Google for help and good luck.


avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: How to write a license plate recognition program?
« Reply #22 on: January 11, 2021, 01:12:13 am »
Here are Delphi bindings for OpenALPR: https://github.com/r1me/TOpenALPR
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

 

TinyPortal © 2005-2018