Selecting that pixel that minimizes the distance
5 views (last 30 days)
Show older comments
Say I have the following two matrices:
>> x = [1 4 3; 6 4 3; 6 9 3; 2 4 3; 5 4 0; 5 3 1; 6 4 7];
>> y = [0 0 1; 1 1 0; 1 1 0; 0 1 1; 0.2 0.8 0.54; 1 1 1; 0 0 0];
Where you can think of `x` as some image, and `y` as the *degree of membership* of each element of `x` to some region of interest.
Say I set those elements in `x` that have degree of membership = 1 to `1` (*core*) and the other elements to `0` as follows:
x = zeros(size(y));
x(y==1) = 1;
In which case I will have the following output:
0 0 1
1 1 0
1 1 0
0 1 1
0 0 0
1 1 1
0 0 0
Now, for the elements of `0`, I substitute their values with the value of `y` in the corresponding location as follows:
x(x==0)=y(x==0);
Now, I select those pixels that are considered `4-neighbours` of `core` but not in core as follows:
four_neighbourhood_pixels = imdilate(core, strel('diamond', 1)) - core;
My question is: *how can we select a pixel `p` that belongs to `four_neighbourhood_pixels` that minimizes the distance between `x` & `core`*?
Provided that for distance I calculate it as follows:
pdist([x,core],'minkowski');
Provided that `x` in the preceding command will be the matrix after substituting the `zeros` with the degree of membership values `y` i the corresponding location?
So, how can I select that pixel that belongs to ` four_neighbourhood_pixels` that minimizes the distance between `x` with the zeros substituted and `core`?
Thanks.
6 Comments
Answers (0)
See Also
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!