Задать вопрос
@tj57

Как повернуть изображение в matlab?

есть такой код

img = imread('путь_к_изображению');
[m,n,p]=size(img);
angle = 45*pi/180;
mm = round(m*cos(angle) + n*abs(sin(angle)));
nn = round(n*cos(angle) + m*abs(sin(angle)));
x0 = mm/2;
y0 = nn/2;

for x=1:mm
for y=1:nn
i = round(m/2 + (x-x0)*cos(angle) + (y-y0)*sin(angle));
j = round(n/2 + -(x-x0)*sin(angle) + (y-y0)*cos(angle));
if i>0 && j>0 && i<=m && j<=n
img2(x,y,:) = img(i,j,:);
end
end
end

imshow(img2);

если запустить несколько раз подряд, то текущая картинка будет открываться поверх предыдущей. как это исправить ?
  • Вопрос задан
  • 1264 просмотра
Подписаться 1 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
kendomag
@kendomag
Researcher, Pythonist, Kendoist
Это поможет? (Если я правильно понял вопрос.)
www.mathworks.com/help/matlab/ref/clf.html?request...

Если каждую картинку открывать в новом окне, то добавить figure
www.mathworks.com/help/matlab/ref/figure.html?sear...
Однако, аккуратнее если будете открывать много окон с помощью figure.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы