正方形から台形への射影変換
22 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
正方形から台形への射影変換をしたいと考えています。
projective2d を使えばできると分かったのですが行列にどのような値を入れればいいのかがあるのかが分かりません。
もしわかる人がおりましたら教えていただきたいです。
0 commentaires
Réponse acceptée
Hernia Baby
le 7 Juil 2021
回転というよりは四隅の投影をおこないました。
以下を参照しています。
-------------------------------
初期化
clc,clear,close;
画像の読み込み
使用している画像は愛犬チャチャです。
img = imread('chacha_sq.jpeg' );
imshow(img)
投影前と投影後の4隅の設定
各点の(x,y)座標を設定します。
movingPoints :投影前の [左上, 右上, 左下, 右下]
fixedPoints :投影後の [左上, 右上, 左下, 右下]
movingPoints = [1 1; size(img,2) 1; 1 size(img,1); size(img,2) size(img,1)];
fixedPoints = [500 700; 1500-500 700; 35 1500-500; 1500 1500-500];
画像の変換
投影を行います。具体的には四隅をフィットさせるイメージです。
tform = fitgeotrans(movingPoints, fixedPoints, 'Projective');
RA = imref2d([size(img,1) size(img,2)], [1 size(img,2)], [1 size(img,1)]);
[out,r] = imwarp(img, tform, 'OutputView', RA);
画像の表示
imshow(out, r);
axis off;
7 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur 幾何学的変換とイメージ レジストレーション dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!