stixel 理解
在车辆所处平面建立极坐标占位网格(polar occupancy grid),将视差图所代表的三维世界(3D world) 正交投影到该平面中。
occupancy:每个网格被赋予一个占位数,代表了该网格是障碍物的可能性的大小。可以预设一个阈值,占位数高于阈值的网格被认为是障碍物。
d,v就是disparity和纵坐标,将视差图的三维正交投影到图片平面
struct CoordinateTransform { CoordinateTransform(const CameraParameters& camera) : camera(camera) { sinTilt = (sinf(camera.tilt)); cosTilt = (cosf(camera.tilt)); B = camera.baseline * camera.fu / camera.fv; } inline float toY(float d, int v) const { return (B / d) * ((v - camera.v0) * cosTilt + camera.fv * sinTilt); } inline float toZ(float d, int v) const { return (B / d) * (camera.fv * cosTilt - (v - camera.v0) * sinTilt); } inline float toV(float Y, float Z) const { return camera.fv * (Y * cosTilt - Z * sinTilt) / (Y * sinTilt + Z * cosTilt) + camera.v0; } inline float toD(float Y, float Z) const { return camera.baseline * camera.fu / (Y * sinTilt + Z * cosTilt); } CameraParameters camera; float sinTilt, cosTilt, B; };
calcRoadModelVD计算出一个expected road disparity,即roadDisp
这是上边缘点计算menbership的公式:
1.类似于布尔代数,布尔代数中经常使用2的n次方-1,一个集合的非空子集的个数为2的n次方-1,如果你的n是一个小数呢,虽然实际上不存在,但这个确实能表达一种趋势性,这样也就代表了一种连续性
2.如果d为完美点是du,那这个M就为1,如果d距离无穷远,也就是d无穷大,那这个值就是-1
3.用2的指数,2的大于0的部分的变化比小于0的部分多,并且越接近1,变化越多,也就是说距离越进概率越大(距离越进概率越大有待考证)