{"id":5839,"date":"2026-09-25T12:25:22","date_gmt":"2026-09-25T10:25:22","guid":{"rendered":"https:\/\/www.blue-bears.com\/blog\/?p=5839"},"modified":"2026-09-25T14:26:41","modified_gmt":"2026-09-25T12:26:41","slug":"systeme-de-reconnaissance-de-plaques-dimmatriculation-synthese-technique","status":"publish","type":"post","link":"http:\/\/www.blue-bears.com\/blog\/?p=5839","title":{"rendered":"Syst\u00e8me de Reconnaissance de Plaques d&rsquo;Immatriculation &#8211; Synth\u00e8se Technique"},"content":{"rendered":"<p>Sur Google Doc :<\/p>\n<p><a href=\"https:\/\/docs.google.com\/document\/d\/18xg98HDMNKnW6oTKywxc-yvDF7uGBUMt_YRiBnIUhiU\/edit?usp=sharing_eip&amp;ts=6ab50583\">https:\/\/docs.google.com\/document\/d\/18xg98HDMNKnW6oTKywxc-yvDF7uGBUMt_YRiBnIUhiU\/edit?usp=sharing_eip&amp;amp;ts=6ab50583<\/a><\/p>\n<h1>Synth\u00e8se Technique : Syst\u00e8me Portable de Reconnaissance de Plaques d&rsquo;Immatriculation (ALPR \/ LPR)<\/h1>\n<h2>1. Pipeline Logiciel &amp; Traitement d&rsquo;Image (Python)<\/h2>\n<p>Pour garantir une identification rapide et optimis\u00e9e avec une cible de traitement inf\u00e9rieure \u00e0 une seconde par capture, l&rsquo;architecture logicielle repose sur une suite de biblioth\u00e8ques sp\u00e9cialis\u00e9es.<\/p>\n<p>Modules Python requis :<\/p>\n<ul>\n<li>OpenCV (opencv-python) : Centralise le pr\u00e9traitement de l&rsquo;image. Cela inclut la conversion en niveaux de gris, l&rsquo;application de filtres (flou gaussien ou m\u00e9dian) pour la r\u00e9duction du bruit, et la d\u00e9tection de contours via l&rsquo;algorithme de Canny pour segmenter pr\u00e9cis\u00e9ment la plaque.<\/li>\n<li>NumPy (numpy) : Utilis\u00e9 pour les manipulations matricielles haute performance et les transformations g\u00e9om\u00e9triques n\u00e9cessaires au redressement des perspectives.<\/li>\n<li>Moteur d&rsquo;OCR (pytesseract ou easyocr) :\n<ul>\n<li>Extraction des caract\u00e8res alphanum\u00e9riques apr\u00e8s binarisation de la zone d&rsquo;int\u00e9r\u00eat (via seuillage d&rsquo;Otsu ou seuillage adaptatif).<\/li>\n<\/ul>\n<\/li>\n<li>Connecteur Base de Donn\u00e9es (mysql-connector-python ou pymysql) : Assure la transmission et l&rsquo;enregistrement distant des donn\u00e9es vers le serveur central.<\/li>\n<\/ul>\n<h2>2. Architecture Mat\u00e9rielle &amp; Transmission Longue Port\u00e9e<\/h2>\n<p>\u00c9quipement de Capture et Transmission :<\/p>\n<ul>\n<li>ESP32-CAM : Module compact assurant la prise de vue et le contr\u00f4le initial de la cam\u00e9ra OV2640.<\/li>\n<li>TTGO LoRa32 (ESP32 + Module LoRa SX1276\/SX1278) :\n<ul>\n<li>Format : Solution tout-en-un int\u00e9grant le microcontr\u00f4leur et la radio LoRa sur un PCB unique.<\/li>\n<li>Dimensions : Ultra-compact (~50 mm x 25 mm x 10 mm), id\u00e9al pour une int\u00e9gration portable.<\/li>\n<li>Port\u00e9e Radio : Utilisation du protocole LoRa pour une communication robuste atteignant 300 m\u00e8tres en environnement urbain et davantage en champ libre.<\/li>\n<li>Consommation \u00e9lectrique :\n<ul>\n<li>\u00c9mission active : 30 mA \u00e0 120 mA selon la puissance de sortie.<\/li>\n<li>Mode veille profonde (Deep Sleep) : consommation r\u00e9siduelle de quelques \u00b5A.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>3. Alimentation &amp; Autonomie (3 Heures)<\/h2>\n<p>Le syst\u00e8me est dimensionn\u00e9 pour une utilisation terrain sans recharge imm\u00e9diate.<\/p>\n<ul>\n<li>Consommation globale moyenne : Estim\u00e9e entre 150 mA et 250 mA sous 3.3V\/5V.<\/li>\n<li>Batterie pr\u00e9conis\u00e9e : Cellule Li-Po ou Li-ion (type 18650) avec une capacit\u00e9 de 1200 mAh \u00e0 2000 mAh.<\/li>\n<li>Autonomie th\u00e9orique : Assure plus de 3 heures de fonctionnement continu en pleine charge.<\/li>\n<\/ul>\n<h2>4. Int\u00e9gration Base de Donn\u00e9es (MySQL Local)<\/h2>\n<p>L&rsquo;exportation des donn\u00e9es vers une base MySQL locale sur le r\u00e9seau r\u00e9cepteur s&rsquo;effectue selon deux architectures possibles :<\/p>\n<ol>\n<li>Station R\u00e9ceptrice \/ Gateway : Un module r\u00e9cepteur LoRa reli\u00e9 en USB ou via le r\u00e9seau local \u00e0 un serveur (PC ou Raspberry Pi).<\/li>\n<li>Flux de Donn\u00e9es :\n<ul>\n<li>Option A (Interm\u00e9diaire API) : La passerelle transmet la cha\u00eene LoRa \u00e0 un service web (Flask ou FastAPI) qui valide et ins\u00e8re la donn\u00e9e (Plaque, Horodatage) dans MySQL.<\/li>\n<li>Option B (Script Direct) : Un script Python d\u00e9di\u00e9 interroge le port s\u00e9rie du r\u00e9cepteur LoRa et ex\u00e9cute les requ\u00eates INSERT directement via le connecteur SQL.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h2>5. \u00c9valuation du Co\u00fbt Global du Projet<\/h2>\n<table cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"middle\">Composant<\/td>\n<td valign=\"middle\">Description<\/td>\n<td valign=\"middle\">Estimation Tarifaire<\/td>\n<\/tr>\n<tr>\n<td valign=\"middle\">Module Cam\u00e9ra<\/td>\n<td valign=\"middle\">ESP32-CAM + Cam\u00e9ra OV2640<\/td>\n<td valign=\"middle\">6 \u20ac \u2013 10 \u20ac<\/td>\n<\/tr>\n<tr>\n<td valign=\"middle\">Module T\u00e9l\u00e9com<\/td>\n<td valign=\"middle\">TTGO LoRa32 (ESP32 + LoRa)<\/td>\n<td valign=\"middle\">15 \u20ac \u2013 20 \u20ac<\/td>\n<\/tr>\n<tr>\n<td valign=\"middle\">Alimentation<\/td>\n<td valign=\"middle\">Batterie Li-Po\/18650 + Circuit TP4056<\/td>\n<td valign=\"middle\">8 \u20ac \u2013 12 \u20ac<\/td>\n<\/tr>\n<tr>\n<td valign=\"middle\">Bo\u00eetier<\/td>\n<td valign=\"middle\">C\u00e2blage et structure de protection<\/td>\n<td valign=\"middle\">5 \u20ac \u2013 10 \u20ac<\/td>\n<\/tr>\n<tr>\n<td valign=\"middle\">TOTAL ESTIM\u00c9<\/td>\n<td valign=\"middle\">Syst\u00e8me embarqu\u00e9 complet<\/td>\n<td valign=\"middle\">40 \u20ac \u2013 60 \u20ac<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Personne Responsable Technique du Projet<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sur Google Doc : https:\/\/docs.google.com\/document\/d\/18xg98HDMNKnW6oTKywxc-yvDF7uGBUMt_YRiBnIUhiU\/edit?usp=sharing_eip&amp;amp;ts=6ab50583 Synth\u00e8se Technique : Syst\u00e8me Portable de Reconnaissance de Plaques d&rsquo;Immatriculation (ALPR \/ LPR) 1. Pipeline Logiciel &amp; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5839","post","type-post","status-publish","format-standard","hentry","category-non-classe"],"_links":{"self":[{"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5839","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5839"}],"version-history":[{"count":4,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5839\/revisions"}],"predecessor-version":[{"id":5843,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5839\/revisions\/5843"}],"wp:attachment":[{"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5839"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5839"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.blue-bears.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5839"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}