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

조회 수: 15 (최근 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
akasa
akasa 2021년 7월 8일
ご回答ありがとうございます。
間にある回答を見ておりませんでした。
私の目的としては、上の画像の赤い部分に他の画像を貼って掲示板のように見せたいと考えています。
別アプリで作るとなると手間が多くなるため、matlab上で完結させたいと考えています。
またこの画像を作っているプログラムを改造できるならそれが手っ取り早いと思うのでそうしたいです。
よろしくお願いいたします。
Atsushi Ueno
Atsushi Ueno 2021년 7월 8일
この質問は「射影変換を行う方法」であり既に完結しているので、コメントを別の質問に改めます。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 幾何学的変換とイメージ レジストレーション에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!