-
zakariaeyahya a rédigéa9bf070a
- [0.0.3]
- Changelog
- [5.3.0] - 2025-08-01
- [5.2.0] - 2025-08-01
- [5.1.0] - 2025-06-05
- [5.0.0] - 2025-06-05
- [4.0.0] - 2025-06-05
- 🎉 Ajouté
- 🖼️ Traitement d'images et préprocessing
- 📊 Services d'extraction spécialisés
- 🔬 Services de métriques et qualité
- 🚀 API REST Document Processing avancé
- 🧠 Services de configuration OCR avancés
- 📱 Modèles de données étendus
- 🔧 Amélioré
- 📊 OCR Service optimisé
- 🖼️ ImageDocument enrichi
- [3.0.0] - 2025-06-03
- 🎉 Ajouté
- 🔍 OCR et Reconnaissance Optique (Vision Intelligence)
- 📊 Modèles de données Document Intelligence
- 🚀 API REST Document Processing
- [2.0.0] - 2025-06-02
- 🎉 Ajouté
- 🎤 Speech-to-Text (Transcription Audio)
- 🔊 Text-to-Speech (Synthèse Vocale)
- 🚀 API REST Speech-to-Text
- 🔄 Traitement par lot
- 🧪 Outils de test et debug
- [1.0.0] - 2025-05-23
- 🎉 Ajouté
- 🏗️ Architecture et Infrastructure
- 📊 Modèles de données
- 🔧 Services métier
- 📚 Repositories personnalisés
- 🌐 API REST Endpoints
- 🔮 Préparation future
[0.0.3]
- fetch TTs and OCR models
Changelog
[5.3.0] - 2025-08-01
- add process_batch_ocr api .
[5.2.0] - 2025-08-01
- add new type of audio
[5.1.0] - 2025-06-05
- add modification for rename data base by deleting "é" .
[5.0.0] - 2025-06-05
- add modification for deploiement : docker file et docker compose .
[4.0.0] - 2025-06-05

Ajouté


️ Traitement d'images et préprocessing

-
ImagePreprocessingService : Service complet de prétraitement d'images pour OCR
- Amélioration contraste adaptatif avec méthodes auto/fort/manuscrit
- Ajustement luminosité intelligent avec correction automatique
- Correction inclinaison automatique avec détection précise
- Détection et correction orientation depuis métadonnées EXIF
- Débruitage sélectif avec préservation du texte
- Amélioration netteté contextuelle par zones
- Binarisation avec seuillage adaptatif (Otsu, manuscrit)
- Normalisation dimensions optimales pour OCR
- Pipelines spécialisés manuscrit/imprimé/photo/scan
-
ImageQualityService : Évaluation qualité complète pour OCR
- Score global avec 4 métriques : netteté, contraste, résolution, bruit
- Classification qualité : EXCELLENTE → BONNE → MOYENNE → FAIBLE
- Mesure netteté multi-zone avec analyse par quadrants
- Détection types de flou (mouvement, focus, optique)
- Évaluation contraste local/global avec uniformité
- Analyse exposition et dynamique tonale
- Quantification bruit par fréquences (basses, moyennes, hautes)
- Détection artefacts compression/distorsion
- Évaluation lisibilité textuelle avec prédiction performance OCR
- Génération recommandations d'amélioration automatiques
-
MetadonneeService : Extraction métadonnées avancées
- Métadonnées EXIF complètes avec organisation par catégories
- Données IPTC et XMP structurées
- Identification matériel et logiciels utilisés
- Extraction et validation géolocalisation GPS
- Chronologie création avec dates multiples
- Paramètres techniques avancés (ISO, ouverture, vitesse)
- Détection modifications et éditions
- Analyse propriétés colorimétriques
- Calcul signatures techniques pour déduplication
- Anonymisation données sensibles (minimal/standard/complet)

Services d'extraction spécialisés

