Morphological dilation in a certain direction

9 vues (au cours des 30 derniers jours)
Tanmoy
Tanmoy le 27 Mar 2015
Commenté : Image Analyst le 10 Avr 2015
Dilation by creating structuring element will dilate in all direction, but I want to do dilation in a particular direction, say 70 degree from a particular pixel. I understand that I need to write a self-adaptive function, but how? For example, I have a line with slope of 70 degree. I want to increase the length of the line in both end (by dilation). If i use "bwmorph()", it increases in all direction, But I need only in one direction.

Réponse acceptée

Image Analyst
Image Analyst le 27 Mar 2015
Not sure why you think "Dilation by creating structuring element will dilate in all direction" - it's just not true. For example to dilate only along the vertical direction, make a column vector:
se = true(15, 1); % 15 rows tall by one column wide column vector.
dilatedImage = imdilate(binaryImage, se);
So go ahead and make a 2D binary array with a line of "true"s at 70 degrees.
  1 commentaire
Tanmoy
Tanmoy le 28 Mar 2015
Thanks for the answer. Later on I found that dilation is not only for all way increment.

Connectez-vous pour commenter.

Plus de réponses (1)

Tanmoy
Tanmoy le 9 Avr 2015
I need to dilate in red line direction (slope is line's own slope). But, I have to extend the black line (image attached) in the direction (direction = slope) with certain length (say, I will set that to 10 pixels shown in red). Each line has to be dilated with it's own slope? I am trying several dilating concept form matlab.
  1 commentaire
Image Analyst
Image Analyst le 10 Avr 2015
So make up a kernel with a line of ones running along that direction. To get a precise direction you will have to have a very large kernel since with a 3x3 you have only 0, 45, and 90 degrees since you can go only horizontal, diagonally, or vertically.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by