Skip to main content

MareArts ANPR (Automatic Number Plate Recognition) library

Project description

MareArts ANPR SDK

๐Ÿ‡ช๐Ÿ‡บ ANPR EU (European Union)

Auto Number Plate Recognition for EU countries

๐Ÿฆ‹ Available Countries: (We are adding more countries.)

๐Ÿ‡ฆ๐Ÿ‡ฑ Albania  ๐Ÿ‡จ๐Ÿ‡ฟ Czechia  ๐Ÿ‡ฆ๐Ÿ‡ฉ Andorra  ๐Ÿ‡ฉ๐Ÿ‡ฐ Denmark  ๐Ÿ‡ฆ๐Ÿ‡น Austria  ๐Ÿ‡ซ๐Ÿ‡ฎ Finland
๐Ÿ‡ง๐Ÿ‡ช Belgium  ๐Ÿ‡ซ๐Ÿ‡ท France   ๐Ÿ‡ง๐Ÿ‡ฆ Bosnia and Herzegovina  
๐Ÿ‡ฉ๐Ÿ‡ช Germany  ๐Ÿ‡ง๐Ÿ‡ฌ Bulgaria ๐Ÿ‡ฌ๐Ÿ‡ท Greece   ๐Ÿ‡ญ๐Ÿ‡ท Croatia  ๐Ÿ‡ญ๐Ÿ‡บ Hungary  ๐Ÿ‡จ๐Ÿ‡พ Cyprus   ๐Ÿ‡ฎ๐Ÿ‡ช Ireland

๐Ÿฆ‹ Recognisable Characters:

char_list = [
    "-", ".", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
    "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
    "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "d", "i", 
    "m", "o", "ร–", "รœ", "ฤ†", "ฤŒ", "ฤ", "ล ", "ลฝ", "ะŸ"
]

๐Ÿ‡ฐ๐Ÿ‡ท ANPR Korea

ํ•œ๊ตญ ์ž๋™์ฐจ ๋ฒˆํ˜ธํŒ ์ธ์‹ ์†”๋ฃจ์…˜

์ธ์‹ ๊ฐ€๋Šฅ ๋ฌธ์ž:

char_list = [
    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
    '๊ฐ€', '๊ฐ•', '๊ฑฐ', '๊ฒฝ', '๊ณ ', '๊ด‘', '๊ตฌ', '๊ธฐ',
    '๋‚˜', '๋‚จ', '๋„ˆ', '๋…ธ', '๋ˆ„',
    '๋‹ค', '๋Œ€', '๋”', '๋„', '๋™', '๋‘',
    '๋ผ', '๋Ÿฌ', '๋กœ', '๋ฃจ',
    '๋งˆ', '๋จธ', '๋ชจ', '๋ฌด', '๋ฌธ',
    '๋ฐ”', '๋ฐฐ', '๋ฒ„', '๋ณด', '๋ถ€', '๋ถ',
    '์‚ฌ', '์‚ฐ', '์„œ', '์„ธ', '์†Œ', '์ˆ˜',
    '์•„', '์–ด', '์˜ค', '์šฐ', '์šธ', '์›', '์œก', '์ธ',
    '์ž', '์ €', '์ „', '์ œ', '์กฐ', '์ข…', '์ฃผ',
    '์ฒœ', '์ถฉ',
    'ํ•˜', 'ํ—ˆ', 'ํ˜ธ'
]

Installation

To install the MareArts ANPR package, use the following pip command:

pip install marearts-anpr

๐Ÿชช License Key

For private keys, please visit MareArts ANPR Solution. For inquiries about private keys, contact us at hello@marearts.com.

๐Ÿค– Live Test

MareArts ๐ŸŽฌ Live

๐Ÿ“บ ANPR Result Videos

Check here to see the license plate recognition results in YouTube videos.

๐Ÿ“ Using SDK

๐Ÿ”ฌ SDK Usage

Here's an example of how to use the updated SDK:

# pip install marearts-anpr
import cv2
from PIL import Image
from marearts_anpr import ma_anpr_detector
from marearts_anpr import ma_anpr_ocr
from marearts_anpr import marearts_anpr_from_pil
from marearts_anpr import marearts_anpr_from_image_file
from marearts_anpr import marearts_anpr_from_cv2

