Skip to content

MareArts/MareArts-ANPR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

126 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

MareArts ANPR SDK

PyPI version Python versions Downloads License: Proprietary Live Demo

Python SDK iOS App

ANPR Detection Road Objects Detection Mobile App
ANPR Results Road Objects Results Mobile App

Automatic Number Plate Recognition (ANPR) SDK for multiple regions with GPU acceleration support.

๐Ÿ’Ž One License, All Access: SDK + Mobile App + Road Objects Detection - Use everywhere with a single license.


๐ŸŽ‰ MareArts ANPR Mobile App - v1.8.0 Update!

๐Ÿ“ฑ Now available on iOS! Android coming soon.

Experience the power of MareArts ANPR directly on your mobile device! Fast, accurate, on-device license plate recognition for parking management, security, and vehicle tracking.

Download on App Store

โœจ Key Features:

  • ๐Ÿš€ Fast on-device AI processing (~100-160ms)
  • ๐Ÿ“‹ NEW: Smart rules grouping - Organized A-Z for easy navigation
  • ๐ŸŒ NEW: Download rules from web - Upload on marearts.com, download on phone
  • ๐Ÿ”„ NEW: Background sync - Keep using app while syncing
  • ๐Ÿ”„ Complete cloud sync - Keep data in sync across devices
  • ๐Ÿ“Š CSV export/import - Professional data management
  • ๐Ÿ”’ 100% offline capable - privacy first
  • ๐Ÿ“Š Statistics and analytics
  • ๐Ÿ—บ๏ธ Map view with GPS tracking
  • โœ… Whitelist/Blacklist management
  • ๐ŸŒ Multi-region support

๐Ÿ“– Read the complete Mobile App Guide โ†’

๐Ÿ†• Version 1.8.0: Faster performance, smart rules grouping, web-to-phone rule downloads, and background sync!

๐ŸŽ Special Offer: Use the mobile app as your ANPR license - no additional purchase required!
Get your license at marearts.com/products/anpr


๐ŸŒ NEW: ANPR Management Server

Professional server with REST API and Web Dashboard

Deploy a complete ANPR management system with real-time monitoring, detection history, and visual analytics.

Management Server Dashboard

Quick Start:

cd management_server
pip install -r requirements.txt  # First time only
ma-anpr config                   # Configure credentials
python server.py                 # Start server
# Open http://localhost:8000/

Features: REST API, Web Dashboard, Real-time logs, SQLite database, Live model switching

๐Ÿ“– Full Documentation โ†’



๐ŸŽ‰ MareArts SDK v3.8.0

V15 OCR - Next Generation Recognition โญ

  • ๐ŸŽฏ Improved Accuracy: Enhanced recognition across all regions
  • ๐Ÿ“ Better Multi-line Handling: Improved recognition of plates with multiple text lines
  • ๐Ÿš€ Better Performance: Faster and more accurate than V14
  • ๐Ÿ”„ Easy Upgrade to V15: Simple drop-in replacement for V14 OCR
  • โœ… Recommended: V15 OCR is now the default for new projects

Backward Compatible: V14 OCR continues to be fully supported



MareArts ANPR SDK Features

  • ๐ŸŒ Multi-Region Support: Korean, Europe+, North America, China, and Universal license plates
  • ๐Ÿ”„ Dynamic Region Switching: Change regions instantly with set_region() without model reload
  • โšก GPU Acceleration: CUDA, DirectML support for real-time processing
  • ๐ŸŽฏ High Accuracy: Advanced models with regional vocabulary optimization
  • ๐Ÿ“ฆ Batch Processing: Process multiple plates simultaneously
  • ๐Ÿณ Production Ready: Docker API with smart model caching and multi-architecture support

Quick Start

Installation

# CPU Installation
pip install marearts-anpr

# GPU Installation (CUDA, DirectML)
pip install marearts-anpr[gpu]        # NVIDIA CUDA
pip install marearts-anpr[directml]   # Windows GPU (AMD/Intel/NVIDIA)

๐Ÿ“ฆ See complete installation guide

Basic Usage

from marearts_anpr import ma_anpr_detector_v14, ma_anpr_ocr_v15, marearts_anpr_from_image_file

