在OpenCV拼接示例中使用匀称矩阵来转换数据点。

问题描述 投票:0回答:1

我使用的是OpenCV拼接样本 编码 或者你可以看到一个简化的版本 此处. 我的图像正在被正确地拼接成一个全景图,我想使用相同的Homography矩阵或Affine矩阵将一个图像上的单个数据点转换为全景图。我想使用相同的Homography矩阵或Affine矩阵将一幅图像上的单个数据点转换为全景图。数据点与图像是分开接收的,但该数据点的坐标是根据原始图像的尺寸。

我可以看到,在 Matchers.hpp 文件在opencv2文件夹中

110线 CV_PROP_RW Mat H; //!< Estimated transformation

这个Mat H是Homography矩阵,但我似乎找不到它在我一开始发布的拼接样本中的使用位置和方式。如果我得到这个信息,我就可以用同样的命令来变换这个数据点。如果我的方法是错误的,请告诉我还能做什么。

opencv transform homography image-stitching datapoint
1个回答
0
投票

所以我找到了答案。首先分别使用拼接后的输出图像和每个输入图像,找出所有输入图像被变换的同相矩阵。然后利用某幅图像的源点的透视变换和对应的同构来找出目的点。这样一来,你在一张输入图片中选取的作为源点的坐标,就会转化为拼接输出中的坐标作为目的点。而且会是输入中选择的那部分图片。

© www.soinside.com 2019 - 2024. All rights reserved.