2017-01-24 1 views
2

Je dois reconnaître le texte du formulaire bancaire rempli à la main. Le formulaire a une grille comme indiqué dans l'image. Je suis nouveau au traitement d'image. J'ai lu quelques articles sur la reconnaissance de l'écriture manuscrite et j'ai fait du débruitage, de la binarisation comme tâches de pré-traitement. Je veux segmenter l'image maintenant et reconnaître les caractères en utilisant un réseau de neurones. Pour segmenter les personnages, je veux me débarrasser de la grille.Suppression d'une grille de l'image numérisée

Merci beaucoup d'avance. enter image description here

+0

SO n'est pas un site de codage. S'il vous plaît montrer un peu de travail afin que nous puissions vous aider à le rendre meilleur. – DyZ

+0

@DYZ J'ai essayé d'utiliser la fonction Denoising, Binarization et Edge sur l'image ci-dessus. Je ne comprends pas comment me débarrasser de la grille. Toute idée serait utile. –

+0

essayer les opérateurs d'érosion et de dilatation – Micka

Répondre

6

J'ai une solution utilisant OpenCV.

D'abord, j'inversé l'image:

ret,thresh2 = cv2.threshold(img,127,255,cv2.THRESH_BINARY_INV) 

enter image description here

Maintenant, je fis opération d'ouverture morphologique:

opening = cv2.morphologyEx(thresh2, cv2.MORPH_OPEN, k2) 
cv2.imshow('opening', opening) 

enter image description here

Vous c voir que les lignes de la grille ont disparu. Mais il y a aussi des gaos dans certains personnages. Donc, pour combler les lacunes je fis opération de dilatation morphologique:

dilate = cv2.morphologyEx(opening, cv2.MORPH_DILATE, k1) 
cv2.imshow('dilation', dilate) 

enter image description here

Vous pouvez consulter THIS LINK pour plus opérations morphologiques et noyaux utilisés.

+0

sur le feu, Jeru;) – Soltius

+0

@Soltius Hey toute idée sur la façon de ramener les caractères à la normale comme dans l'image originale? –

+0

Qu'est-ce que la fermeture donne plutôt que la dilatation? – Soltius