Filter löschen
Filter löschen

How to rotate a line using Matlab?

28 Ansichten (letzte 30 Tage)
Makrim
Makrim am 16 Mai 2015
Bearbeitet: Habtamu Tesfaw am 12 Mär. 2021
Suppose I have an image I and a line h1. Using Matlab, I can draw the line (or segment) like this (in red) :
h1 = plot( [l1 l1],[20 100], 'r');
Now I want to rotate the image I with an angle of 45°. So I used imrotate like this:
IR = imrotate(I,45);
Now, I want to rotate the line, how to do that using Matlab ?
PS: I found the function rotate. I am trying this, but it is not working !
rotate(h1,[1 1],45);

Akzeptierte Antwort

Image Analyst
Image Analyst am 16 Mai 2015
imrotate() rotates an entire image, not a line you created with line() or plot(). You need to take your points and multiply by the rotation matrix - you know, the sin and cos thing you learned in your linear algebra class in college. Then call line() or plot() again with the rotated coordinates.
  1 Kommentar
Makrim
Makrim am 16 Mai 2015
it worked for the two points of the line ... thank you

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Habtamu Tesfaw
Habtamu Tesfaw am 12 Mär. 2021
Bearbeitet: Habtamu Tesfaw am 12 Mär. 2021
here is a simple package that can do the job '
https://www.mathworks.com/matlabcentral/fileexchange/88748-lrotate?s_tid=srchtitle

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by