Analyse d'images - reconnaissance des fibres

11

Je suis complètement nouveau dans l'analyse d'images. Savez-vous comment binariser cette image de manière à obtenir uniquement les fibres?

entrez la description de l'image ici

Une procédure étape par étape serait géniale, mais tout indice est également apprécié. Je peux utiliser Matlab, .NET et je suis ouvert à tout autre outil.

PS: A cette adresse, vous pouvez trouver la même question

Oldrich Svec
la source

Réponses:

9

Hough transform est votre ami. Fondamentalement, il s'agit de lignes droites (et presque toutes les fibres de votre exemple sont droites). Vous pouvez trouver l'implémentation open source dans OpenCV ( voici l'exemple doc + résultat ).

De plus, il existe des généralisations capables de détecter des formes personnalisées.
PS Puisque vous utilisez C #, le wrapper OpenCV peut vous être utile.

Om Nom Nom
la source
3

D'après mon expérience, les résultats ne sont pas bons si vous n'utilisez pas un filtre passe-bas approprié, car vous avez clairement déclaré que vous ne vouliez pas de bruit. En outre, pour une utilisation dans Hough Transform, vous avez beaucoup d'options à modifier afin de détecter. Longueur du segment de ligne et angle des segments de ligne, vous pouvez ajuster ce que vous voulez. Résultat de transformation difficile avec peu de bruit

Héphaïstos
la source
1

Je suis d'accord sur la transformation de Hough, mais avant, il serait bon de passer l'image à travers le détecteur de bord ( Canny est préférable et disponible en OpenCV)

mirror2image
la source