在使用被动双目相机(rc_visard相机)时发现我的桌面在深度图中是零值,非常奇怪,查阅说明文档发现了问题所在。记录一下给同样有疑问的其他小伙伴参考。
文档网址:https://doc.rc-visard.com/latest/de/stereo_matching.html
其中:
Beträgt die Disparität 0, bedeutet dies, dass die Projektionen des Objektpunkts in der gleichen Bildspalte liegen und der Objektpunkt sich in unendlicher Distanz befindet. Häufig gibt es Pixel, für welche die Disparität nicht bestimmt werden kann. Dies ist der Fall bei Verdeckungen auf der linken Seite von Objekten, da diese Bereiche von der rechten Kamera nicht eingesehen werden können. Zudem lässt sich die Disparität auch bei texturlosen Bereichen nicht bestimmen. Pixel, für welche die Disparität nicht bestimmt werden kann, werden mit dem besonderen Disparitätswert 0 als ungültig markiert. Um zwischen ungültigen Disparitätsmessungen und Messungen, bei denen die Disparität aufgrund der unendlich weit entfernten Objekte 0 beträgt, unterscheiden zu können, wird der Disparitätswert für den letztgenannten Fall auf den kleinstmöglichen Disparitätswert über 0 gesetzt.
说明深度图中出现0值无效值是因为被动双目相机(rc_visard相机)无法识别无纹理的物体。另外无限远的情况相机设定为高于零的最小值,方便区分。
所有的基于stereo vision的双目相机都是这个情况,毕竟没有纹理就无法进行匹配了。可以选择结构光相机或者购买结构光的projector。
这种奇怪的设定非常不爽啊有木有,但是可以用来进行一些骚操作……比如……如果程序需要平面分割的使用情况就干脆直接用一个纯色的板子当桌面就好了,反正板子的值是0,方便分割。