【问题标题】:what parameter adjust can make the disparity result correctly? using cv2.StereoBM in opencv什么参数调整可以使视差结果正确?在 opencv 中使用 cv2.StereoBM
【发布时间】:2020-07-27 00:12:40
【问题描述】:

resultleftright

   import numpy as np
   import cv2

   imgL = cv2.imread("C:/Users/admin/jupyter/car/challenge_pictrue/right/right2.jpg ",0)
   imgR = cv2.imread("C:/Users/admin/jupyter/car/challenge_pictrue/left/left2.jpg ",0)

   cv2.imshow('imgL', imgL)
   cv2.imshow('imgR', imgR)

   stereo = cv2.StereoBM_create(numDisparities=16, blockSize=17)
   disparity = stereo.compute(imgL, imgR)
   disparity = cv2.normalize(disparity, disparity, alpha=0, beta=255, norm_type=cv2.NORM_MINMAX, 
   dtype=cv2.CV_8U)
   cv2.imshow('disparity', disparity)
   cv2.waitKey(0)
   cv2.destroyAllWindows()

“我应该调整什么参数才能使结果正确?”

【问题讨论】:

  • 结果有什么问题?为什么你认为它是错误的?
  • 我看不清楚任何障碍物。所以我认为这是错误的。
  • 您尝试在 StereoBM_create 的参数中进行哪些更改?您是否尝试过为 blockSize 使用更大的值?见docs.opencv.org/4.1.1/d9/dba/…
  • 这篇论文的结果就是我想要的。 link。是的,我尝试改变blockSize,但汽车的信号会消失。其实我只是想看看任何障碍物,而不是空气和道路。
  • 我认为您需要交换 imgL 和 imgR 中的文件。您已将 right2 分配给 imgL。

标签: python opencv


【解决方案1】:

错误的方法。 BM 仅适用于动态测量范围低的简单室内使用。对于室内图像,您只需要调整思维导图和显示数量和窗口大小。

对于户外,它更复杂。也许你才刚刚开始。 BM 和其他基于全局的方法效果不佳。要么是因为过拟合而毁容,要么是由于局部相似性错误造成的条纹效应。

传统 CV 的当前最新技术是 HH 提出的基于 SGM 的方法。对于基于深度学习的方法,没有最佳案例,因案例/数据集到数据集而异。 lecun Žbontar 的作品《Stereo Matching by Training a Convolutional Neural Network》是我经常用来比较的。

对于高级任务,尽量不要使用太便宜/低复杂度的算法。而且,如果您将其用于实际的驾驶动作控制(因为我看到了您的其他 Vdispary 问题),您将被杀死。我已经在不同的地方对此进行了测试。这不是正确的方法。使用激光雷达或其他主动测距以提高安全性

这是我使用 SGM 进行人口普查的结果。你可以参考这个链接 https://docs.opencv.org/trunk/d3/d14/tutorial_ximgproc_disparity_filtering.html转载。

白点表示靠近的物体。通过 Vdispaity,当没有对象时,它会说有靠近的对象。从而导致汽车突然停车。你可以参考我在 NTU 的论文来了解如何删除它们。并记得正确引用它们

问候

袁生海博士

【讨论】:

  • 亲爱的袁生海,你的意思是如果我用它来进行实际的驾驶动作控制,我会被自己弄死的。多么令我震惊的一句话。你的意思是说现在的算法在快速变化的图像信息中不能得到好的切割信息吗?还是一些高亮度信息会让电脑误判有障碍物靠近?
  • 单靠立体声是不稳定的。尝试添加一些其他有源传感设备。目前那些自动驾驶汽车撞死事故都是来自仅视觉导航,优步(没有运行激光雷达),特斯拉(屡犯)。基于视觉的导航比立体声复杂得多。立体仅提供深度提示,还有更多线索来细化场景深度,例如运动视差、对象透视变换(由语义知识生成)。太复杂了
  • 对于超级杀戮案例,他们忽略那些小白点(关闭对象),因为他们认为这是误报。所以我想你应该明白我的意思。参考:extremetech.com/extreme/….
猜你喜欢
  • 2016-06-24
  • 2014-05-26
  • 1970-01-01
  • 1970-01-01
  • 2018-02-07
  • 2018-06-11
  • 1970-01-01
  • 2021-11-13
  • 1970-01-01
相关资源
最近更新 更多