find pixels of a line in picture

3 次查看(过去 30 天)
lena kappa
lena kappa 2021-3-24
评论: lena kappa 2021-3-24
Hello everyone, i have a question maybe its really easy but i dont really know how to do it.
How can i find the pixels in the pixture that corresponde in a certain line within the picture.
For example if i have the image bellow and i draw the red line as shown below how can i find the pixels of the image that are in that line.

回答(1 个)

KALYAN ACHARJYA
KALYAN ACHARJYA 2021-3-24
编辑:KALYAN ACHARJYA 2021-3-24
% Load the image
rgbImage=imread('image_line.png');
% Get the one plane/Gray Image
red_channel=rgbImage(:,:,1);
% Segment the ROI
line_seg=bwareafilt(imbinarize(red_channel,0.85),1);
% Display the Region of Interest
figure,imshow(line_seg);
% Get the rows and column indices of ROI
[r,c]=find(line_seg==1);
% Get the pixel values of particular rows & columns
rgbImage(r,c,:)
Note: you may get 3 pixels values for single row & cloumns indices, as there are three plane in the RGB image.
  3 个评论
KALYAN ACHARJYA
KALYAN ACHARJYA 2021-3-24
The original attached image is RGB image
lena kappa
lena kappa 2021-3-24
yes you are right it was my mistake.
what i wanted was to first draw the line in the pic and then find the coresponding pixel.
So for example if i want to draw a line 45 degrees starting from the point (0,0) of the pic and then find the coresponding pixels of that line.
Sorry if i did not post my question very crearly.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by