How do I measure distance between all pixels in a letter?

2 visualizaciones (últimos 30 días)
mr
mr el 5 de Dic. de 2021
Comentada: Matt J el 6 de Dic. de 2021
I have an image like this:
and would need to measure the distance of all black pixels (which make up the letter T) from each other.
Can anyone recommend the best way?
I am particularly interested in the distance between pixels that make up the 'border' of the T, essentially this:
would you advise that I first turn the T into its own perimeter only (as in the second figure) and then map? Or is there a clever way to say "just map distances between pixels at the edge)?
many thanks
  1 comentario
Voss
Voss el 5 de Dic. de 2021
Say the border of the T contains 1000 pixels. Then the distance of all pixels from each other is a set of 1000*999 = 999000 distances (or 1000*1000 = 1000000 distances if we include the zero distances that each pixel is away from itself). Is that what you want to do?

Iniciar sesión para comentar.

Respuestas (1)

Matt J
Matt J el 5 de Dic. de 2021
load image
[i,j]=find(bwperim(A))
distances=pdist2([i,j], [i,j]);
  2 comentarios
mr
mr el 6 de Dic. de 2021
sorry, basic question, how did you save my image as logical structure?
Matt J
Matt J el 6 de Dic. de 2021
I used imbinarize().

Iniciar sesión para comentar.

Categorías

Más información sobre Image Processing Toolbox en Help Center y File Exchange.

Productos


Versión

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by