BI & Plate Recognizer

Have you settled upon a database? It would be nice to be able to do queries like 'show all plates for date/time range' or 'have you seen this plate?'.
But at 18,000/month what could you use?
That's a lot of lines in Excel. In a year you almost max out the number of lines you are allowed in Excel.
Hey, I'm a big excel guy but databases have their use also - usually nothing I can't do in excel though.
Not sure what version of Excel you are using but the 2013 version have 1,048,576 rows so even at 18,000 plates per month that is just under 5 years of logging.
You could then either start a new set of columns next to those or just start a new tab.
If OpenALPR can give me .csv files or something I can convert, I'll be happy until something better comes along (once I choose the right cameras ofc).
 
even at 18,000 plates per month that is just under 5 years
Yup...I think I screwed up the math. Was thinking 18k/ month would run out in a year! Silly me.
 
OK, so Plate Recognizer said they would take another price point into consideration for home use.

So what do you all think would be a reasonable price - $10 for 10,000; $20 for 20,000 etc.?

The unfortunate thing is everyone's situation is different. Whatever price point is created, there will always be someone that would benefit from the pricing of the other system and go that route.

For example, if you have 2 or 3 LPR cams and get under 10,000 plates per month. then PR is the better choice. Plate Recognizer is just based on number of images, not cameras, so that can benefit someone with more than one LPR.

If you get a lot of traffic, then OpenALPR might be the better choice.

I blew through the 2,500 way faster than I ever thought in my little no outlet subdivision, so I need something more.

And we do have to keep in mind the simplicity of this system and integration with BI is nice, so there is a little bit of premium to consider being willing to pay for that convenience.

I guess it is time for me to try the OpenALPR and all the steps required that was posted in another thread on how to automate it to get the data out into a file that can be exported into excel and then decide?

Has anyone done both and have a preference?
 
  • Like
Reactions: samplenhold
$20 for 20,000

Wow, that was fast! Thanks for contacting them!
For my situation. But not sure if that is enough once the COVID shutdown ends. I would probably be willing to spend $25 for 25,000.
 
So I was helping @we7313 set up his camera and Plate Recognizer and he asked about identifying the make and model and I told him about the options that exist with Plate Recognizer that is expensive and it is useless at night.

So we know that Plate Recognizer take the license plate and adds it into the Messages and onto the Motion alert - does anyone know how we can extract that from that file?

In other words, how can I capture the plate number response from Plate Recognizer (that would then replace %PLATENUMBER)and trigger a web request like:
Capture the JSON Response:
[
{
"code": "0",
"vin": "1GCHK22221E232411",
"year": "2001",
"make": "Chevrolet",
"model": "Silverado 2500 Base / LS / LT",
"countryOfAssembly": "United States",
"body": "Extended Cab 4D",
"vehicleClass": "Pickup - Full Sized",
"recordCount": 36,
"score": 66,
"scoreRangeLow": 55,
"scoreRangeHigh": 70,
"buybackAssurance": "ONE_YEAR",
"lemonRecord": false,
"accidentRecord": false,
"floodRecord": false,
"singleOwner": false,
"engine": "6.0L V8 SFI",
"status": "SUCCESS"
}
]
And parse some of these attributes adding them to the logs/alter images.
 
OK, so Plate Recognizer said they would take another price point into consideration for home use.

So what do you all think would be a reasonable price - $10 for 10,000; $20 for 20,000 etc.?
Just throwing my hat into this. Yeah, those prices would be decent for a home user.
Im looking at Plate Recognizer or OpenALPR, but since PR jumps so fast it puts it out of what I am willing to pay so would go OpenALPR.
A price point like that would probably swing me back to PR.
 
  • Like
Reactions: sauceonside
Just to add my two cents to this with some real-world data and as I just started playing with plate recognizer for the alert integration features. I have been running the OpenALPR local process from github since 4/8/2019 (thanks @fernandw OpenALPR - A How-To on Ubuntu 16.04 Desktop). It runs on a separate PC, 100% local without any internet access needed and processes the plates from the camera's stream directly, so BI could be shut down and it's still chugging along. I have several scripts shared in the post above that scrape the ALPR processes output and log them to a MySQL database, and save an image capture of the plate to a folder. I added to those scripts to also post the plate to an MQTT topic so that Home Assistant can alert me to certain plates. I have two cameras on my street, one for east and one for west. We are a two-plate state but a lot of people don't put their front plate on properly, or their back plate is blocked by a trailer hitch accessory, etc. I am using the 12ZE cameras and experience the fail to focus at night issue sometimes, so two cameras also increases my odds that one is in focus!

Since installation, my database has 909,572 records in it. That includes every partial attempt to read a plate at all confidence levels (so if ABC123 goes by and it starts reading A8C123, ABCI23, etc.. those are all logged), If I filter by a Confidence of 85 or above, I get 779,510 results. Here is a monthly count over the last year or so of any confidence level.
PlateCounts.PNG

Clearly 2,500 calls to Plate Recognizer are not nearly enough for my case, especially when you consider that each image sent is counted with them. At minimum I would have to pay the $50/month rate for 50,000 lookups, but would start missing some plates on busier months, that pushes me to the $150/month plan. WAY too expensive for a homeowner who does this more for curiosity than anything. My ALPR database only consists of images that returned a plate (or lettering off of the side of a truck). In the short time I've had Plate Recognizer configured I have had four cars go by. The camera AI settings page says I have used 58/2500 calls since there is a breeze blowing the trees over the street causing shadow triggers. None of my alerts, nor my status log, show any plate reads from Plate Recognizer.

