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

36 visualizaciones (últimos 30 días)
akasa
akasa el 7 de Jul. de 2021
Comentada: Atsushi Ueno el 8 de Jul. de 2021
正方形から台形への射影変換をしたいと考えています。
projective2d を使えばできると分かったのですが行列にどのような値を入れればいいのかがあるのかが分かりません。
もしわかる人がおりましたら教えていただきたいです。

Respuesta aceptada

Hernia Baby
Hernia Baby el 7 de Jul. de 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];
画像の変換
 投影を行います。具体的には四隅をフィットさせるイメージです。
 詳しくは 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 comentarios
akasa
akasa el 8 de Jul. de 2021
ご回答ありがとうございます。
間にある回答を見ておりませんでした。
私の目的としては、上の画像の赤い部分に他の画像を貼って掲示板のように見せたいと考えています。
別アプリで作るとなると手間が多くなるため、matlab上で完結させたいと考えています。
またこの画像を作っているプログラムを改造できるならそれが手っ取り早いと思うのでそうしたいです。
よろしくお願いいたします。
Atsushi Ueno
Atsushi Ueno el 8 de Jul. de 2021
この質問は「射影変換を行う方法」であり既に完結しているので、コメントを別の質問に改めます。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre 幾何学的変換とイメージ レジストレーション en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!