# 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:**
```python
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
ํ๊ตญ ์๋์ฐจ ๋ฒํธํ ์ธ์ ์๋ฃจ์
**์ธ์ ๊ฐ๋ฅ ๋ฌธ์:**
```python
char_list = [
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'๊ฐ', '๊ฐ', '๊ฑฐ', '๊ฒฝ', '๊ณ ', '๊ด', '๊ตฌ', '๊ธฐ',
'๋', '๋จ', '๋', '๋
ธ', '๋',
'๋ค', '๋', '๋', '๋', '๋', '๋',
'๋ผ', '๋ฌ', '๋ก', '๋ฃจ',
'๋ง', '๋จธ', '๋ชจ', '๋ฌด', '๋ฌธ',
'๋ฐ', '๋ฐฐ', '๋ฒ', '๋ณด', '๋ถ', '๋ถ',
'์ฌ', '์ฐ', '์', '์ธ', '์', '์',
'์', '์ด', '์ค', '์ฐ', '์ธ', '์', '์ก', '์ธ',
'์', '์ ', '์ ', '์ ', '์กฐ', '์ข
', '์ฃผ',
'์ฒ', '์ถฉ',
'ํ', 'ํ', 'ํธ'
]
```
## Installation
To install the MareArts ANPR package, use the following pip command:
```bash
pip install marearts-anpr
```
## ๐ชช License Key
**For private keys,** please visit [MareArts ANPR Solution](https://study.marearts.com/p/anpr-lpr-solution.html).
For inquiries about private keys, contact us at [hello@marearts.com](mailto:hello@marearts.com).
## ๐ค Live Test
[MareArts ๐ฌ Live](http://live.marearts.com)
## ๐บ ANPR Result Videos
[Check here](https://www.youtube.com/playlist?list=PLvX6vpRszMkxJBJf4EjQ5VCnmkjfE59-J) 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:
```python
# 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:
```python
{
'results': [
{'ocr': 'SL593LM', 'ocr_conf': 99, 'ltrb': [819, 628, 1085, 694], 'ltrb_conf': 90}
],
'ltrb_proc_sec': 0.22,
'ocr_proc_sec': 0.15
}
```
```python
{
'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. <br>
**User ID:** `marearts@public` <br>
**X-API-Key:** `J4K9L2Wory34@G7T1Y8rt-PP83uSSvkV3Z6ioSTR!`
### API Call for EU
To make an API call for EU ANPR, use the following command:
```bash
#!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:
```bash
#!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 <br>
home page : https://marearts.com <br>
blog : http://study.marearts.com <br>
paypal : https://study.marearts.com/p/anpr-lpr-solution.html <br>
live test : http://live.marearts.com
๐๐ปโโ๏ธ Thank you!
Raw data
{
"_id": null,
"home_page": "https://www.marearts.com",
"name": "marearts-anpr",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.12,>=3.9",
"maintainer_email": null,
"keywords": "anpr, license plate recognition, computer vision",
"author": "MareArts",
"author_email": "MareArts <hello@marearts.com>",
"download_url": null,
"platform": null,
"description": "# MareArts ANPR SDK\n\n### \ud83c\uddea\ud83c\uddfa ANPR EU (European Union)\nAuto Number Plate Recognition for EU countries\n\n\ud83e\udd8b **Available Countries:** (We are adding more countries.)\n``` \n\ud83c\udde6\ud83c\uddf1 Albania \ud83c\udde8\ud83c\uddff Czechia \ud83c\udde6\ud83c\udde9 Andorra \ud83c\udde9\ud83c\uddf0 Denmark \ud83c\udde6\ud83c\uddf9 Austria \ud83c\uddeb\ud83c\uddee Finland\n\ud83c\udde7\ud83c\uddea Belgium \ud83c\uddeb\ud83c\uddf7 France \ud83c\udde7\ud83c\udde6 Bosnia and Herzegovina \n\ud83c\udde9\ud83c\uddea Germany \ud83c\udde7\ud83c\uddec Bulgaria \ud83c\uddec\ud83c\uddf7 Greece \ud83c\udded\ud83c\uddf7 Croatia \ud83c\udded\ud83c\uddfa Hungary \ud83c\udde8\ud83c\uddfe Cyprus \ud83c\uddee\ud83c\uddea Ireland\n```\n\n\ud83e\udd8b **Recognisable Characters:**\n```python\nchar_list = [\n \"-\", \".\", \"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\",\n \"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\", \"J\", \"K\", \"L\", \"M\", \"N\",\n \"O\", \"P\", \"Q\", \"R\", \"S\", \"T\", \"U\", \"V\", \"W\", \"X\", \"Y\", \"Z\", \"a\", \"d\", \"i\", \n \"m\", \"o\", \"\u00d6\", \"\u00dc\", \"\u0106\", \"\u010c\", \"\u0110\", \"\u0160\", \"\u017d\", \"\u041f\"\n]\n```\n\n### \ud83c\uddf0\ud83c\uddf7 ANPR Korea\n\ud55c\uad6d \uc790\ub3d9\ucc28 \ubc88\ud638\ud310 \uc778\uc2dd \uc194\ub8e8\uc158\n\n**\uc778\uc2dd \uac00\ub2a5 \ubb38\uc790:**\n```python\nchar_list = [\n '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', \n '\uac00', '\uac15', '\uac70', '\uacbd', '\uace0', '\uad11', '\uad6c', '\uae30',\n '\ub098', '\ub0a8', '\ub108', '\ub178', '\ub204',\n '\ub2e4', '\ub300', '\ub354', '\ub3c4', '\ub3d9', '\ub450',\n '\ub77c', '\ub7ec', '\ub85c', '\ub8e8',\n '\ub9c8', '\uba38', '\ubaa8', '\ubb34', '\ubb38',\n '\ubc14', '\ubc30', '\ubc84', '\ubcf4', '\ubd80', '\ubd81',\n '\uc0ac', '\uc0b0', '\uc11c', '\uc138', '\uc18c', '\uc218',\n '\uc544', '\uc5b4', '\uc624', '\uc6b0', '\uc6b8', '\uc6d0', '\uc721', '\uc778',\n '\uc790', '\uc800', '\uc804', '\uc81c', '\uc870', '\uc885', '\uc8fc',\n '\ucc9c', '\ucda9',\n '\ud558', '\ud5c8', '\ud638'\n]\n```\n\n## Installation\n\nTo install the MareArts ANPR package, use the following pip command:\n\n```bash\npip install marearts-anpr\n```\n\n## \ud83e\udeaa License Key\n\n**For private keys,** please visit [MareArts ANPR Solution](https://study.marearts.com/p/anpr-lpr-solution.html).\nFor inquiries about private keys, contact us at [hello@marearts.com](mailto:hello@marearts.com).\n\n## \ud83e\udd16 Live Test\n[MareArts \ud83c\udfac Live](http://live.marearts.com)\n\n## \ud83d\udcfa ANPR Result Videos\n[Check here](https://www.youtube.com/playlist?list=PLvX6vpRszMkxJBJf4EjQ5VCnmkjfE59-J) to see the license plate recognition results in YouTube videos.\n\n## \ud83d\udcdd Using SDK\n\n### \ud83d\udd2c SDK Usage\nHere's an example of how to use the updated SDK:\n\n```python\n# pip install marearts-anpr\nimport cv2\nfrom PIL import Image\nfrom marearts_anpr import ma_anpr_detector\nfrom marearts_anpr import ma_anpr_ocr\nfrom marearts_anpr import marearts_anpr_from_pil\nfrom marearts_anpr import marearts_anpr_from_image_file\nfrom marearts_anpr import marearts_anpr_from_cv2\n\nif __name__ == '__main__':\n \n #################################\n ## Initiate MareArts ANPR\n print(\"EU ANPR\")\n user_name = \"your_email\"\n serial_key = \"your_serial_key\"\n detector_model_version = \"middle\" # Options: middle, v10_small, v10_middle, v10_large\n ocr_model_version = \"eu\" # Options: eu, kr\n\n # MareArts ANPR Detector Inference\n anpr_d = ma_anpr_detector(detector_model_version, user_name, serial_key, conf_thres=0.3, iou_thres=0.5)\n # MareArts ANPR OCR Inference\n anpr_r = ma_anpr_ocr(ocr_model_version, user_name, serial_key)\n #################################\n\n #################################\n # Routine Task 1 - Predict from File\n image_path = './sample_images/eu_test1.jpg'\n output = marearts_anpr_from_image_file(anpr_d, anpr_r, image_path)\n print(output)\n\n # Routine Task 2 - Predict from cv2\n img = cv2.imread(image_path)\n output = marearts_anpr_from_cv2(anpr_d, anpr_r, img)\n print(output)\n\n # Routine Task 3 - Predict from Pillow\n pil_img = Image.open(image_path)\n output = marearts_anpr_from_pil(anpr_d, anpr_r, pil_img)\n print(output)\n #################################\n\n\n #################################\n ## Initiate MareArts ANPR for Korea\n print(\"ANPR Korean\")\n # user_name, serial_key are already defined\n # anpr_d is also already initiated before\n ocr_model_version = \"kr\"\n # MareArts ANPR OCR Inference\n anpr_r = ma_anpr_ocr(ocr_model_version, user_name, serial_key)\n\n #################################\n # Routine Task 1 - Predict from File\n image_path = './sample_images/kr_test2.jpg'\n output = marearts_anpr_from_image_file(anpr_d, anpr_r, image_path)\n print(output)\n\n # Routine Task 2 - Predict from cv2\n img = cv2.imread(image_path)\n output = marearts_anpr_from_cv2(anpr_d, anpr_r, img)\n print(output)\n\n # Routine Task 3 - Predict from Pillow\n pil_img = Image.open(image_path)\n output = marearts_anpr_from_pil(anpr_d, anpr_r, pil_img)\n print(output)\n #################################\n```\n\n### \ud83d\udd2c Returns\nThe output from the ANPR will be similar to:\n\n```python\n{\n 'results': [\n {'ocr': 'SL593LM', 'ocr_conf': 99, 'ltrb': [819, 628, 1085, 694], 'ltrb_conf': 90}\n ], \n 'ltrb_proc_sec': 0.22, \n 'ocr_proc_sec': 0.15\n}\n```\n```python\n{\n 'results': [\n {'ocr': '123\uac004568', 'ocr_conf': 99, 'ltrb': [181, 48, 789, 186], 'ltrb_conf': 83}, \n {'ocr': '123\uac004568', 'ocr_conf': 99, 'ltrb': [154, 413, 774, 557], 'ltrb_conf': 82}, \n {'ocr': '123\uac004568', 'ocr_conf': 99, 'ltrb': [154, 601, 763, 746], 'ltrb_conf': 80}, \n {'ocr': '123\uac004568', 'ocr_conf': 99, 'ltrb': [156, 217, 773, 369], 'ltrb_conf': 80}\n ],\n 'ltrb_proc_sec': 0.23, \n 'ocr_proc_sec': 0.6\n}\n```\n\n- **Results:** Contains OCR text, probabilities, and detection coordinate(left, top, right, bottom).\n- **Processing Speeds:** Provided for license plate detection and OCR.\n\n## API for testing\n\n### This is for testing purposes\n**API key limits:** 1000 requests per day. <br>\n**User ID:** `marearts@public` <br>\n**X-API-Key:** `J4K9L2Wory34@G7T1Y8rt-PP83uSSvkV3Z6ioSTR!`\n\n### API Call for EU\n\nTo make an API call for EU ANPR, use the following command:\n\n```bash\n#!bin/bash\ncurl -X POST https://we303v9ck8.execute-api.eu-west-1.amazonaws.com/Prod/marearts_anpr_eu \\\n -H \"Content-Type: image/jpeg\" \\\n -H \"x-api-key: your-api-key\" \\\n -H \"user-id: your-user-id\" \\\n --data-binary \"@./path/upload.jpg\"\n```\n\n### API Call for Korea\n\nTo make an API call for Korean ANPR, use the following command:\n\n```bash\n#!bin/bash\ncurl -X POST https://we303v9ck8.execute-api.eu-west-1.amazonaws.com/Prod/marearts_anpr \\\n -H \"Content-Type: image/jpeg\" \\\n -H \"x-api-key: your-api-key\" \\\n -H \"user-id: your-user-id\" \\\n --data-binary \"@./path/upload.jpg\"\n```\n\n\n\n## More Detail\nemail : hello@marearts.com <br>\nhome page : https://marearts.com <br>\nblog : http://study.marearts.com <br>\npaypal : https://study.marearts.com/p/anpr-lpr-solution.html <br>\nlive test : http://live.marearts.com\n\n\n\ud83d\ude47\ud83c\udffb\u200d\u2642\ufe0f Thank you!\n",
"bugtrack_url": null,
"license": null,
"summary": "MareArts ANPR (Automatic Number Plate Recognition) library",
"version": "3.1.3",
"project_urls": {
"Homepage": "https://github.com/marearts/marearts-anpr"
},
"split_keywords": [
"anpr",
" license plate recognition",
" computer vision"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e639a3b1ed720dff4407bf675fee4c2ee70fc482c6714e4ef7cc30054610c58a",
"md5": "1b45bbc59612c8784a701d9ec9c8f34f",
"sha256": "8090967465b4f5171b35525ec8f21541543d97ae8aede93e8c99aa9db469e9b7"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp310-cp310-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "1b45bbc59612c8784a701d9ec9c8f34f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.12,>=3.9",
"size": 401668,
"upload_time": "2024-10-19T18:39:40",
"upload_time_iso_8601": "2024-10-19T18:39:40.770316Z",
"url": "https://files.pythonhosted.org/packages/e6/39/a3b1ed720dff4407bf675fee4c2ee70fc482c6714e4ef7cc30054610c58a/marearts_anpr-3.1.3-cp310-cp310-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f61694c7afa844a197273040e62b008c4655d28256c85084fa24686ea279b66",
"md5": "4fbce8baefe70f79b888c33e288f04e7",
"sha256": "a9b28405d653073a72885e78d080b27903ad0d722ce7e3549f967f40ab11881e"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp310-cp310-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "4fbce8baefe70f79b888c33e288f04e7",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.12,>=3.9",
"size": 1192391,
"upload_time": "2024-10-19T18:39:42",
"upload_time_iso_8601": "2024-10-19T18:39:42.797502Z",
"url": "https://files.pythonhosted.org/packages/6f/61/694c7afa844a197273040e62b008c4655d28256c85084fa24686ea279b66/marearts_anpr-3.1.3-cp310-cp310-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fda189f5bd697d2ddc47df9d6cb492484933dae9b971e43538687c32e64b6e0f",
"md5": "bd939659fca348cca8c422a22a49aa74",
"sha256": "b7a266649073e76a081fe89223e4155e79123135db9b7aec608b36d1e7f7ef0e"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "bd939659fca348cca8c422a22a49aa74",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.12,>=3.9",
"size": 190357,
"upload_time": "2024-10-19T18:39:44",
"upload_time_iso_8601": "2024-10-19T18:39:44.751500Z",
"url": "https://files.pythonhosted.org/packages/fd/a1/89f5bd697d2ddc47df9d6cb492484933dae9b971e43538687c32e64b6e0f/marearts_anpr-3.1.3-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1c8a557221b350b80d9fb5131a3d4c9e9d66bc542da50b11ce44d3342e3ba0c5",
"md5": "ce8fb6046a044df89cd39eff3ab49414",
"sha256": "31de84fc294c5695a9b7b29a7542087126f2cdc3576c2c09ecc38d2537980738"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp311-cp311-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "ce8fb6046a044df89cd39eff3ab49414",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.12,>=3.9",
"size": 401676,
"upload_time": "2024-10-19T18:39:45",
"upload_time_iso_8601": "2024-10-19T18:39:45.858363Z",
"url": "https://files.pythonhosted.org/packages/1c/8a/557221b350b80d9fb5131a3d4c9e9d66bc542da50b11ce44d3342e3ba0c5/marearts_anpr-3.1.3-cp311-cp311-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ddf6b124eee5a21a4f31192c994b056cacf82b1234bf907784383763b3eeef14",
"md5": "abe13cfd883837e2c368edf5aeb87ec9",
"sha256": "89272c371d00952492b5c3ee5478f4e62a4341b708748269a59ab2e4c1699229"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp311-cp311-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "abe13cfd883837e2c368edf5aeb87ec9",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.12,>=3.9",
"size": 1262246,
"upload_time": "2024-10-19T18:39:47",
"upload_time_iso_8601": "2024-10-19T18:39:47.642131Z",
"url": "https://files.pythonhosted.org/packages/dd/f6/b124eee5a21a4f31192c994b056cacf82b1234bf907784383763b3eeef14/marearts_anpr-3.1.3-cp311-cp311-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dd4f000fada3e17eff23c2da6855b2e68e0a8a96eac3cc061cd56b4c6d84892f",
"md5": "a7206c84f19c6a320667161d69a1d7b1",
"sha256": "6441839b6b4824c167d045512a1917ca1ee4c1232b30c37eb47b08652a1cb6e0"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "a7206c84f19c6a320667161d69a1d7b1",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.12,>=3.9",
"size": 190974,
"upload_time": "2024-10-19T18:39:48",
"upload_time_iso_8601": "2024-10-19T18:39:48.817048Z",
"url": "https://files.pythonhosted.org/packages/dd/4f/000fada3e17eff23c2da6855b2e68e0a8a96eac3cc061cd56b4c6d84892f/marearts_anpr-3.1.3-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c693a5c70ee863ec46c8eb80b23c6fe4e9e1a08639a2ed33aaabea5e9962819a",
"md5": "3ab8a46ab51b41b61d5401b93e7452e3",
"sha256": "2062ce19596f58811b616f9cba9c2a1b59111490f7c31dbdb86e81ec64544504"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp39-cp39-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "3ab8a46ab51b41b61d5401b93e7452e3",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<3.12,>=3.9",
"size": 404599,
"upload_time": "2024-10-19T18:39:50",
"upload_time_iso_8601": "2024-10-19T18:39:50.622807Z",
"url": "https://files.pythonhosted.org/packages/c6/93/a5c70ee863ec46c8eb80b23c6fe4e9e1a08639a2ed33aaabea5e9962819a/marearts_anpr-3.1.3-cp39-cp39-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ac3f7fc2a476fa3b7fcd860691c63bff6596be265ea7be57f03cff1c7070a92e",
"md5": "7f6e6d057472f4f32c4a374ae059e55c",
"sha256": "997ecd3733d9ef9975236effa51bdb43df6466f97b9dffd4327703c36cef6e25"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp39-cp39-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "7f6e6d057472f4f32c4a374ae059e55c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<3.12,>=3.9",
"size": 1197792,
"upload_time": "2024-10-19T18:39:52",
"upload_time_iso_8601": "2024-10-19T18:39:52.232455Z",
"url": "https://files.pythonhosted.org/packages/ac/3f/7fc2a476fa3b7fcd860691c63bff6596be265ea7be57f03cff1c7070a92e/marearts_anpr-3.1.3-cp39-cp39-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a17c6841e3a5ce3d2e03faee0ac7ef50b9d9980a08026935eafd8aeaf515a99f",
"md5": "a001dc481b29595bc817aefacaa5623d",
"sha256": "5ffdf8b466f69808e4ca77c81a7583169e54c1073962a34b7596944940bea856"
},
"downloads": -1,
"filename": "marearts_anpr-3.1.3-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "a001dc481b29595bc817aefacaa5623d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<3.12,>=3.9",
"size": 214052,
"upload_time": "2024-10-19T18:39:54",
"upload_time_iso_8601": "2024-10-19T18:39:54.132578Z",
"url": "https://files.pythonhosted.org/packages/a1/7c/6841e3a5ce3d2e03faee0ac7ef50b9d9980a08026935eafd8aeaf515a99f/marearts_anpr-3.1.3-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-19 18:39:40",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "marearts",
"github_project": "marearts-anpr",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "marearts-anpr"
}