【问题标题】:In openCV warpPerspective, how do I transform the left image and stitch it to the image on the right?在 openCV warpPerspective 中,如何转换左侧图像并将其拼接到右侧图像?
【发布时间】:2020-01-19 19:05:56
【问题描述】:

我正在尝试通过执行 SIFT->KNN->warpPerspective 使用 OpenCV 进行图像拼接。关于如何将右侧的图像变形以缝合到左侧的目的地,有很多资源。我已经尝试计算单应矩阵以将左图像扭曲到右侧,这似乎有效。问题是,我无法将图像与 cv2.warpPerspective 拼接在一起,因为如果右侧图像变形,它似乎会将图像放在应有的位置。

我的代码基本上是:

result = cv2.warpPerspective(left, H, (left.shape[1] + right.shape[1], left.shape[0])
result[0:right.shape[0], result.shape[1]-right[1]:] = right

但这会导致图像偏移向右移动。如何正确拼接图像?

【问题讨论】:

  • 我不清楚您所说的问题。您能否进一步解释和/或展示图表或图像。

标签: python opencv image-processing computer-vision image-stitching


【解决方案1】:

首先,您应该调整图像的大小并将它们放在一个更大的图像中,每个图像 outer_x= image_x*5outer_y= image_y*3

outer_x= image_x*5
outer_y= image_y*3
result = cv.warpPerspective(left_image, H, (outer_x, outer_y))
result[:, x_img * 2 : x_img*3] = right_image[j][:, x_img * 2 : x_img*3]

【讨论】:

    【解决方案2】:

    是的,看起来有很多资源可以将右侧的图像扭曲到左侧的目的地。然而,如果我们想做与此相反的操作,即转换左侧图像并将其拼接到右侧图像,我们可以简单地翻转两个图像,然后将右侧的图像扭曲以缝合到左侧的目的地,然后然后可以将结果翻转回来。这将等效于转换左侧图像并将其拼接到右侧图像。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-12
      • 1970-01-01
      • 1970-01-01
      • 2019-12-28
      • 2022-01-22
      • 2017-01-06
      • 2016-07-11
      • 1970-01-01
      相关资源
      最近更新 更多