-1

我正在使用图形切割 cvFindStereoCorrespondenceGC() 函数:

void cvFindStereoCorrespondenceGC(const CvArr *left, const CvArr *right, CvArr *disparityLeft, CvArr *disparityRight, CvStereoGCState *state, int useDisparityGuess = 0)。

我的问题是:我应该得到的 disparityLeft 和 disparityRight 地图是什么?

不应该只有一个像 cvFindStereoCorrespondenceBM() 给你的视差图吗?

cvFindStereoCorrespondenceBM(const CvArr *left, const CvArr *right, CvArr *disparity, CvStereoBMState *state)

4

1 回答 1

0

左侧视差为您提供右侧左侧图像像素的位置。右侧视差为您提供左侧右侧图像像素的位置。

我想你的问题的真正答案是:如果你从左到右匹配会给你一个视差图,如果你从右到左映射,那会给你另一个视差图。

编辑: “匹配它们”比听起来简单:假设在 (i,j) 我们有一个左视差 d,这意味着 IL(i,j) 匹配 IR(i,jd),反之亦然。

于 2013-11-05T22:53:55.917 回答