My requirement would be 100% local with a local SQL database. I took @fernandw's web interface and customized if further to allow me to search by plate, date/time, camera, etc. I also made a database of neighbors and plates I want alerts on so I can filter by those. I also can break down counts by hour of the day, day of the week, etc. I want to do a lot more with it but just never took the time to do it.

Long story short, there are some real capture stats to compare for monthly needs. My street is a typical residential street, not a busy thoroughfare or cut-through to avoid anything. When I first got this up and running I took a drive around to see if I could place where all the passing cars were from and I could find most parked in neighbors driveways on my street and up to a few streets over.
 
Last edited:
@th182 That very informative. How long are you intending to keep plates and what is your DB size with close to a million plates now and a million .jpg captures?
 
@th182 That very informative. How long are you intending to keep plates and what is your DB size with close to a million plates now and a million .jpg captures?

I have a script that cleans out photos after 30 days or so. I can't remember if I set it for 30 or 60. According to MySQL workbench, my table is only 78.5 MiB or 82.3 MB.

Another fun fact: I have 20,097 distinct plates in the database. It's really interesting seeing a table showing how many times each individual plate was logged. Of course the top are all neighbors.
 
Last edited:
Here's a recent daily and past weekly views of the plate collections on my quiet residential street. I collected 2,642 plates in August. OpenALPR in my BI does tend to double the plates sometimes when a car isn't speeding - I haven't bothered to figure out how to avoid this issue.

Update: I went ahead and signed up for PlateRecognizer, since it's free and I use OpenALPR's $5 per month fee anyway, and I am guessing the look-ups will stop after the 2,500th shadow or squirrel or car gets parsed.
 

Attachments

  • daily-stats-alpr.png
    daily-stats-alpr.png
    184.1 KB · Views: 34
Last edited:
So I got through almost 20 days of the free 30 day tier before the PlateRecognizer stopped stubbing plates. When I look in the log file, I see a lot of duplicates from parked cars, whereas OpenALPR can mask the area to avoid the areas where parked plates are seen. Anyone aware of a way to help PlateRecognizer avoid parked plates or keep its sight in certain areas?
 
OK, it's been a while, but I FINALLY got my LPR cams set up and tonight I set up Plate Recognizer. It was easy to do, but I have some other questions:

It is awesome that it puts the plates number on the alerts trigger image text information.
I do not understand this statement. I see no plate number on any of the images. Not in BI or the ones listed in the PR dashboard. What do you mean here?

Is there a way that one can download the data from the PR website?

Has anyone come up with a script or something to pull the plate data out of the BI log file? If not, I probably will give this a stab, but it has literally been over 10 years since I did anything like that. Back in the day I would use SAS on Solaris (Unix) to do that. Then a few years later it was Awk and a little Pearl. But I know nothing of doing that on Windows and really do not remember anything of those languages now.

Any Ideas?

1604639959705.png
 
The plates are on the alert video as text to the right of the picture in the Motion line:

1604641284681.png
 
The plates are on the alert video as text to the right of the picture in the Motion line:
Oh yeah! They are! Did not notice that. Thanks.

Too bad it is not in UI3 which is my primary BI display tool in my office.

Any ideas on my other questions?
 
I have simply taken the text file and open in excel and do a sort by cam to blow out all the other cams and just save the plates info.
 
  • Like
Reactions: samplenhold
  • Like
Reactions: samplenhold
So in four days, I have gotten over 2000 lookups from two cams. That is roughly 500/day. About 150 are caps that do not have a plate in them, mostly due to the timing of the alert image. I have to work on that.

One thing I have noticed is that PR does a poor job of differentiating 'H' 'M' 'N' and 'W' when the plate has any real foreshortening. Also, sometimes it pics up my cam title or the time/date as a plate.

There is no way to correct the plates in their dashboard.

So I sent PR an email asking if there is a way for me to download the list of plates (date, time, plate number, CL% and camera) back to my home computer from the dashboard? A text file would be fine.

I got the following email the very next day:

Hi Robert - do you know how to use webhooks? You can send webhooks from Plate Rec over to

Please go here to learn more about our Webhooks: https://platerecognizer.com/alpr-webhooks/. You can see our tech docs here on Webhooks too: http://docs.platerecognizer.com/#webhooks

Let me know if ParkPow (sister company) can be of value too. We recently launched it! With it, you can:



  • Get at-a-glance activity chart and drill down table of all plates decoded.
  • Search vehicles by plate, timeframe, site, vehicle type, color, make, etc.
  • Enforce parking policies such as 3 hour limit, guest parking only, etc.
  • Tag vehicles (e.g. Denied, Visitor) and get Custom Alerts when these vehicles enter.
  • See full vehicle details with Vehicle CRM.
  • Easily integrate/import data from/to other systems.

It's super easy to "forward" LPR from Snapshot Cloud/SDK, Stream and other LPR providers straight into ParkPow.

Get a Free Trial of ParkPow now!



Well I have no idea what webhooks are and searching gave me lots of info, but I do not understand how to make it work on my BI server. Of course not having any web hosting/programming experience and not knowing the terminology does not help.

Anyone care to tell me how this would work on my BI server? Do I need a separate "web server" and if so, what exactly is that? Will it expose me to internet attacks? Or do you need to use a VPN to be safe for that?

Maybe I have bit off more than I can chew. Starting to think the OPENALPR and the interfaces that @Gymratz and @DLONG2 and others have developed would be a better way to go. But I worry that OPENALPR is always changing something that breaks the interface and causes those members to work on it, plus my lack of programming in these languages will be a challenge.