Find coordinate of a point and place them in circular form

1 vue (au cours des 30 derniers jours)
Alina tom
Alina tom le 24 Mai 2018
Commenté : Alina tom le 29 Mai 2018
Hi all
I have multiple binary images which consist of 271 columns and I want to get the coordinates of white pixels from each column and place them in circular(cylindrical) from . like red dot. read these dots and plot then in cylindrical coordinate
Actually I want to read first column pixels from all the images and plot them into cylindrical from and then read the second column and make a new circle and so one for all the column of the images
First one is input image and 2nd one is the output of 1st frame of cylindrical and soo on . any one help me with code
  5 commentaires
Alina tom
Alina tom le 25 Mai 2018
Sorry if my questions are stupid
Walter Roberson
Walter Roberson le 25 Mai 2018
Sounds like something that iradon() might be useful for.

Connectez-vous pour commenter.

Réponse acceptée

Akira Agata
Akira Agata le 29 Mai 2018
As Walter-san mentioned, it sounds like iradon function. But seems not applicable this function directly. The following is my preliminary try and I believe possible solution would be like this.
Alina-san, let me clarify some points:
- Your data set contains 73 image files, so the result plots only 0~72 degrees. Is this OK for you?
- 1st and last column of each image is not a separated dots (separated logical "true"s) , but a line (continuous "true"s). These columns should be ignored, or should be plotted also?
fileList = struct2table(dir('./Images/*.tif'));
fileList = sortrows(fileList,'date');
h = 512; % Height of the image in pixel
BW = false(h);
for kk1 = 1:height(fileList)
I = imread(fullfile(fileList.folder{kk1},fileList.name{kk1}));
BWtmp = false(h);
BWtmp(:,h/2) = I(:,2);
BWtmp = imrotate(BWtmp,kk1-1);
center = size(BWtmp)/2;
BWtmp = imcrop(BWtmp,[center(1)-h/2+1,center(2)-h/2+1,h-1,h-1]);
BW = BW | BWtmp;
end
figure
imshow(BW)
  1 commentaire
Alina tom
Alina tom le 29 Mai 2018
Sir
Thanks a lot for you time and help ..
Yes i have uploaded the 73 images due to size issue . actually i want to get this from 0 to 180 degree
You are right that 1st and last column contain line . i want to plot just fisrt and last dot from these lines. not the whole line .
Thank you again for your percious time

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by