2

我有一张从任意相机角度拍摄的棋盘的照片。我找到了对应于形成棋盘格网格的两组线的两个消失点。从这两个消失点,我计算从棋盘平面到图像平面的单应性。

然后我应用逆单应性从顶视图重新渲染棋盘。但是,对于某些图像,重新渲染的顶视图非常大。也就是说,由于相机角度,逆单应性将图像的某些部分(即非常接近消失点之一的图像区域)拉伸到非常大。

这占用了不必要的大量内存,并且大部分高度拉伸的区域都是我不需要的东西。因此,在应用逆单应性时,我想避免渲染图像的高度拉伸区域。有什么好方法可以做到这一点?

(我在 MATLAB 中编码)

4

1 回答 1

1

如果您只需要在没有背景的情况下渲染棋盘,您可以只提取棋盘的四个角并计算将它们映射到正方形的四个角的单应性。

然后,您可以通过使用此单应性扭曲您的输入图像来获得棋盘的校正图像,注意仅渲染所需的区域(即您映射棋盘的正方形)。

于 2013-05-28T21:52:10.507 回答