Je souhaite reconstruire au mieux le texte à partir de l'image suivante. La partie délicate est que je veux le faire uniquement en utilisant des opérations morphorogiques sur l'image
J'ai essayé d'utiliser l'érosion, la dilatation, l'ouverture et la fermeture mais le résultat n'est pas très bon.
Est-ce seulement possible?
Réponses:
Si vous êtes prêt à ajouter / soustraire des images transformées morphologiquement, etc., vous pouvez compter le nombre de pixels de signal à proximité de chaque pixel et le seuil basé sur ce nombre.
Si vous convoluez ensuite avec un masque 3x3 qui a un trou au milieu, vous pouvez obtenir quelque chose comme ceci:
la source
C'est un problème assez intéressant à résoudre! Essayez un filtre médian . Voir la référence ici et ici pour plus de détails.
Bien que je n'aie pas mis la main pour simuler votre problème, ceci est une suggestion. Mon intuition dit que cela pourrait vous apporter de grands avantages, car il est connu pour contrer le bruit de type sel et poivre. Dans votre cas, les images ont des points blancs supplémentaires autour de la bordure qui seront convertis en blanc ou en noir complet selon le côté de l'alphabet. Voici à quoi il ressemble après le filtrage médian:
la source
Si, pour une raison quelconque, vous êtes limité à l'utilisation d'opérations morphologiques, vous pouvez envisager d'utiliser un «schéma de vote» d'opérations de fermeture orientées.
Un problème avec les opérations morphologiques est qu'elles ne prennent pas vraiment en compte la directionnalité. Pour le pixel central, un quartier comme celui-ci
n'est vraiment pas différent d'un quartier comme celui-ci
Cela peut causer des problèmes, car la dilatation et l'érosion ne sont pas biaisées lorsque vous les aimeriez. Donc, une chose que vous pouvez faire est de trouver l'opération morphologique à biais directionnel la plus appropriée en utilisant des noyaux quelque chose comme ceux-ci:
Ce serait mieux avec 5 x 5 noyaux, mais je pense que l'idée est assez claire. Fondamentalement, l'idée d'un noyau de détection de coin est un peu extensible de sorte qu'il s'agit d'un noyau de détection de segment de ligne. Vous pouvez également l'utiliser pour trouver les courbes les plus adaptées:
Évidemment, cela conduit à un grand nombre de noyaux, mais si l'idée de base fonctionne, cela vous promet qu'il existe un moyen d'optimiser la technique afin que le noyau le mieux adapté se trouve en une seule passe.
Dans tous les cas, si vous utilisez plusieurs noyaux et une certaine logique, chaque opération en (x, y) nécessite plus de calculs qu'une étape morphologique traditionnelle:
La taille du noyau doit correspondre à la taille de l'entrée. Plutôt que d'utiliser un noyau plus gros, vous pouvez utiliser un noyau "étalé" pour réduire le nombre d'opérations. Le noyau suivant est juste un noyau 3 x 3 avec un rayon supérieur à 1.
la source