我有两个立体图像要用来计算深度图。虽然我不幸不知道C/C++,但我知道Python——所以当我发现this tutorial时,我是乐观的。
不幸的是,教程似乎有些过时了。它不仅需要调整以运行(将“createStereoBM”重命名为“StereoBM”),但当它运行时,即使在教程中使用的示例立体图像上,也不会产生好的结果。
下面是一个例子:
import numpy as np
import cv2
from matplotlib import pyplot as plt
imgL = cv2.imread('Yeuna9x.png',0)
imgR = cv2.imread('SuXT483.png',0)
stereo = cv2.StereoBM(1, 16, 15)
disparity = stereo.compute(imgL, imgR)
plt.imshow(disparity,'gray')
plt.show()
结果是:
这看起来与本教程的作者所取得的成就大不相同:
调整参数并不能改善问题。我所能找到的所有文档都是针对openCV代码的原始C版本的,而不是与python库等效的。很不幸,我没能用这个来改进事情。
任何帮助都将不胜感激!