1

假设我有两张无人驾驶小型飞机拍摄的航拍照片(实际上我有一些航拍视频......那是很多照片)。这些图像是从同一区域拍摄的,但从不同的角度和高度拍摄。关于如何将它们匹配在一起的任何想法?

我曾经SIFT从 2 张图像中获取匹配点,并获得了大约 250 个匹配的配对。然后我曾经RANSAC将数量减少到大约 150 个匹配点。但我不知道如何将一张图像扭曲到另一张图像?

目前我使用cvWarpPerspective()and cvWarpImage()in OpenCV,但cvWarpPerspective()只需要 4 对点进行图像配准。结果并不准确。而且我还有超过 146 点未使用。

我该怎么办 ?

4

1 回答 1

0

findHomography使用 OpenCV 的函数查找 Homography 矩阵。

Mat H;
H = findHomography(homographyPoints1, homographyPoints2, CV_LMEDS);
warpPerspective(img1, oimg1, H, img1.size(), INTER_NEAREST);

扭曲两个图像,您将获得两个输出图像。您可以在此使用所有 150 分。将匹配的 150 个关键点推入单像点 1 和单像点 2(或其他一些向量)并使用CV_LMEDS. CV_RANSAC将随机选择 4 到 8 个点并计算可能不准确的单应性。

于 2013-03-19T15:13:14.890 回答