2009-02-16 8 views
2

Je suis coincé en ce moment avec la définition de la dimension de chaque ligne. La liste que je veux gratter a plusieurs couleurs, et ce qui me dérange le plus une sélection:OCR: Comment trouver la bonne ColorMatrix pour définir de nouvelles couleurs?

Example

Comme vous pouvez le voir l'image que j'essaie d'analyser obtenu un fond blanc avec texte en vert. Le fond de sélection est gris avec du texte noir. Et chaque seconde ligne a un fond légèrement plus gris, mais j'ai réussi à manipuler le contraste avec un ColorMatrix. Juste pour référence, j'ai d'autres ColorMatrizes comme Greyscale, Negative, SetContrast, SetBrightness et ainsi de suite.

Ma méthode, qui recherche les lignes, fonctionne bien avec la majeure partie de l'image, mais la sélection la freine.

Alors maintenant je suis coincé et je ne sais pas quoi faire. J'ai googlé pendant une heure, mais je n'ai pas trouvé de solution.


Je pensais que je pourrais peut-être transformer le fond gris de la sélection à blanc sans affecter le texte et le reste de niveau de gris de l'image. Mais je ne trouve pas de ColorMatrix qui fasse le travail.

Connaissez-vous ou avez-vous une meilleure solution?

Répondre

1

Pourquoi utiliser une matrice de couleurs?

Il fonctionne (au moins pour votre exemple spécifique) beaucoup plus facile avec le fonctionnement -threshold de ImageMagick:

convert            \ 
    http://img18.imageshack.us/img18/210/lobbymd9.jpg \ 
    -threshold 50%          \ 
    result.jpg 

Résultat visuel:

Original   =>   Thresholded 50%

Thresholding feuilles essentiellement sur seulement 2 valeurs (zéro ou maximum) pour chaque couleur. Chaque valeur inférieure au seuil est définie sur 0, les valeurs supérieures au seuil sont définies sur 255 (ou 65535 si la profondeur est de 16 bits). L'effet final est une image pure en noir et blanc.