开放式CV鸟瞰拼接



所以我正试图为我的大学毕业项目生成鸟瞰图,我已经成功地完成了:

  1. 校准鱼眼相机并使其不受干扰(我使用四个相机,右、左、前、后(
  2. 使用先验变换为四帧中的每一帧生成鸟瞰图

现在我需要将它们缝合在一起,有人知道如何实现吗?我正在使用python和OpenCv。我试着使用stitcher类,但它不起作用:

stitcher = cv2.Stitcher.create(cv2.Stitcher_PANORAMA)
(status,result) = stitcher.stitch(warped) # warped is a list containing 4 images 
if (status == cv2.STITCHER_OK):
print('Panorama Generated')
else:
print('Panorama Generation Unsuccessful')

总是不成功

我认为在这种情况下,cv2.Stitcher返回状态=1(ERR_NEED_MORE_IMGS(,因为它无法估计图像之间的变换。

由于BEV图像看起来可能与缝合器要操作的标准图像大不相同,因此可能需要调整类暴露的各种参数。例如,您可以尝试将置信阈值降低到某个值<1:stitcher.setPanoConfidenceThresh(0.0)

如果你发布BEV图片(也就是说,它们能匹配吗?(,这也会有所帮助。

顺便说一句:如果你把图像转换成BEV,那么你可能已经有了相机的外特性(旋转和平移(。这足以创建一个共享BEV;虚拟的";相机在原点。Stitcher::stitch涉及相当多的步骤——特征检测、匹配、变换估计、束调整、混合。大多数步骤都用于查找图像的转换,您应该已经知道了。所以在这里使用它有点过头了。

相关内容

  • 没有找到相关文章

最新更新