正方形から台形への射影変換

54 ビュー (過去 30 日間)
akasa
akasa 2021 年 7 月 7 日
コメント済み: Atsushi Ueno 2021 年 7 月 8 日
正方形から台形への射影変換をしたいと考えています。
projective2d を使えばできると分かったのですが行列にどのような値を入れればいいのかがあるのかが分かりません。
もしわかる人がおりましたら教えていただきたいです。

採用された回答

Hernia Baby
Hernia Baby 2021 年 7 月 7 日
回転というよりは四隅の投影をおこないました。
以下を参照しています。
-------------------------------
初期化
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];
画像の変換
 投影を行います。具体的には四隅をフィットさせるイメージです。
 詳しくは fitgeotrans と imref2d を参照してください。
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 件のコメント
Atsushi Ueno
Atsushi Ueno 2021 年 7 月 8 日
この質問は「射影変換を行う方法」であり既に完結しているので、コメントを別の質問に改めます。

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

その他の回答 (0 件)

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!