# Initialize V14 Detector
detector = ma_anpr_detector_v14(
    "micro_320p_fp32",
    # 320p models (Fast): pico_320p_fp32/fp16, micro_320p_fp32/fp16, small_320p_fp32/fp16, medium_320p_fp32/fp16, large_320p_fp32/fp16
    # 640p models (High detection): pico_640p_fp32/fp16, micro_640p_fp32/fp16, small_640p_fp32/fp16, medium_640p_fp32/fp16, large_640p_fp32/fp16
    user_name,
    serial_key,
    signature,
    backend="cuda",  # cpu, cuda, directml (auto-selected if "auto")
    conf_thres=0.25,  # Detection confidence threshold (default: 0.25)
    iou_thres=0.5     # IoU threshold for NMS (default: 0.5)
)

# Initialize V15 OCR with regional vocabulary (Recommended - Latest)
ocr = ma_anpr_ocr_v15(
    "small_fp32",       # Model: pico_fp32, micro_fp32, small_fp32, medium_fp32, large_fp32
                        # int8 models available: pico_int8, micro_int8, small_int8, medium_int8, large_int8 (smaller, faster)
    "univ",             # Region: kor/kr, euplus/eup, na, china/cn, univ (choose specific region for best accuracy)
    user_name,
    serial_key,
    signature,
    backend="cuda",  # cpu, cuda, directml (auto-selected if "auto") 
)

# Or use V14 OCR (backward compatible)
# from marearts_anpr import ma_anpr_ocr_v14
# ocr = ma_anpr_ocr_v14("small_fp32", "univ", user_name, serial_key, signature, backend="cuda")

# Or use unified interface with version parameter
# from marearts_anpr import ma_anpr_ocr
# ocr = ma_anpr_ocr("small_fp32", "univ", user_name, serial_key, signature, version='v15', backend="cuda")  # v15: Latest, or version='v14': Stable  

# Process image
result = marearts_anpr_from_image_file(detector, ocr, "image.jpg")
print(result)
# Output: {'results': [{'ocr': 'ABC123', 'ocr_conf': 99, ...}], ...}

๐Ÿ’ก ๐Ÿ”„ Learn more about usage

Dynamic Region Switching

Switch regions without reinitialization (works with both V14 and V15 OCR):

ocr.set_region('euplus')  # Europe+ (or 'eup')
ocr.set_region('kr')   # Korean
ocr.set_region('na')   # North America
ocr.set_region('cn')   # China
ocr.set_region('univ') # Universal (all regions)

๐Ÿ”„ Learn more about dynamic region switching

Multiple Input Formats & CLI

From different image sources:

import cv2
from PIL import Image
from marearts_anpr import marearts_anpr_from_cv2, marearts_anpr_from_pil

result = marearts_anpr_from_cv2(detector, ocr, cv2.imread("image.jpg"))
result = marearts_anpr_from_pil(detector, ocr, Image.open("image.jpg"))
result = marearts_anpr_from_image_file(detector, ocr, "image.jpg")

CLI commands:

ma-anpr image.jpg                    # Process image (V15 OCR is default)
ma-anpr image.jpg --ocr-version v15  # Use V15 OCR (explicit)
ma-anpr image.jpg --ocr-version v14  # Use V14 OCR
ma-anpr test-api image.jpg           # Test API (1000/day limit)
ma-anpr validate                     # Validate license
ma-anpr models                       # List available V14 and V15 models

๐Ÿ”ง See complete usage examples and CLI reference


Model Performance

Detector Performance (V14)

Model Name Detection Rate Speed (GPU) Notes
pico_320p_fp32 96.02% 129 FPS (7.8ms) ๐Ÿ“ฑ Smallest + fast
pico_640p_fp32 98.54% 66 FPS (15.2ms) Balanced
micro_320p_fp32 97.13% 128 FPS (7.8ms) ๐Ÿ† Best overall
micro_320p_fp16 97.13% 56 FPS (17.9ms) ๐Ÿ† Best mobile (50% smaller)
micro_640p_fp32 98.99% 68 FPS (14.6ms) Highest detection
small_320p_fp32 98.00% 142 FPS (7.0ms) โšก Fastest
medium_320p_fp32 98.06% 136 FPS (7.4ms) High detection
large_320p_fp32 98.40% 131 FPS (7.6ms) Strong performance

