How to shear an imagesc image
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I have an image, created using imagesc function from a data matrix, like so:
imagesc (myarray, [-50 0]);
which I am then trying to shear by an angle a using the following code:
a = tand(10);
T = maketform('affine', [1 0 0; a 1 0; 0 0 1] );
B = imtransform(A,T,'cubic','FillValues',orange);
orange = [255 127 0]';
figure
imshow(B)
But I keep on failing, as I guess I'm not defining A (my original image created using imagesc) correctly.
Could anyone please explain how to define it correctly so it works as an input for the imtransform function?
Thank you.
2 Kommentare
Antworten (1)
Pranjal Kaura
am 26 Okt. 2021
Hey Linda,
Using functions 'imtransform' and 'maketform' is not recommended because of compatibilty considerations. You can use 'imwarp' and 'affine2d' instead. Here's a code snippet addressing the changes
a = tand(10);
T = affine2d( [1 0 0; a 1 0; 0 0 1] );
B = imwarp(img,T,'cubic','FillValues',0);
Could you share more information regarding your usecase and why you need 'imagesc' function? Also the complete code, wherein you're defining 'A'.
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!