作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当使用SGBM获取视差图时,如果增加名为numisparities的参数,则图片的左侧部分会变大。这有什么问题吗?
numisparities=6*16
numisparities=12*16
numisparities=22*16
相关代码:
num = cv2.getTrackbarPos("num", "depth")
blockSize = cv2.getTrackbarPos("blockSize", "depth")
window_size = cv2.getTrackbarPos("windowSize","depth")
if blockSize % 2 == 0:
blockSize += 1
if blockSize < 5:
blockSize = 5
min_disp = 0
num_disp = 16 * num - min_disp
stereo = cv2.StereoSGBM_create(minDisparity=min_disp,
numDisparities=num_disp,
blockSize=blockSize,
P1=8 * 3 * window_size ** 2,
P2=32 * 3 * window_size ** 2,
disp12MaxDiff=1,
uniquenessRatio=10,
speckleWindowSize=100,
speckleRange=32
)
disparity = stereo.compute(imgL, imgR).astype(np.float32) / 16.0
disp = cv2.normalize(disparity, disparity, alpha=0, beta=255,
norm_type=cv2.NORM_MINMAX, dtype=cv2.CV_8U)
最佳答案
这是因为搜索范围。立体匹配是使用视差数来完成的。换句话说,仅使用numdisparity参数在左图像中搜索左图像中的像素A。为了从左到右搜索,将丢弃左侧部分。
为了填充该区域,通常他们会同时向左和向右视差,并进行LR一致性检查。
关于python - 在opencv SGBM中,当我使名为numDisparities的参数变大时,为什么视差图的左侧部分变暗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55472433/
我正在使用 StereoSGBM 来获取一个对象的 3D 坐标。但我发现 numDisparities 的不同值会改变视差矩阵。比如我设置numDisparities=64时,A点的视差为15。但是当
我是一名优秀的程序员,十分优秀!