add vertical lines to an image
23 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
maryam
am 29 Aug. 2013
Kommentiert: Image Analyst
am 18 Feb. 2018
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 Kommentare
Akzeptierte Antwort
Image Analyst
am 29 Aug. 2013
Bearbeitet: Image Analyst
am 29 Aug. 2013
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 Kommentare
Journi Northorp
am 17 Feb. 2018
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
am 18 Feb. 2018
Try this:
m(:, 2:2:end) = 255;
where m is your matrix.
Weitere Antworten (1)
David Sanchez
am 29 Aug. 2013
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 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!