Home

Rapport de la soutenance finale

image

Contents

1. vegarde Une interface graphique laquelle y est int gr le traitement de l image dans son ensemble un correcteur orthographique et une sauvegarde des r sultats Un manuel d utilisation et une aide contextuelle et d installation 2 2 R partitions des t ches 2 2 1 Pour la premi re soutenance Guillaume Michael Cindy Binarisation E Rotation E Segmentation x x Recherche sur le r seau de neurones x Site web x Toutes les t ches ont t r alis es pour la premi res soutenance 2 2 2 Pour la soutenance finale Guillaume Michael Cindy Am lioration de la segmentation S Extraction des caract res x R seau de neurones x Reconaissance des caract res x Interface graphique x Correcteur orthographique X Sauvegarde x Site web x Manuel d installation et d utilisation x Malheureusement contrairement la derni re soutenance tout n a pas pu tre fait dans les temps A ce jour il nous manque l impl mentation du r seau de neurones dans le traitement des images et donc l apprenstissage et la sauvegarde qui va avec Chapitre 3 Le pr traitement de l image 3 1 La binarisation Cette partie fut assez simple les niveaux de gris ayant t faits en TP Il s agissait simplement de remplacer chaque pixel par un pixel ayant les 3 m mes niveaux de couleurs niveaux calcul s grace a une formule fournie en TP Cependant plu
2. aussi dans la langue anglaise En r sum notre interface graphique peut Charger une image Effectuer un traitement complet de l image Modifier le texte provenant de l image apr s traitement ou en crire un Sauvegarder le texte 14 OCR Choucroute Bwe GG Seea anie il Recently used Places L Name Size Modfed Q search 17 interface ml 55KB Sunday D Makefil 346 bytes sund E im j ED Desktop O interfacecopy ml 40KB Saturday D File System E Meinl 14KB Saturday E clonezila tt jpg 69 9 KB _ Friday B exam E lablgtk ml 274 bytes 12 03 2012 E 83 GB eer SKMBT_75112112613330 pdf 906 7 kB 12 03 2012 O vingi 9 1KB 12 03 2012 A lim j p20122226tarbz2 3 8 KB 12 03 2012 1 geet 457 hitas 1210212012 B indexjpeg 5 EES Arri re plan rot Appliquer le traitement d image complet cancel E open Help E our I do not unerstand engleesh interfacezero Name bad english Save in folder E home Create Folder wv Size Modified Le 1 Places Name IQ Search Recently Used 15 Cancel 5 2 Site web Pour communiquer avec le monde un site internet sa plus grande im portance Voici l addresse du n tre http ocrchoucroute wordpress com Via ce site nous pouvons d couvrir la Nitojah team et l OCR Chouc
3. rest sur ce modele d affichage avec cependant l ajout d un fond de couleur duquel se detache mieux les pixels bleus qui surlignent les caract res Dans une approche tres th orique la fonction de segmentation utilis e se base sur la th orie des graphes en effet on consid re la matrice de bool ens comme un graphe non orient les points not s false donc noirs representent des sommets et deux sommetss sont adjacents si et seulement ci les deux cases de matrice les repr sentant sont contig es On extrait ainsi les composantes connexes de ce graphe cha cune repr sentant un caractere En pratique pour chaque pixel noir rencontr on lance une procedure recur sive qui si le pixel est noir lr stocke dans une liste le marque en blanc et r essaye sur se voisins Ainsi lorsque la procedure a termin son travail il ne reste plus qu a stocker la composante dans un type charact et de passe au pixel suivant A noter qu un m me pixel ne peut se trouver dans deux charact res diff rents car chaque fois qu on l envisage apr s sa premi re rencontre on l ignore car il est devenu blanc ce qui quivaudrait a marquer le sommet d un graphe qu on serait en train de parcourrir 10 Ordonner les charact res Une fois tous ces caract res r cup r s il faut encore les ordonner et les trier pour obtenir un texte coh rent Por cela on divise d abord la liste de caract res qui forme notre image en sous listes Chacune de ces sous liste
4. une somme qu on divise la fin par la somme des poids de la matrice de poids on obtient alors une proabilit de appartennce tel ou tel classe decaratct re On effectue cette op raion sur chaque neurone et on ogarde le neurone et donc le caract re associ ayant le pourcentage le plus lev d tre justement ce caract re En prenant en compte un seuil d passer lors de la reconnaissance on obtient un semblant de reconnaissance de ca ract re le probl me r sidant dans l apprentissage des neurones pour chaque carat re c est alors l qu ont r ellement commenc les probl mes L apprentissage a suscit pas mal de discution nous avons finalement choisi lors de l apprentissage de donner au programme une image de teest compre nant tous les caract res reconnaitre dans l ordre afin de les segmenter et de les associer chaque neurone pour cr er la matrice de poids corresponante et mouler le carat re dans la matrice Afin d une reconnaissance plus fine il aurait fallu donner plusieurs images de la liste de caract res dans des tailles et polices diff rentes pour am liorer et toffer le r seau cependant vu que je n ai finalement pas r ussi faire fonctionner la premi re version de cet algorithme je n ai pas pouss plus loin l apprentissage de caract res J ai utilis un principe de r tropropagation simple lors de l apprentissage lors de l apprentissage d une nouvelle image je timinuais ls poi
5. Rapport de Projet OCR Choucroute par Nitojat Guillaume ROFFE Micha l WILLAME Cindy LIM 12 D cembre 2012 Table des mati res 1 Introduction 2 2 Organisation 3 2 1 Reprise du cahier des charges 3 22 R partitionsdest ches 0 0002002 4 2 2 1 Pour la premi re soutenance 4 2 2 2 Pourlasoutenancefinale 2 2 4 3 Le pr traitement de l image 5 JI La binarisatlon a sora dit spa eds Nat me 5 3 2 LR TO 1721 B Le s A Re AN Re DAME met DA ete mess 6 3 2 1 M thode de Rotation 232 48408 0e Ro Dax Gun 6 3 2 2 M thode de d tection de l angle 7 4 Analyse de l image 9 4 1 la segmentation et l extraction de caract res 9 4 2 R seau de neurones 11 4 3 Reconnaissance des caract res 12 5 la partie interface et communication 14 51 Interface graphique 0 0 0 00 00 000002 14 EREECHEN 16 6 Impressions 17 6 1 G llaume Rofe a zo vat 2228 rr in Tar la d ee aber 17 020 Michael Willame i ms Leurs hernie LA An dir E A 18 6 37 Ord LEE 19 7 Conclusion 20 Chapitre 1 Introduction Il faut beaucoup de courage pour admettre sa d faite admettre qu en fin de compte on a pas pu r aliser ce qu on avait pr vu Il y a un moment o on sait on sait que m me si on essaie de toute fa on on arrivera pas jusqu au resultat escompt Lorsqu on arrive au moment fatidique ou l on ne p
6. a j ai dans un premier temps rechercher comment tourner une image en identifiant l image comme une matrice de points et en calculant les nouvelles coordonn es de tous les points afin de les ranger dans une nouvelle matrice qui devait repr senter l image ayant effectu e la rota tion J ai d couvert qu il fallait mieux effectuer une rotation en prenant le centre de l image comme origine et de l calculer les nouvelles coordonn es Les quations des calculs tant les suivants x x cos ang y sin ang y x sin ang y cos ang Le probl me avec ces deux quations c est que la rotation s effectue par rapport l origine de l image soit le point 0 0 au coin en haut gauche de l image ce qui aurait pour effet de rogner les bords de l image et donc de perdre norm ment de texte Pour palier ce probl me j ai comme je l ai dit pr c demment appliqu une rotation en prenant le centre de l image comme centre de la rotation Les nouvelles formules sont alors celles ci x centre x centre cos ang y centre sin ang y centre x centre sin ang y centre cos ang Afin d viter les calculs de d bordements j ai consid r la rotation par le centre comme la plus simple et la plus rapide mettre en uvre tant donn le temps imparti pour le faire je voulais essentiellement me concentrer sur la d tection de l angle de rotation Cependant d autres m thode
7. aller mes capacit s de reflexion et de concentration N ayant pas r ussi finir le r seau j tais d u que mon travail ne serve finalement rien Nous aurions pu clairement faire mieux mais faute de temps et de personnel il nous tait impossible d en faire plus sans un d ficit mental cons quant et une p nurie de caf 17 6 2 Michael Willame Au d but du projet j tais ffray oui ffray par la quantit de travail demand e en si peu de temps Mais force de travail acharn il se trouve qu on a r ussi obtenir pour la premi re soutenance quelque chose qui tenait la route Le resultat compte tenu du fait que nous n tions que 3 tait encourageant si bien que je sortis de la premi re soutenance confiant beaucoup trop mal heureusement Ce n est que sur la deuxi me partie que le manque d un quatri me membre se fit vraiment sentir J ai choisi de ne pas prendre le r seau de neurones parce que j avais peur de me perdre dans les m andres du concept si j ssayais de comprendre ce qui est arriv a Guillaume Alors qu il aurait fallu mettre au moins deux membres sur le r seau de neurones il y avait sur les autres parties suffisament de travail pour nous occuper Cindy et moi m me Ainsi du temps fut perdu et ne connaissant rien aux r seau de neurones faute de nous y tre plong s d s le d but nous n avons pu aider Guillaume Le fait que cindy n tait pas dans notre classe tait galement han
8. de neurones complet mais il nous aurait fallu plus de temps Au final nous n tions pas si loin de r ussir de nombreux l ments ont t impl ment s mais ont n c ssit plus de temps que pr vu pour les fusionner Certains n ont pas p l tre temps Nous avons tent Nous avons chou cependant nous avons beaucoup appris de ce projet et de cette chec Afin de mieux nous relever et de nous pr parer de nouvelles preuves potentiel lement plus dures 20
9. dicapant cause des incompatibilit s d emploi du temps Cette situation me mit dans un etat de stress intense celui de ne pas avancer et surtout de ne rien pouvoir faire c est donc dans un etat de stress que le rendu fut fait Pouvait on faire mieux oui mais pas sans sacrifier le reste de nos mati res scolaires avec ou sans chute de note d assiduit ou distordre l espace temps d une mani re ou d une autre A noter galement que cette exp rience m a permit de d couvrir une chose j abhorre le traitement d image m me si j en appr cie les applications La partie segmentation ne m a plue vraiment que lorsque j envisageait ma donn e comme un graphe et non comme une image Cependant cette vision est uniquement bas e sur une exp rience et est donc remettre en question Si le projet n est pas termin on a quand m me un traitement d image assez pr cis pour d autres applications compatibles elles aussi avec l inter face Par exemple on pourrait trouver et enregistrer toutes les images d un document sans beaucoup de modifications 18 6 3 Cindy Lim Apr s le projet de Sup que j ai bien aim s attaqu au projet de l OCR fut un v ritable challenge En effet j ai trouv que le niveau tait bien plus lev du fait des contraintes notamment les d lais qui sont beaucoup plus court et de l handicap du dernier membre manquant dans notre groupe et des exigences du cahier des charges impos s De plus contra
10. ds correspondants aux points blanc de l imgage mais poss dant des poids strictement positifs Utilisant un r seau simple la d tection risquait de tendre vers un apprentis sage par coeur sans r tropropagation possible la fin de la reconnaissance cela restait une des fonctionnalit s impl menter mais dont je n ai pas eu le temps pour 13 Chapitre 5 la partie interface et communication 5 1 Interface graphique Pour pouvoir int rargir plus ais ment les fonctionnalit s de notre OCR nous avons cr er une interface graphique en utilisant lablGTK dans ce but Comme exig dans le cahier des charges l interface comporte deux fen tres une gauche qui affiche l image originale charg e depuis l ordinateur qui res tera tel quel m me apr s traitement binarisation rotation segmentation extraction des caract res reconaissance des caract res Celle de droite per met de modifier le texte du document num ris suppos apparaitre apr s le traitement Mais ce n est pas tout L interface poss de d autres fonctionnalit s notam ment celle de d cider de la couleur de l arri re plan et modifier la taille et la police des caract res dans la fen tre de droite Il est aussi possible de sau vegarder le texte dans la m me fen tre Un correcteur orthographique a t galement ajout depuis les biblioth que de lablGTK pour propos des solu tions aux erreurs de syntaxes possiblements commises Ce correcteur marche
11. e r aliser un r seau mono couche soit une liste de neurones avec comme base qu il y a un neurone pour chaque caract re en se basant sur une probabilit de correspondre le plus possible un sch ma pr enregistr Ceci tant le mod le le plus simple r aliser vu que les autres mod les m ont laiss mariner dans une forte in compr hension 11 Fonctionnement th orique du r seau Le r seau est cens fonctionner ainsi Apr s segmentation de l image et des caract res en lignes puis mots Je r cu p re toutes les bo tes cr es transforme le tout en matrice de bool ens afin d avoir une repr sentation de chaque lettre Apr s redimensionnement des matrices je les soumets l algorithme de reconnaissance de carat res je r cup re ensuite les caract res r sultats de la reconnaissance que je conca t ne afin de cr er des mots cela que je les s pare ensuite par des espaces et ainsi de suite gr ce la distinction de chaque caract re faisant parti d un mot ou d un autre r alis e lors de la segmentation Ayant ma string r sultat la th orie voulait que je les donne ensuite l in terface pour l afficher puis la sauvegarder dans un fichier texte ou tout autre fichier de traitement de texte Le probl me tant que dans le temps imparti pour le faire je n ai pas r ussi terminer le r seau dans les temps Et la puissance du langage utilis tait telle que je me suis cass les dents essay
12. er de d buger ce r seau Pour une raison obscure la reconnaissance de caract res sur l apprentissage ne fonctionna pas et de nombreux autres erreurs sont venues s ajouter cela Je n ai pas r ussi terminer le r seau cependant je pense que j tais sur la bonne voix pour le faire je n en avais malencontreusement pas le temps Le r seau de neurones ne fonctionnant pas la sauvegarde du dit r seau tait rendu caduque Ainsi je n ai pas cr de fonctions pouvant r aliser la sauvegarde du r seau ou de l image s lectionn 4 3 Reconnaissance des caract res Pour chaque neurone une matrice de poids est associ e ainsi que le nombre de fois qu il a appris un caract re sp cifique Lors de la reconnais sance on compare pour chaque pixel noir de l image reconnaitre si il poss de un vis vis dans la matrice de poids Vu que pour certains caract res dans diff rentes polices la place d une barre verticale peuvent ne pas varier cer taines parties sont molns importantes que d autres comme par exemple les polices avec ou sans serif Un poids est donc associ chaque pixal afin de noter l importance du point dans la reconnaissance du dit caract re pour les besoins du code j ai choisi arbitrairement de stocker les poids et donc de redimensionner les boites is sues de la segmentation dans des matrices de 16 par 16 12 Pour chaque pixel noir reconnu dans l image on ajoute le poids du pixel correspondant
13. eut plus rien faire soit on cache ses erreurs ce que beaucoup font soit on les assume Effectivement Nous avont chou pris par le temps les moyens Nous n avons pas atteint tous nos objectifs mais nous avons quand m me pro gress Un certain nombre de question exigent encore une r ponse Jusqu ou en est on all somme nous vraiment si loin du resultat final Pour quoi avons nous chou comment faire pour que cela ne se reproduise pas C est ce que nous vous dirons dans ce rapport Si chacun a un avis particulier sur la question un consensus se forme autour du fait de d signer comme cause le sous effectif flagrant dans lequel nous tions Chapitre 2 Organisation 2 1 Reprise du cahier des charges Pour le projet et conform ment aux exigences du cahier des charges nous devions fournir Pour la premi re souteance Le chargement de l image Les passages de couleurs en gris puis en noir et blanc L limination du bruit La rotation d une image partir d un angle donn et la d tection de l angle n cessaire au redressement Une d tection des zones de textes et une bauche du d coupage des lignes et des caract res Etudier le r seau de neurones Un site web Pour la souteance finale La finalisation du pr traitement de l image L OCR doit savoir extraire les caract res et d tecter les lignes de l image La mise en place du r seau de neurone avec l apprentissage et la sau
14. ge est droite que c est le cas si l image est de travers la r partition de pixels noirs par ligne est plus homog ne et donc la variance diminue Elle est maximale pour une image totalement droite Je calcule donc la variance de ma matrice de d part puis j effectue une rotation de la matrice vers la droite de 1 Enfin je calcule nouveau la variance de ma nouvelle matrice et je continue de mani re it rative jusqu ce que la nouvelle variance soit inf rieure la pr c dente ce moment je v rifie que j ai bien tourn sur la droite si la variance a effectivement augment c est qu il fallait tourner sur la droite et j ai alors trouv la meilleure variance et donc le meilleur angle possible dans le cas contraire il fallait alors tourner vers la gauche et je recommence mes calculs dans le sens contraire afin de trouver l angle Apr s avoir tourn ma matrice dans tous les sens et trouv l angle J effectue une derni re rotation de ma matrice avec l angle obtenu la matrice r sultante est alors transform e en image puis affich e Ce sera cette image qui servira la segmentation de l image Une am lioration du code serait de directement r cup rer la matrice une fois la meilleure variance trouv e ou encore de passer sur la m thode de d tection de Hough ce qui sera probablement effectu lors de la seconde sou tenance La m thode choisie est fonctionnelle bien qu un peu longue Pour un gain de qualit de l image nous
15. irement l ann e derni re la documentation parfois n cessaire n est pas aussi diverse et vari e ce qui fut le cas pour le r seau de neurones Ceci dit l exp rience fut plut t int ressante parce qu elle diverge beaucoup de celle v cu avec la r alisation du jeux vid o Je suis consciente que notre produit final pour le projet est loin d tre le meilleur et ne correspond pas exactement au cahier des charges N anmoins nous avons fait de notre mieux pour r pondre aux demandes et nous nous sommes tous appliqu s de fa on peu pr s gale dans la r alisation de l OCR Nous ne pouvons peut tre pas pr trendre tre fi re du r sultat mais je pense que nous n avons pas avoir honte non plus car nous avons tous donn s 19 Chapitre 7 Conclusion Comme nous le disions dans l introduction il est dur d admettre un chec mais il est cependant important de revenir dessus et de comprendre de quel mani re nous aurions pu r aliser un programme fonctionnel avec ce que nous avions Un projet de d tection de caract res a pour but de d tecter des caract res le n tre d tecte effectivement si notre image est droite ou non et la redresse le cas ch ant d tecte les caract res et les entoure afin de les distinguer le probl me tant qu il ne fait pas plus et que le r seau de neurones ne fonctionne pas le rendu final nous reste un peu en travers de la gorge Nous aurions pu faire beaucoup mieux avoir un r seau
16. nstat que la m thode bas e sur le Principe de Hough tait celle qui revenait le plus souvent et qui semblait la plus efficace cependant vu que je n ai strictement rien compris ce principe apr s plusieurs recherches sur internet j ai catalogu ce principe de d tection comme tant valable pour une am lioration d algorithme mais qui tait horse le groupe a t cr de mani re tardive tant donn qu il se composait la base de deux personnes et non quatre Pour revenir o j en tais j ai d cid de d tecter l angle de rotation de propos dans cette premi re soutenance tant donn le peu de temps dont nous disposions pour r aliser ce projet je rappelle qud une mani re diff rente mais qui m tais compr hensible et rapide effectuer J ai r fl chi pas mal de temps et d cid de la matrice Une fois que j ai mon tableau repr sentant le nombre de pixels noirs par ligne je calcule la moyenne de pixels n effectuer un calcul de variance sur la matrice Dans un premier temps je compte sur la totalit de la matrice le nombre de pixels noirs par ligne que je stocke dans un tableau de dimension la hauteur de doirs puis la variance du tableau j ai ainsi la r partition par ligne du nombre de points noirs le principe est le suivant la variance du tableau est maximale pour un nombre tr s important de pixels noirs sur certaines lignes et des lignes o il n y aurait aucun pixels noirs Et c est quand l ima
17. pensons effectuer la rotation sur l image originale et non l image binaris e que nous avons utilis pour d cou vrir l angle et ensuite effectuer la binarisation sur cette image tourn e Pour des raisons de deadline urgente nous n avons finalement pas eu le temps d effectuer les changements de la rotation escompt s lors de la premi re sou tenance Chapitre 4 Analyse de l image 4 1 la segmentation et l extraction de carac t res Deux techniques ont t es envisag es afin de reconnaitre les zones de texte La premi re tait de constituer des liste de pixels noirs contigues afin de constituer plus tard des blocs Afin de repr senter ces blocs le type Charact fut cr il doit son nom au fait qu il possede les m me characteristique que les caracteres a etudier plus tard Ce type est compos d une origine d une taille et de la liste des coordon es des pixels noirs du bloc par rapport a l origine dudit bloc Cependant cette m thode avait un Handicap majeur le facteur temps En effet si elle tait d une redoutable pr cision les zones taient d tect es a la ligne pr s elle n c ssitait le parcours simultan d une image et d une liste de liste pour une complexit totale de l ordre de n puissance trois ou n est le nombre de pixels dans l image et n c ssitait de constituer les blocs a posteriori avec une complexit de l ordre de n au carr ce qui au total prennait pensait on plus de vingt minutes sur les plu
18. route les diff rents aspects du projet de la binarisation au r seau de neurones et d autres choses comme vous pouvez le voir sur cette image OCR EPITA PAR NITOJAH OCR CHOUCROUTE L EQUIPE LEPROJET TELEGHARGEMENTS LIENS L histoire de l quipe 16 Chapitre 6 Impressions 6 1 Guillaume Roff Ce projet a t pour moi une exp rience extr mement enrichissante dure difficile mais cela m a permis de mieux comprendre comment r agir face un probl me tr s difficile r soudre mais pas impossible j ai lamentablement chou mais j ai appris travailler en quipe sous pression en tr s peu de temps J ai galement appris mes d pens le nombre d heures de sommeils qu il m tait n cessaire d avoir afin de pouvoir travailler J ai dans un premier temps r alis lors du traitement de l image la rotation et la d tecion de la rotation de l image que j ai appr ci de faire Puis pour la seconde soutenance j ai t charg de r aliser le r seau de neurones cette t che fut ardue et m a demand beaucoup d investissements Cela m a pris beaucoup de temps de comprendre comment je pouvais r aliser cela Apr s de nombreuses recherches j ai compris qu un quatri me membre n aurait pas t de trop pour m pauler dans ce travail tant donn que Micha l et Cindy taient occup s par leurs travaux respectifs j ai d me r soudre le faire seul Cela m a permis de voir jusqu o pouvait
19. s existent pour viter de rogner l image comme effectuer un calcul permettant d valuer le d bordement et de d caler le texte en cons quence mais cette m thode tait trop longue mettre en action La rotation en elle m me tait donc fa te ce point avec ces quations j ai pu calculer les nouvelles coordonn es des points cependant il n tait pas utile de calculer toutes les nouvelles coordonn es pour tous les points de la matrice en effet l algorithme de binarisation et d affaiblissement du bruit pr c de l al gorithme de rotation on peut donc ne prendre en compte lors de la rotation que les pixels noirs et assigner leurs coordonn es dans une nouvelle matrice remplie de pixels blanc ou d entier gal 255 dans le cas pr sent L algorithme de rotation et de d tection tait alors clair dans ma t te il fallait transformer l image pass e en param tre en matrice rempli seulement de 255 et de 0 repr sentant respectivement le blanc et le noir Effectuer la d tection de l angle puis faire une rotation de la matrice et enfin transformer nouveau la matrice r sultante en image afficher l cran 3 2 2 M thode de d tection de l angle Une fois l algorithme de rotation crit et test il restait la majeure par tie du travail r aliser d tecter l angle par lequel il fallait tourner la matrice Apr s moult recherches et incompr hensions sur les diff rentes m thodes de d tection j ai co
20. s grosses images de test Ainsi une autre technique fut mise au point La technique actuelle constitue directement les Charact en testant si les pixels s inscrivent dans ou sont suffisamment proche d un rectangle dans lequel s inscrit un Charact Cette technique est ainsi seulement de l ordre de n au carr avec la m me d finition de n et ne n c ssite pas de second passage pour constituer les blocs Son handicap et sa pr cision variable selon les images car elle s appuie sur un seuil qui est fonction de la taille des caracteres du texte Cependant m me dans les cas les plus pr cis les blocs form s sont de l ordre du paragraphe Pour ces deux methodes il fallait cependant liminer les boites contenant un seul pixel vestiges du bruit de fond ou artefacts de la rotation A aussi t fait dans cette partie une fonction qui permet de visualiser les blocs reconnus en les surlignant en bleu 0 0 255 L am lioration de la pr cision ne fut pas chose ais e car on avait toujours ces probl mes de temps et ce m me avec la version plus optimale de la pre miere methode de segmentation Une tude plus pous e nous a permit de d couvrir que la fonction qui prennait le plus de temps tait la fonction d af fichage Elle prenait autant de temps sur la version optimis e cause d une erreur b te un probl me de condition qui engendrait beaucoup trop d arte facts Des tentatives d optimisation peu concluantes ont t faites et on est
21. s repr sente une ligne et donc les carac t res sont r partis en fonction de leur position verticale Une fois ces listes obtenues on les tries par position verticale croissante puis on trie les carac t res a l int rieur par position horizontale croissante Une fois ceci fait on divise les listes en mots en fonction de l spacement entre deux caract res cons cutifs Une fois le traitement termin s on obtiens donc 4 niveaux de listes imbri qu es texte ligne mot caract re pr tes a envoyer au r seau de neurones Ces fonctions n on pas t enti rement et int gralement test es cependant du au manque de r seau de neurones 4 2 R seau de neurones G n ralit s Le fameux r seau de neurones fut r alis par moi m me Guillaume Cette t che que je pense tre la plus importante et la plus difficile dans le projet vu qu au final si on ne reconnait pas les carat res le programme ne sert pas grand chose aurait d selon moi tre r alis deux et non pas un Malheureusement tant au nombre de trois et non de quatre dans le groupe je me devais de le faire seul Apr s de nombreuses recherches sur le sujet j ai decid d utiliser un r seau perceptron multi couches Je ne vais pas m appesantir sur le fonctionne ment du r seau perceptron tant donn que je n ai moi m me pas r ussi comprendre totalement la finalit du fonctionnement du r seau Afin de produire un r seau fonctionnel j ai choisi d
22. t t qu une binarisation classique o l on se contente de fixer un niveau de gris qui determine si un pixel est noir ou blanc j ai pr f r une approche plus fiable En effet la technique employ e est de prendre un chantillon du fond de l image et de comparer la couleur de chaque pixel a cette couleur de fond selon la distance entre les deux entendez la valeur absolue de leur diff rence on affecte a un pixel les valeurs 255 255 255 blanc ou 0 0 0 noir a l aide de la fonction get_pixel_color du module SDL Il est a noter que les images tant d ja en niveau de gris il tait inutile de tenir compte des trois valeurs de Rouges Vert et Bleu pour effectuer les test sur cette tape ces trois valeurs tant identiques Pour cette deuxieme soutenance rien ou presque n tait a faire sur cette partie Il a juste fallut une fonction de reduction de bruit suppl mentaire pour g rer les artefacts de rotations et autres le principe est simple on parcours l image et pour chaque pixel on v rifie un a un les pixels autour et s il sont tous d une autre couleur on change le pixel consid r en cons quence a noter que ce traitement se fait sur une matrice de booleens en effet nul besoin d une image pour cela 3 2 La rotation 3 2 1 M thode de Rotation Dans le projet ma tache a t d effectuer une rotation d une image avec un angle donn et d tecter le dit angle de rotation dans le cas o l image ne serait pas droite Pour cel

Download Pdf Manuals

image

Related Search

Related Contents

Digiquartz Broadband Intelligent Instruments with RS  Conceptronic Network IP Camera  TR3-C201 リーダライタモジュール 取扱説明書  

Copyright © All rights reserved.
Failed to retrieve file