# WPODNet: Build with Torch
## Introduction
This repository implements the proposed method from **ECCV 2018 paper ["License Plate Detection and Recognition in Unconstrained Scenarios"](https://openaccess.thecvf.com/content_ECCV_2018/papers/Sergio_Silva_License_Plate_Detection_ECCV_2018_paper.pdf)** in Torch.
The model in Keras is built by the essay author, see [sergiomsilva/alpr-unconstrained](https://github.com/sergiomsilva/alpr-unconstrained).
<table>
<tr>
<td> Example </td>
<td> <img src="./docs/sample/original/03009.jpg" width="300px"></td>
<td> <img src="./docs/sample/original/03016.jpg" width="300px"></td>
<td> <img src="./docs/sample/original/03025.jpg" width="300px"></td>
</tr>
<tr>
<td> Annotated </td>
<td><img src="./docs/sample/annotated/03009.jpg" width="300px"></td>
<td><img src="./docs/sample/annotated/03016.jpg" width="300px"></td>
<td><img src="./docs/sample/annotated/03025.jpg" width="300px"></td>
</tr>
<tr>
<td> Warp perspective </td>
<td><img src="./docs/sample/warped/03009.jpg" width="300px"></td>
<td><img src="./docs/sample/warped/03016.jpg" width="300px"></td>
<td><img src="./docs/sample/warped/03025.jpg" width="300px"></td>
</tr>
<tr>
<td> Confidence </td>
<td> 0.9841 </td>
<td> 0.9945 </td>
<td> 0.9979 </td>
</tr>
</table>
## Quick Run
1. Clone this repository
```bash
git clone https://github.com/Pandede/WPODNet-Pytorch.git
```
2. Install [PyTorch](https://pytorch.org) depends on your environment.
3. Install packages in `requirements.txt`
```bash
pip3 install -r requirements.txt
```
4. Download the pretrained weight `wpodnet.pth` from [here](https://github.com/Pandede/WPODNet-Pytorch/releases/download/1.0.0/wpodnet.pth)
5. Predict with an image
```bash
python3 predict.py docs/sample/original/03009.jpg # The path to the an image
# docs/sample/original # OR the path to the directory with bulk of images
-w weights/wpodnet.pth # The path to the weight
--save-annotated docs/sample/annotated # The directory to save the annotated images
--save-warped docs/sample/warped # The directory to save the warped images
```
## Future works
- [x] Inference with GPU
- [x] Inference with bulk of images
- [ ] Inference with video
- [ ] Introduce training procedure
- [x] The matrix multiplication seems weird in function `postprocess`, may improve the computation.
## Citation
```bibtex
@inproceedings{silva2018license,
title={License plate detection and recognition in unconstrained scenarios},
author={Silva, Sergio Montazzolli and Jung, Cl{\'a}udio Rosito},
booktitle={Proceedings of the European conference on computer vision (ECCV)},
pages={580--596},
year={2018}
}
```
Raw data
{
"_id": null,
"home_page": null,
"name": "wpodnet-pytorch",
"maintainer": "Pandede",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "python, ai, computer-vision, deep-learning, torch, object-detection, license-plate-recognition, wpod, wpod-net",
"author": "Pandede",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/08/36/32a00c5ea160ae46b7bef6b6b90d31dd09615813f87e7f1ca38b53f170d2/wpodnet-pytorch-1.0.3.tar.gz",
"platform": null,
"description": "# WPODNet: Build with Torch\n## Introduction\nThis repository implements the proposed method from **ECCV 2018 paper [\"License Plate Detection and Recognition in Unconstrained Scenarios\"](https://openaccess.thecvf.com/content_ECCV_2018/papers/Sergio_Silva_License_Plate_Detection_ECCV_2018_paper.pdf)** in Torch.\n\nThe model in Keras is built by the essay author, see [sergiomsilva/alpr-unconstrained](https://github.com/sergiomsilva/alpr-unconstrained).\n\n\n<table>\n <tr>\n <td> Example </td>\n <td> <img src=\"./docs/sample/original/03009.jpg\" width=\"300px\"></td>\n <td> <img src=\"./docs/sample/original/03016.jpg\" width=\"300px\"></td>\n <td> <img src=\"./docs/sample/original/03025.jpg\" width=\"300px\"></td>\n </tr> \n <tr>\n <td> Annotated </td>\n <td><img src=\"./docs/sample/annotated/03009.jpg\" width=\"300px\"></td>\n <td><img src=\"./docs/sample/annotated/03016.jpg\" width=\"300px\"></td>\n <td><img src=\"./docs/sample/annotated/03025.jpg\" width=\"300px\"></td>\n </tr>\n <tr>\n <td> Warp perspective </td>\n <td><img src=\"./docs/sample/warped/03009.jpg\" width=\"300px\"></td>\n <td><img src=\"./docs/sample/warped/03016.jpg\" width=\"300px\"></td>\n <td><img src=\"./docs/sample/warped/03025.jpg\" width=\"300px\"></td>\n </tr>\n <tr>\n <td> Confidence </td>\n <td> 0.9841 </td>\n <td> 0.9945 </td>\n <td> 0.9979 </td>\n </tr>\n</table>\n\n## Quick Run\n1. Clone this repository\n ```bash\n git clone https://github.com/Pandede/WPODNet-Pytorch.git\n ```\n2. Install [PyTorch](https://pytorch.org) depends on your environment.\n3. Install packages in `requirements.txt`\n ```bash\n pip3 install -r requirements.txt\n ```\n4. Download the pretrained weight `wpodnet.pth` from [here](https://github.com/Pandede/WPODNet-Pytorch/releases/download/1.0.0/wpodnet.pth)\n5. Predict with an image\n ```bash\n python3 predict.py docs/sample/original/03009.jpg # The path to the an image\n # docs/sample/original # OR the path to the directory with bulk of images\n -w weights/wpodnet.pth # The path to the weight\n --save-annotated docs/sample/annotated # The directory to save the annotated images\n --save-warped docs/sample/warped # The directory to save the warped images\n ```\n\n## Future works\n- [x] Inference with GPU\n- [x] Inference with bulk of images\n- [ ] Inference with video\n- [ ] Introduce training procedure\n- [x] The matrix multiplication seems weird in function `postprocess`, may improve the computation.\n\n## Citation\n```bibtex\n@inproceedings{silva2018license,\n title={License plate detection and recognition in unconstrained scenarios},\n author={Silva, Sergio Montazzolli and Jung, Cl{\\'a}udio Rosito},\n booktitle={Proceedings of the European conference on computer vision (ECCV)},\n pages={580--596},\n year={2018}\n}\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "The implementation of ECCV 2018 paper \"License Plate Detection and Recognition in Unconstrained Scenarios\" in PyTorch",
"version": "1.0.3",
"project_urls": {
"Source": "https://github.com/Pandede/WPODNet-Pytorch"
},
"split_keywords": [
"python",
" ai",
" computer-vision",
" deep-learning",
" torch",
" object-detection",
" license-plate-recognition",
" wpod",
" wpod-net"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8e64155ee2a5252c441bf403c2f8f5566b7bfd33242dd607e99f2704e5ae2fbd",
"md5": "5307c79eee7d4ee4cd4662befb1930fa",
"sha256": "47a55bd7e8c65028ef4dd82d222d243fdc48846af596fae85f2e8570fdf2585b"
},
"downloads": -1,
"filename": "wpodnet_pytorch-1.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5307c79eee7d4ee4cd4662befb1930fa",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 5856,
"upload_time": "2024-04-10T09:38:46",
"upload_time_iso_8601": "2024-04-10T09:38:46.157359Z",
"url": "https://files.pythonhosted.org/packages/8e/64/155ee2a5252c441bf403c2f8f5566b7bfd33242dd607e99f2704e5ae2fbd/wpodnet_pytorch-1.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "083632a00c5ea160ae46b7bef6b6b90d31dd09615813f87e7f1ca38b53f170d2",
"md5": "e69d165521f14f8b69b581f4be459e33",
"sha256": "fcc37376989bd972dee7b8cd0c7a8dd27c9e7314995197085647c1c332c118b0"
},
"downloads": -1,
"filename": "wpodnet-pytorch-1.0.3.tar.gz",
"has_sig": false,
"md5_digest": "e69d165521f14f8b69b581f4be459e33",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 5796,
"upload_time": "2024-04-10T09:38:47",
"upload_time_iso_8601": "2024-04-10T09:38:47.618990Z",
"url": "https://files.pythonhosted.org/packages/08/36/32a00c5ea160ae46b7bef6b6b90d31dd09615813f87e7f1ca38b53f170d2/wpodnet-pytorch-1.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-10 09:38:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Pandede",
"github_project": "WPODNet-Pytorch",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "wpodnet-pytorch"
}