我想把墙和地板分开。现在,我有一个深度图像,在深度图像中找到曲面法线。我想把相同的法向量分组,然后把图像转换成二进制。你知道吗
下面的代码是如何找到曲面法线。你知道吗
d_im = depth_image.astype("float64")
zy, zx = np.gradient(d_im)
normal = np.dstack((-zx, -zy, np.ones_like(d_im)))
n = np.linalg.norm(normal, axis=2)
normal[:, :, 0] /= n
normal[:, :, 1] /= n
normal[:, :, 2] /= n
# offset and rescale values to be in 0-255
normal += 1
normal /= 2
cv2.imshow("Normal Image", normal[:, :, ::-1])
我想从墙上得到法向量。我该怎么办?多谢了
深度图像文件:
http://www.wikiupload.com/20D8UHUU58FTP2S
如何在程序中得到z向量?你知道吗
简单朴素的解决方案是使用法向量中的z分量和一些阈值 因为法向量是标准化的,所以地板的z分量的值接近1,而墙的z分量的值接近0 因此,阈值0.5可能是一个良好的开端 可能你需要一个去噪方法之后
相关问题 更多 >
编程相关推荐