add vertical lines to an image
9 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
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
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.
更多回答(1 个)
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
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!