我有一张从任意相机角度拍摄的棋盘图片。我发现两个消失点对应于形成棋盘格的两组线。从这两个消失点,我计算从棋盘平面到图像平面的单应性。
然后我应用逆单应性从顶视图重新渲染棋盘。但是,对于某些图像,重新渲染的顶视图非常大。也就是说,由于相机角度,反单应性拉伸图像的某些部分(即图像中非常接近消失点之一的区域)非常大。
这占用了不必要的大量内存,大部分变得高度伸展的区域都是我不需要的东西。因此,在应用逆单应性时,我想避免渲染图像中将被高度拉伸的区域。有什么好办法呢?
(我在MATLAB中编码)
答案 0 :(得分:1)
如果你只需要渲染棋盘而没有背景,你可以只提取棋盘的四个角并计算将它们映射到正方形四角的单应性。
然后,您可以通过使用此单应性对输入图像进行扭曲来获得棋盘的校正图像,注意仅渲染所需的区域(即您在棋盘上绘制地图的方块)。