Matlab中的透视变换
Posted 岁月神偷小拳拳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab中的透视变换相关的知识,希望对你有一定的参考价值。
目的:将两幅尺寸不一,形状不同的图像上的像素点一 一对应起来。【可以是任意两个四边形之间的变换】
例如:已知一幅100x100大小的图像,resize为224x224后,可以通过透视变换,获得原图像上像素坐标在224x224图像上的对应坐标。
100x100 224x224
通过原图像上的四个顶点和resize图像上的四个顶点求透视变换矩阵,然后将原图像上的点对应到resize后的图像中去。
img_src =[1,1;1,100;100,1;100,100];
img_224 = [1,1;1,224;224,1;224,224];
TForm = cp2tform(img_src,img_224,'projective');
tmp = tformfwd(TForm,[100_x 100_y]); %100_x 100_y,原图像上的坐标
224_x = tmp(1);
224_y = tmp(2);%224x224图像上的坐标
以上是关于Matlab中的透视变换的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV 3:openCV 3.3.1 中的透视变换有啥问题?
OpenCV中的「透视变换 / 投影变换 / 单应性」—cv.warpPerspectivecv.findHomography