Note: 320p models are 2ร— faster than 640p. FP16 models are 50% smaller with same detection rate.


OCR Performance (V15)

Average across all regions

Model Name Exact Match Character Accuracy Speed (GPU) Notes
pico_fp32 95.31% 98.24% 278.2 FPS (3.59ms) ๐Ÿ“ฑ Smallest, fast
micro_fp32 94.93% 98.12% 280.8 FPS (3.56ms) Fast with good accuracy
small_fp32 94.16% 97.85% 334.6 FPS (2.99ms) โšก Fastest inference
medium_fp32 94.88% 98.13% 302.3 FPS (3.31ms) Balanced performance
large_fp32 95.26% 98.32% 291.6 FPS (3.43ms) ๐ŸŽฏ Best accuracy

int8 Models (smaller files):

  • pico_int8, micro_int8, small_int8, medium_int8, large_int8
  • 75% smaller file size, similar accuracy

Supported Regions: Korea (kor or kr), Europe+ (euplus or eup), North America (na), China (china or cn), Universal (univ)

Note: Both short codes and full names are accepted

๐Ÿ“Š See all models and benchmarks


Regional Support

MareArts ANPR supports license plates from multiple regions with specialized vocabulary optimization:

  • ๐Ÿ‡ฐ๐Ÿ‡ท Korean (kr) - Korean license plates with Hangul characters (best accuracy: 99.27%)
  • ๐Ÿ‡ช๐Ÿ‡บ Europe+ (eup) - EU countries + Albania, Andorra, Bosnia & Herzegovina, Indonesia, and more
  • ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡จ๐Ÿ‡ฆ๐Ÿ‡ฒ๐Ÿ‡ฝ North America (na) - USA, Canada, and Mexico license plates
  • ๐Ÿ‡จ๐Ÿ‡ณ China (cn) - Chinese license plates with province codes
  • ๐ŸŒ Universal (univ) - All regions (default, but choose specific region for best accuracy)

๐Ÿ’ก Dynamic Region Switching: Use ocr.set_region('kr') to switch regions instantly without reloading the model, saving ~180 MB per additional region.

๐ŸŒ See complete regional support and character sets


Documentation

  • ๐Ÿ“ฆ Installation Guide - Detailed installation options and requirements
  • ๐Ÿ”ง Usage Examples - Python SDK, CLI usage, dynamic region switching, and environment variables
  • ๐Ÿ’ป Example Code - Basic, advanced, and batch processing examples
  • ๐Ÿš€ Model Versions - Available models, benchmarks, and performance metrics
  • ๐ŸŒ Regional Support - Supported countries and character sets
  • ๐Ÿณ Docker Deployment - Container setup, API server, and multi-architecture builds
  • ๐Ÿงช Try ANPR - Test our ANPR without license (1000 requests/day)
  • โ“ FAQ - Licensing, regions, features, and troubleshooting

MareArts Ecosystem

Explore our AI toolkit:

  • marearts-anpr - Automatic Number Plate Recognition (GitHub)
  • ๐ŸŽ‰ marearts-anpr Mobile App - ANPR on iOS & Android (App Store | Guide)
  • marearts-road-objects - Road object detection for persons, vehicles, and 2-wheelers (GitHub)
  • marearts-xcolor - Color extraction and similarity analysis (GitHub)
  • marearts-mast - Real-time panoramic stitching (GitHub)
  • marearts-crystal - Encryption and decryption toolkit (PyPI)

Support & Resources

Resource Link
๐Ÿ“ง Contact hello@marearts.com
๐Ÿ  Homepage https://marearts.com
๐Ÿ’ณ License Purchase ANPR Solution
๐ŸŽฎ Live Demo http://live.marearts.com
๐Ÿ“บ Video Examples YouTube Playlist

License

ยฉ 2024 MareArts. All rights reserved.

This software requires a valid license key. Visit MareArts ANPR Solution for licensing options.


Visitor Map