how can i rescale image? standard is at the center part

3 ビュー (過去 30 日間)
dayeon
dayeon 2024 年 7 月 24 日
回答済み: Angelo Yeo 2024 年 7 月 24 日
hello, i want to rescale image using the center standard, not at the corner of the imge
I attatched the example image, the red square is the reference image, and the blue one is the rescaled image (here, the center part is marked as 'X', and not only this enlarging case, i want to apply this algorithm for reduction case)
i want to use affine transform or any other method using interpolation, and i want to input the ratio of rescale and output of the rescaled image
I repreciate to all of your answers thanks a lot :))
  3 件のコメント
dayeon
dayeon 2024 年 7 月 24 日
thank you for your amazing code! thank a lot! :))
Umar
Umar 2024 年 7 月 24 日
Hi dayeon,
You're welcome, if the Answer resolved your question, please Accept-click it.

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

採用された回答

Matt J
Matt J 2024 年 7 月 24 日
編集済み: Matt J 2024 年 7 月 24 日
Use imresize. It scales relative to the center.

その他の回答 (1 件)

Angelo Yeo
Angelo Yeo 2024 年 7 月 24 日
It looks like you want to apply affine transfomation to image and warp them. You can use imwarp to apply geometric transformations and interpolate them.
I = imread('cameraman.tif');
imshow(I)
A = [1 0.5 0;
0 1 0;
0 0 1];
tform = affinetform2d(A);
J = imwarp(I,tform);
imshow(J)

カテゴリ

Help Center および File ExchangeImage Processing Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by