if __name__ == '__main__':
    
    #################################
    ## Initiate MareArts ANPR
    print("EU ANPR")
    user_name = "your_email"
    serial_key = "your_serial_key"
    detector_model_version = "middle" # Options: middle, v10_small, v10_middle, v10_large
    ocr_model_version = "eu" # Options: eu, kr

    # MareArts ANPR Detector Inference
    anpr_d = ma_anpr_detector(detector_model_version, user_name, serial_key, conf_thres=0.3, iou_thres=0.5)
    # MareArts ANPR OCR Inference
    anpr_r = ma_anpr_ocr(ocr_model_version, user_name, serial_key)
    #################################

    #################################
    # Routine Task 1 - Predict from File
    image_path = './sample_images/eu_test1.jpg'
    output = marearts_anpr_from_image_file(anpr_d, anpr_r, image_path)
    print(output)

    # Routine Task 2 - Predict from cv2
    img = cv2.imread(image_path)
    output = marearts_anpr_from_cv2(anpr_d, anpr_r, img)
    print(output)

    # Routine Task 3 - Predict from Pillow
    pil_img = Image.open(image_path)
    output = marearts_anpr_from_pil(anpr_d, anpr_r, pil_img)
    print(output)
    #################################


    #################################
    ## Initiate MareArts ANPR for Korea
    print("ANPR Korean")
    # user_name, serial_key are already defined
    # anpr_d is also already initiated before
    ocr_model_version = "kr"
    # MareArts ANPR OCR Inference
    anpr_r = ma_anpr_ocr(ocr_model_version, user_name, serial_key)

    #################################
    # Routine Task 1 - Predict from File
    image_path = './sample_images/kr_test2.jpg'
    output = marearts_anpr_from_image_file(anpr_d, anpr_r, image_path)
    print(output)

    # Routine Task 2 - Predict from cv2
    img = cv2.imread(image_path)
    output = marearts_anpr_from_cv2(anpr_d, anpr_r, img)
    print(output)

    # Routine Task 3 - Predict from Pillow
    pil_img = Image.open(image_path)
    output = marearts_anpr_from_pil(anpr_d, anpr_r, pil_img)
    print(output)
    #################################

๐Ÿ”ฌ Returns

The output from the ANPR will be similar to:

{
    'results': [
        {'ocr': 'SL593LM', 'ocr_conf': 99, 'ltrb': [819, 628, 1085, 694], 'ltrb_conf': 90}
        ], 
    'ltrb_proc_sec': 0.22, 
    'ocr_proc_sec': 0.15
}
{
    'results': [
        {'ocr': '123๊ฐ€4568', 'ocr_conf': 99, 'ltrb': [181, 48, 789, 186], 'ltrb_conf': 83}, 
        {'ocr': '123๊ฐ€4568', 'ocr_conf': 99, 'ltrb': [154, 413, 774, 557], 'ltrb_conf': 82}, 
        {'ocr': '123๊ฐ€4568', 'ocr_conf': 99, 'ltrb': [154, 601, 763, 746], 'ltrb_conf': 80}, 
        {'ocr': '123๊ฐ€4568', 'ocr_conf': 99, 'ltrb': [156, 217, 773, 369], 'ltrb_conf': 80}
        ],
    'ltrb_proc_sec': 0.23, 
    'ocr_proc_sec': 0.6
}
  • Results: Contains OCR text, probabilities, and detection coordinate(left, top, right, bottom).
  • Processing Speeds: Provided for license plate detection and OCR.

API for testing

This is for testing purposes

API key limits: 1000 requests per day.
User ID: marearts@public
X-API-Key: J4K9L2Wory34@G7T1Y8rt-PP83uSSvkV3Z6ioSTR!

API Call for EU

To make an API call for EU ANPR, use the following command:

#!bin/bash
curl -X POST https://we303v9ck8.execute-api.eu-west-1.amazonaws.com/Prod/marearts_anpr_eu \
     -H "Content-Type: image/jpeg" \
     -H "x-api-key: your-api-key" \
     -H "user-id: your-user-id" \
     --data-binary "@./path/upload.jpg"

API Call for Korea