-
TableauExtractionService : Extraction tableaux intelligente
- Détection automatique zones tableaux dans texte OCR
- Extraction structure complète avec coordonnées
- Contenu cellules avec typage automatique (text/numeric/date)
- Identification structure sémantique (en-têtes, données, totaux)
- Correction alignement automatique
- Validation cohérence structurelle avec score qualité
- Conversion formats standards (CSV, JSON)
- Analyse typologie données par colonne
- Statistiques descriptives avancées
-
FormuleMathematiqueService : Détection formules mathématiques
- Détection et classification par domaine (algèbre, géométrie, calcul, stats)
- Extraction vers représentations multiples (LaTeX, MathML, texte)
- Conversion LaTeX → MathML avec validation
- Évaluation complexité et niveau scolaire
- Classification domaine automatique avec scores
- Validation et correction syntaxique
- Correction erreurs OCR spécialisées mathématiques
- Extraction entités (variables, constantes, opérateurs, fonctions)
- Génération descriptions accessibles (simple/moyenne/détaillée)
- Export représentations complètes multi-format

Services de métriques et qualité

-
QualiteMetricsService : Métriques qualité standards OCR
- Calcul métriques standard : PSNR, SSIM, MSE, SNR estimés
- Scores comparatifs avec références industrielles
- Tableaux de bord qualité globaux par période/scope
- Tracking évolution qualité dans le temps
- Identification patterns qualité dans datasets
- Benchmarking performance système vs standards industrie
- Classification selon standards (PREMIUM/PROFESSIONNEL/STANDARD)
- Percentiles de performance et conformité

API REST Document Processing avancé

-
Configuration OCR étendue :
-
POST /api/config/ocr/
: Création configurations personnalisées -
GET /api/config/ocr/
: Liste toutes configurations -
GET|PUT|DELETE /api/config/ocr/{id}/
: Gestion configuration -
POST /api/config/ocr/{id}/duplicate/
: Duplication avec modifications
-
-
Traitement par lot :
-
POST /api/batch/images/process/
: Lancement traitement lot -
GET /api/batch/images/{id}/status/
: Suivi progression temps réel -
POST /api/batch/images/{id}/cancel/
: Annulation traitement -
GET /api/batch/images/{id}/report/
: Rapport complet avec statistiques
-
-
Qualité et métadonnées :
-
POST /api/quality/evaluate/
: Évaluation qualité image -
GET /api/quality/{id}/report/
: Rapport qualité détaillé -
GET /api/quality/{id}/recommendations/
: Recommandations amélioration -
POST /api/metadata/extract/
: Extraction métadonnées complètes -
GET /api/metadata/{id}/
: Consultation métadonnées -
GET /api/metadata/{id}/{key}/
: Métadonnée spécifique -
POST /api/metadata/{id}/anonymize/
: Anonymisation sélective
-
🧠 Services de configuration OCR avancés
-
ConfigOCRService : Gestion configurations intelligentes
- Création configurations personnalisées avec validation
- Modification configurations existantes
- Duplication avec personnalisation
- Restauration paramètres d'usine
- Optimisation pour domaines spécifiques (éducatif/général)
- Adaptation niveaux éducatifs (primaire/collège/lycée/supérieur)
- Configuration support multilingue
- Test configurations avec métriques performance
- Export/import configurations portables
- Analyse performance avec recommandations

Modèles de données étendus

-
ImageProcessing : Configuration traitement images
- Créateur et modificateur avec horodatage
- Formats supportés configurables
- Modèle vision personnalisable
- Qualité minimum paramétrable
-
Metadata : Stockage métadonnées flexibles
- Types données multiples (STRING, INTEGER, FLOAT, DATETIME, BOOLEAN, JSON)
- Contraintes unicité par image
- Index optimisés pour recherche
- Date extraction automatique

Amélioré


OCR Service optimisé

- Gestion erreurs robuste : Fallback vers simulation si OpenAI indisponible
- Configuration API dynamique : Lecture clé depuis fichier .env
- Support formats étendus : PDF, WEBP en plus des formats existants
- Détection langue améliorée : Analyse contextuelle avec mots courants
- Score confiance raffiné : Basé sur longueur, structure, ponctuation

