add vertical lines to an image

조회 수: 19 (최근 30일)
maryam
maryam 2013년 8월 29일
댓글: Image Analyst 2018년 2월 18일
i've loaded an image and i'd like to add some vertical lines on it,could anybody help me? the image is voltage curve and i need the exact value of the voltage at any time. so i decided to add vertical lines to it,and then by using graph digitizer extract the values.

채택된 답변

Image Analyst
Image Analyst 2013년 8월 29일
편집: Image Analyst 2013년 8월 29일
Is it a color image or a grayscale image? Do you want the lines burned into the image, or above it in the overlay?
[rows, columns, numberOfColorChannels] = size(yourImage);
spacing = 50; % Whatever.
for row = 1 : spacing : rows
line([1, columns], [row, row]);
end
for column = 1 : spacing : columns
line([column, column], [1, rows]);
end
If you want them in the overlay, simply use the line() function. If you want it burned into a grayscale image:
grayImage(:, columnNumber) = 255; % White = 255, can pick any intensity.
grayImage(rowNumber, :) = 255;
Same thing for color, just do it in whatever color channels you want. You can also control the color of the line that way.
  댓글 수: 3
Journi Northorp
Journi Northorp 2018년 2월 17일
Can you give me an example please? I have to make vertical lines in white for every other column of a 20x20 matrix.
Image Analyst
Image Analyst 2018년 2월 18일
Try this:
m(:, 2:2:end) = 255;
where m is your matrix.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

David Sanchez
David Sanchez 2013년 8월 29일
The following draws a vertical line on your_image from pixel (20, 10) to pixel (20, 50):
image(your_image);
hold on
x=[20 20];
y=[10 50];
line(x,y)
hold off

카테고리

Help CenterFile Exchange에서 Modify Image Colors에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by