Matlab equivalent of python code to rotate an image

25 ビュー (過去 30 日間)
Marcel345614
Marcel345614 2022 年 1 月 27 日
コメント済み: Marcel345614 2022 年 1 月 31 日
What is the matlab equivalent for the following python code:
image = cv2.flip(imgage, 1)
row,col = image.shape
center=tuple(np.array([row,col])/2)
rot_mat = cv2.getRotationMatrix2D(center,-130,1.0)
image = cv2.warpAffine(image, rot_mat, (col,row))
new_image=cv2.warpPerspective(imgage, other_matrix, (row, col), cv2.INTER_NEAREST)
I already have,
image=flipdim(image ,1); % is this correct??
rot_cen=[size(image,1)/2, size(image,2)/2];
rot_ang=deg2rad(-130);
rot_mat=affine2d([cos(rot_ang) sin(rot_ang) 0; -sin(rot_ang) cos(rot_ang) 0; ((1-cos(rot_ang))*rot_cen(1)-sin(rot_ang)*rot_cen(2)) (sin(rot_ang)*rot_cen(1)+(1-cos(rot_ang))*rot_cen(2)) 1]);
image=imwarp(image,rot_mat);
but I'm quite unsure about it (and one part is missing..)

採用された回答

Image Analyst
Image Analyst 2022 年 1 月 27 日
@Marcel345614, thanks for reinforcing why I use MATLAB instead of Python! 😄
image=flipdim(image ,1); % is this correct??
No that is not correct. You should never call a variable image (or any other function name) since image is the name of a very important built-in function. Simply do
rotatedImage = imrotate(inputImage, angleInDegrees);
  8 件のコメント
Image Analyst
Image Analyst 2022 年 1 月 28 日
編集済み: Image Analyst 2022 年 1 月 28 日
Honestly I don't do much or any warping in MATLAB so you'd have to figure that out just like I'd have to, so I'll leave it to you.
imshow() does not shift the image. I think you're not using the image you thought you were, like maybe you saved the figure with saveas() or print() or exportgraphics() rather than imwrite(), so you're getting some of the figure padding around the image, which depends on how you size and shape the figure on your screen.
If your original question is basically answered, can you click on the Accept this answer link for the best answer? Thanks in advance.
Marcel345614
Marcel345614 2022 年 1 月 31 日
I have no idea what the problem with imshow was. I restarted Matlab(I know this would always be the best problem solution ;-) ) and now it works properly.
Thanks for your help!

サインインしてコメントする。

その他の回答 (1 件)

Benjamin Thompson
Benjamin Thompson 2022 年 1 月 27 日
If you are using imwarp then you have the image processing toolbox. Try looking at imrotate.
  1 件のコメント
Marcel345614
Marcel345614 2022 年 1 月 28 日
Thanks for the answer!

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCall Python from MATLAB についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by