️ ImageDocument enrichi

- Statuts étendus : UPLOADED, PROCESSING, PROCESSED, ERROR
-
Cache texte intégré :
extracted_text
pour accès rapide - Relations complètes : Liens vers OCRResult, métadonnées
- Validation améliorée : Vérification existence fichier
[3.0.0] - 2025-06-03

Ajouté


OCR et Reconnaissance Optique (Vision Intelligence)

-
Service OCRService : Reconnaissance optique complète avec OpenAI Vision API
- Intégration GPT-4o-mini pour extraction texte haute précision
- Support multi-format images (PNG, JPG, JPEG, TIFF, BMP, WEBP)
- Détection automatique de langue (FR) avec analyse contextuelle
- Calcul score de confiance basé sur longueur et structure

Modèles de données Document Intelligence

-
ImageDocument : Gestion complète documents images
- Métadonnées techniques (dimensions, format, taille)
- Statuts de traitement (UPLOADED, PROCESSING, PROCESSED, ERROR)
- Stockage texte extrait avec indexation utilisateur
-
OCRResult : Résultats reconnaissance détaillés
- Texte complet avec score de confiance
- Langue détectée et structure analysée
- Cache formules mathématiques intégré
- Historique traitement avec horodatage
-
ExtractedTable : Tableaux extraits structurés
- Position et dimensions précises
- Contenu cellules en format JSON
- Nombre lignes/colonnes avec confiance
- Optimisé pour analyse pédagogique
-
FormuleMathematique : Formules mathématiques avancées
- Représentations LaTeX, MathML et texte
- Classification par domaine mathématique
- Coordonnées spatiales dans document
- Score détection pour validation
-
ConfigOCR : Configurations OCR flexibles
- Modèles personnalisables (OpenAI, Tesseract)
- Langues multiples avec détection avancée
- Optimisations académiques activables
- Niveaux de détail configurables (Basic → Expert)

API REST Document Processing

-
POST /api/images/upload/
: Upload document image avec validation -
GET /api/images/user/{user_id}/
: Liste images utilisateur -
GET /api/images/{image_id}/
: Détails document spécifique -
POST /api/images/{image_id}/extract-text/
: Extraction texte OCR -
POST /api/images/{image_id}/convert/
: Conversion format image -
GET /api/images/{image_id}/download/
: Téléchargement document -
DELETE /api/images/{image_id}/delete/
: Suppression sécurisée
[2.0.0] - 2025-06-02

Ajouté


Speech-to-Text (Transcription Audio)

-
Service SpeechToTextService : Transcription complète avec Whisper local
- Support CPU/GPU automatique avec optimisation mémoire
- Modèles Whisper : tiny, base, small, medium, large, turbo
- Détection automatique de langue avec 11+ langues supportées
- Transcription avec horodatage (timestamps) précis
-
Pipeline de prétraitement audio : AudioPreprocessingService
- Réduction de bruit intelligent avec noisereduce
- Suppression d'écho et normalisation dynamique
- Filtrage fréquences vocales optimisé pour Whisper
- Détection et suppression silences longs
- Amélioration clarté vocale automatique
-
Analyse qualité audio : AudioQualityService
- Évaluation SNR (rapport signal/bruit)
- Détection distorsions et clipping audio
- Mesure intelligibilité de la parole
- Détection coupures et discontinuités
- Génération recommandations d'amélioration
-
Gestion configurations : ConfigAudioService
- Configurations optimisées par niveau scolaire
- Export/import configurations JSON
- Validation paramètres audio avancée
- Test compatibilité fichier/configuration

Text-to-Speech (Synthèse Vocale)

-
Service TextToSpeechService : Synthèse vocale avec OpenAI TTS
- 6 types de voix : homme, femme, enfant, professionnel, amical, énergique
- Optimisations par tranche d'âge (enfant, adolescent, adulte)
- Styles d'intonation : question, excitation, calme, pédagogique
-
API REST Text-to-Speech : 4 nouveaux endpoints
- Génération synthèse :
POST /api/synthesis/generate
- Récupération fichier :
GET /api/synthesis/{id}
- Liste des voix :
GET /api/synthesis/voices
- Prévisualisation :
POST /api/synthesis/preview
- Génération synthèse :

