Find coordinate of a point and place them in circular form
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Akira Agata
2018-5-29
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)
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!