To make an API call for Korean ANPR, use the following command:

#!bin/bash
curl -X POST https://we303v9ck8.execute-api.eu-west-1.amazonaws.com/Prod/marearts_anpr \
     -H "Content-Type: image/jpeg" \
     -H "x-api-key: your-api-key" \
     -H "user-id: your-user-id" \
     --data-binary "@./path/upload.jpg"

More Detail

email : hello@marearts.com
home page : https://marearts.com
blog : http://study.marearts.com
paypal : https://study.marearts.com/p/anpr-lpr-solution.html
live test : http://live.marearts.com

๐Ÿ™‡๐Ÿปโ€โ™‚๏ธ Thank you!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

marearts_anpr-3.0.21-cp311-cp311-win_amd64.whl (189.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

marearts_anpr-3.0.21-cp311-cp311-macosx_10_9_universal2.whl (398.4 kB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

marearts_anpr-3.0.21-cp310-cp310-win_amd64.whl (188.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

marearts_anpr-3.0.21-cp310-cp310-macosx_10_9_universal2.whl (398.3 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

marearts_anpr-3.0.21-cp39-cp39-win_amd64.whl (212.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

marearts_anpr-3.0.21-cp39-cp39-macosx_10_9_universal2.whl (401.2 kB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file marearts_anpr-3.0.21-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4fa6975f8bb7002e47554902dd57c56ccbe34b857bb707316d4c11b9e6c9e7d4
MD5 94d88c9c60c8b64c1b5a06d7be099a79
BLAKE2b-256 8de48a4c8e5c9edd6cec287f095d8bc2a903e91376367c12f2d975f5f561ea2c

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9be636e3a340d8d3c6e9169b36aebf97df2b80188136c331ff31124656db7f85
MD5 8756b45923103ebc3f3acd7d3d6d5dcd
BLAKE2b-256 5132faa787a210834285df06ac25ca6a66da2a18dec8f189c61b8c2e2b8ad5f1

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 6a21b56251d57d5d0bee3eb01eb27ed7d86d30051456ee5ee4aefb2c85866927
MD5 0e700d69fbae4c785ab9ebe1f9875ef1
BLAKE2b-256 fefc5367490fc80c5f4245f7305a81f540663c0b7a78ca2c54cc308880b89981

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 448cedba17eec54ae36476f58db1e7d9cc3b5c139eb889f4e59981085f245666
MD5 9595c8e1a5b00355fa50481bcee8237b
BLAKE2b-256 3119d64880c368999b1ad55bc56aee84f63e10258232c20142afda8372dbd86c

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b73049d746b71ad7a355bd3329392e320d2075b44b326121d825ed1fb042ae04
MD5 ad6bee34b966e0224dc495571ecd5b1a
BLAKE2b-256 af2b84c92942c77759c205d7474e61d362d318ecf2ef8867421d796278772ff5

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a5544dee4c42f6ec529ca65f1df73d9783cbd3e731905cb16e8483836ba2ee1e
MD5 e044e80fbef6957e8ce9f48af21448ed
BLAKE2b-256 3baa9585a60eef195f29be3b29ded23d1168322f8fa5828e1ccd387d02eaa09e

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 16535745c9463281ceee80ad3aeeabe02f6d6e0daad6282cb2f23e00fc3eb4fd
MD5 85c78e705c0d3729540ae6175b40efeb
BLAKE2b-256 873614d8b5e425d192dfe83225645c91b9a01f50d1b58875843be212f2928ae6

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c58f72d6d9c46d5ee9af8d2b9fb0efa8d84008e1e757cf0500c83e993a426aa4
MD5 97c2b47de65914fe013553220d34cabe
BLAKE2b-256 3c4b5fd17f4620d05c6c029357ab495a2cb7825f0dfc9bb8d2f60fd33f2af115

See more details on using hashes here.

File details

Details for the file marearts_anpr-3.0.21-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for marearts_anpr-3.0.21-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 f3936e0cb5dce77ffbe318d44fbfc182211bede02d9c8436f3c028ac7355a451
MD5 3add638e32d91e672b048fcc48f6b733
BLAKE2b-256 645e787dcd0802cba185de44416e2ae1882762242d9a283f445ed1daa03d492a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page