API REST Speech-to-Text

-
POST /api/transcription/process
: Transcription complète avec options- Support preprocessing automatique
- Génération segments horodatés
- Configuration langue et qualité
-
GET /api/transcription/{id}
: Résultats transcription détaillés -
GET /api/transcription/{id}/segments
: Segments avec timestamps -
POST /api/transcription/detect-language
: Détection langue automatique -
GET /api/transcription/{id}/export
: Export multi-format (TXT, SRT, VTT, JSON) -
GET /api/transcription/{id}/status
: Statut temps réel -
DELETE /api/transcription/{id}/delete
: Suppression transcription

Traitement par lot

-
BatchProcessingService : Traitement masse avec monitoring
- Queue intelligent avec optimisation ordre
- Suivi progression temps réel
- Gestion échecs et reprise automatique
- Estimation temps et statistiques
- Annulation et contrôle avancé
🧪 Outils de test et debug
-
Commande test complète :
test_speech_to_text
- Tests automatisés tous services
- Génération fichiers audio test avec gTTS
- Validation pipeline complet
- Rapport qualité et performance
[1.0.0] - 2025-05-23

Ajouté


️ Architecture et Infrastructure

- Service de traitement multimédia : Architecture microservice complète pour le traitement de fichiers audio
- Base de données PostgreSQL : Configuration avec tables spécialisées pour les fichiers audio
- API REST : Endpoints complets pour la gestion des fichiers audio
- Système de logging : Logs détaillés pour le suivi des opérations

Modèles de données

-
FichierAudio : Modèle principal pour stocker les métadonnées des fichiers audio
- Support des formats : MP3, WAV, OPUS
- Métadonnées : durée, bitrate, taille, format
- Statuts : UPLOADED, PROCESSING, PROCESSED, ERROR
- TraitementParole : Configuration des traitements speech-to-text et text-to-speech
- ResultatTranscription : Stockage des résultats de transcription
- SegmentTranscription : Découpage temporel des transcriptions
- ConfigAudio : Paramètres de configuration audio

Services métier

-
FichierAudioService : Service principal de gestion des fichiers audio
- Upload et validation de fichiers
- Extraction automatique de métadonnées (durée, bitrate, format)
- Conversion entre formats audio
- Traitement audio (normalisation, ajustement volume, découpage)
- Calcul de checksum pour l'intégrité
- Configuration automatique FFmpeg

Repositories personnalisés

-
FichierAudioManager : Requêtes spécialisées pour les fichiers audio
- Filtrage par utilisateur, format, statut, langue
- Recherche par plage de durée et taille
- Identification des fichiers transcrits et en attente
- ResultatTranscriptionManager : Gestion des transcriptions
- SegmentTranscriptionManager : Gestion des segments temporels
- ConfigAudioManager : Gestion des configurations
- TraitementParoleManager : Gestion des traitements de parole

API REST Endpoints

-
POST /upload/
: Upload de fichiers audio avec validation -
GET /user/{user_id}/
: Récupération des fichiers par utilisateur -
GET /format/{format}/
: Filtrage par format audio -
GET /status/{statut}/
: Filtrage par statut de traitement -
GET /pending/
: Fichiers en attente de traitement -
GET /transcribed/
: Fichiers déjà transcrits -
GET /duration-range/
: Recherche par plage de durée -
GET /size-range/
: Recherche par plage de taille -
GET /{file_id}/
: Détails d'un fichier spécifique -
DELETE /{file_id}/delete/
: Suppression de fichier -
POST /{file_id}/convert/
: Conversion de format -
GET /supported-formats/
: Formats audio supportés

Préparation future

- Structure prête pour intégration Speech-to-Text
- Support Text-to-Speech en préparation
- Architecture extensible pour nouveaux formats
- Interface admin pour configuration avancée