基本上我要做的是使用每个图像上的预定义点覆盖两个图像。
图像可能有两种不同的尺寸,也可能有不同的尺寸,但目前尚不清楚。但图像是相同的。所以我想要做的是说图像上的这个点与图像2上的这个点相同。并且对多个点执行此操作然后使用matlab调整大小或变换以使所有这些点排成一行,这样两个图像就可以了覆盖。令我困惑的是让matlab自动调整图像,使它们“适合”在一起。
我不知道从哪里开始,只是希望能够大致了解我可以做些什么。
只是让别人知道如何做到这一点我会抛出我需要做的其他事情。在两个图像彼此叠加之后,一个图像将是区域图,另一个图像将是真实图像。我需要matlab做的是计算地图每个区域中真实图像的点数。
感谢您的帮助。
答案 0 :(得分:2)
您要做的是称为图像注册,这是一种非常常见的图像处理任务。您不需要编写太多代码,因为matlab已经为此构建了函数。您可以使用cp2tform从第一个图像到第二个图像创建变换,然后使用imtransform函数将变换应用于第一个图像。代码看起来像这样,假设控制点的x,y坐标是m×2矩阵,对于image1称为points1,对于image2称为points2。
tform= cp2tform(points1, points2 , 'similarity');
imtransform(image1, tform);