Find coordinate of a point and place them in circular form

1 view (last 30 days)
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 Comments
Walter Roberson
Walter Roberson on 25 May 2018
Sounds like something that iradon() might be useful for.

Sign in to comment.

Accepted Answer

Akira Agata
Akira Agata on 29 May 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 Comment
Alina tom
Alina tom on 29 May 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

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!