# Gnral Dveloppement > Algorithme & Mathmatiques > Traitement d'images >  Reconnaissance d'image [forme simple]

## dewey01

Bonjour, tant un peu novice dans le domaine, je viens demander conseil auprs de vous.
tant tudiant et en priode de stage (avec un autre tudiant de mon cole), nous nous sommes vu confi un petit projet.
Nous avons le choix du langage et de la librairie, seul contrainte : rendre notre application compatible avec celle de la boite (coder en Delphi).

Passons maintenant  notre sujet :
La bote ou nous sommes en stage a cre une interface pour scanner de professionnel (en Delphi) pour pouvoir numriser rapidement et facilement un grand nombre de feuilles.
Admettons qu'il y est 40 pages  numriser, en sortie il y aura (si la personne a demand du PDF) un gros PDF de 40 pages. Mais malheureusement cette personne voulait les 20 premires pages dans un PDF et les 20 dernires dans un autre PDF.
Notre travail est donc, aprs la numrisation d'une page, vrifier si il n'y pas un rond (on ne sait pas encore la forme) dans le coin en haut  droite de la page. Ce tampon sera au pralable mis par l'utilisateur sur chacune des premires pages (3 PDF, 3 pages avec tampons).

Donc voila, on nous a conseiller OpenCV, mais aprs vrification il s'avre que cette librairie n'est plus mise  jour depuis 2 ans et qu'il y aurait pas mal de bugs.
Au niveau du langage, on est pas difficile (C/C++ serait pas mal).

Je tiens  prciser que je suis venu demander conseil sur le choix des outils  utiliser et non la rsolution de notre sujet de stage.

Merci d'avance pour les rponses.

Dewey

----------


## ToTo13

Bonjour,

OpenCV reste toujours un bon choix, surtout si tu connais le C++. Sinon pour moi Java Power.
En bref, on conseille presque toujours de rester dans le langage que l'on connat le mieux,  condition que celui-ci soit largement utilis  ::):  Cela permet de trouver toutes les bibliothques ncessaires.

Ensuite il vous faudra trouver un petite bibliothque qui transforme un pdf en srie d'images. Et oui, il faut refaire le chemin inverse pour pouvoir traiter toutes les images  la suite.
Pour terminer, si vous devez retrouver une forme simple (rond, carr, ...) dans un endroit bien prcis (coin suprieur gauche), cela sera sans doute TRES facile, mais lorsque l'on connatra la forme exacte.

----------


## dewey01

> En bref, on conseille presque toujours de rester dans le langage que l'on connat le mieux,  condition que celui-ci soit largement utilis  Cela permet de trouver toutes les bibliothques ncessaires.


A vrai dire nous avons fais normment de C cette anne et on pensait que se mettre au C++ ne serait pas trop un problme (mais aprs quelques recherches, il s'avre que cela n'a pas l'air relativement simple). 




> Ensuite il vous faudra trouver un petite bibliothque qui transforme un pdf en srie d'images. Et oui, il faut refaire le chemin inverse pour pouvoir traiter toutes les images  la suite.


Nous on s'occupe seulement de dtect la forme, leur application s'occupe ensuite de crer le PDF (ou tiff multi-page, png, jpeg ..).




> Pour terminer, si vous devez retrouver une forme simple (rond, carr, ...) dans un endroit bien prcis (coin suprieur gauche), cela sera sans doute TRES facile, mais lorsque l'on connatra la forme exacte.


C'est  nous (probablement) de choisir la forme. Cela facilite sans dote le problme.

----------


## ToTo13

Bonjour,

si c'est vous qui choisissez la forme, alors prenez quelque chose simple et si possible de rgulier.
Ce que j'entends comme rgulier, c'est que cette forme soit faite  partir d'un tampon, cela vitera d'avoir  jouer sur les marges d'erreur.
Donc toute forme gomtrique simple fonctionnera trs bien : cercle, disque, carr.
J'aurai sans doute une prfrence pour un triangle grisant le coin suprieur de la feuille. C'est trivial  faire pour l'utilisateur(dessiner), vite d'utiliser un tampon et facile  dtecter (une tche sombre dans un coin avec des cot forms par des lignes).

----------


## dewey01

Bonjour,
Nous nous sommes un peu renseign, et il semblerais que OpenCV soit utilisable en C.
Est-ce une bonne voie d'utiliser OpenCV en C (sachant que nous maitrisons ce langage) pour coder notre reconnaissance et ensuite en faire une dll ?

Sinon avez quelqu'un liens de tutos (j'ai trouver la doc officiel mais il y a plusieur partie je ne vois pas trop laquelle tudier).

Merci d'avance.

Dewey

----------


## ToTo13

Bonjour,

oui, OpenCV est utilisable en C (certains chercheurs de mon labo le font).

Donc OpenCV sera trs bien pour tout ce qui est lecture/criture et les fonctions de base.

Pour ce qui est lien et Tutos, je vous conseille de regarder dans le forum OpenCV qui se trouve dans la rubrique C/C++.

----------


## dewey01

> Donc OpenCV sera trs bien pour tout ce qui est lecture/criture et les fonctions de base.


Je ne saisis pas trop !

Sinon merci pour les rponses en tout cas.

----------


## ToTo13

Bonsoir,

OpenCV va te permettre de manipuler, lire/crire des images trs facilement.
Il y a mme pas mal d'algorithmes courant de traitement d'images : filtres, segmentations, tracking, ...

Donc pour les manipulations de base, ce sera trs facile de travailler avec OpenCV.
En revanche, il te faudra ajouter ton travail,  savoir :
 - conversion pdf en images.
 - dtection de la forme de base.

----------


## dewey01

> En revanche, il te faudra ajouter ton travail,  savoir :
>  - conversion pdf en images.
>  - dtection de la forme de base.


Pour la convertion en pdf c'est dj fait, mais pour la dtection de la forme de base je pensais justement que OpenCV faisait la comparaison entre l'image scanne et notre forme de base pour savoir si elle se trouve ou non sur la page scanne.

Peut-tre qu'on ne parle pas de la mme chose depuis le dbut  ::):

----------


## ToTo13

Bonjour,

je ne suis pas un spcialiste de OpenCV, mais je ne crois pas qu'il existe ce genre de fonction dj implment.
Vous pouvez toutefois poser la question dans le forum ddi  OpenCV.

De toute faon, selon le choix de la forme, le plus simple est de recrer quelque chose soit mme.
Surtout si vous dcidez de choisir comme forme une simple noircissement d'un coin.

----------

