Что лучший способ состоит в том, чтобы чертить линию по черно-белому (двоичному) изображению в MATLAB, если запуск и координаты конца известны?
Отметьте, я не пытаюсь добавить строку аннотации. Я хотел бы, чтобы строка стала частью изображения.
Возможно, вы захотите посмотреть мой ответ на вопрос SO о добавлении линии к матрице изображения. Вот пример, аналогичный тому, что я привел в том ответе, который сделает белую линию, идущую от индекса строки и столбца (10, 10)
до (240, 120)
:
img = imread('cameraman.tif'); % Load a sample black and white image
x = [10 240]; % x coordinates
y = [10 120]; % y coordinates
nPoints = max(abs(diff(x)), abs(diff(y)))+1; % Number of points in line
rIndex = round(linspace(y(1), y(2), nPoints)); % Row indices
cIndex = round(linspace(x(1), x(2), nPoints)); % Column indices
index = sub2ind(size(img), rIndex, cIndex); % Linear indices
img(index) = 255; % Set the line points to white
imshow(img); % Display the image
И вот полученное изображение: