工具/软件:
大家好、团队
我们正在探索 Gtrack 组跟踪器在 ADAS 应用中的功能、并发现了一些车辆尺寸检测方面的奇怪现象。 我们创建了一个测试物体、长度为 4 米、宽度为 2.4 米、在相同方向和相反方向上以近零方位角以 20m/s 的速度移动。 当测试对象朝相反方向移动时、在确定其尺寸时会出现显著误差。 下面介绍了两个实验。 电池尺寸对应于 25 米。

下面是使用的 Gtrack 参数。
GTRACK_sceneryParams appSceneryParams; memset((void *)&appSceneryParams, 0, sizeof(GTRACK_sceneryParams)); appSceneryParams.sensorPosition.x = 0.f; appSceneryParams.sensorPosition.y = 0.f; appSceneryParams.sensorPosition.z = 0.f; appSceneryParams.sensorOrientation.azimTilt = 0.f; appSceneryParams.sensorOrientation.elevTilt = 0.f; appSceneryParams.numBoundaryBoxes = 1; appSceneryParams.boundaryBox[0].x1 = -50.0f; appSceneryParams.boundaryBox[0].x2 = 50.0f; appSceneryParams.boundaryBox[0].y1 = 1.0f; appSceneryParams.boundaryBox[0].y2 = 250.0f; appSceneryParams.boundaryBox[0].z1 = -5.0f; appSceneryParams.boundaryBox[0].z2 = 5.0f; appSceneryParams.boundaryBox[1].x1 = 0.f; appSceneryParams.boundaryBox[1].x2 = 0.f; appSceneryParams.boundaryBox[1].y1 = 0.f; appSceneryParams.boundaryBox[1].y2 = 0.f; appSceneryParams.boundaryBox[1].z1 = 0.f; appSceneryParams.boundaryBox[1].z2 = 0.f; appSceneryParams.numStaticBoxes = 0; appSceneryParams.staticBox[0].x1 = -50.0f; appSceneryParams.staticBox[0].x2 = 50.0f; appSceneryParams.staticBox[0].y1 = 1.0f; appSceneryParams.staticBox[0].y2 = 250.0f; appSceneryParams.staticBox[0].z1 = -5.0f; appSceneryParams.staticBox[0].z2 = 5.0f; appSceneryParams.staticBox[1].x1 = 0.f; appSceneryParams.staticBox[1].x2 = 0.f; appSceneryParams.staticBox[1].y1 = 0.f; appSceneryParams.staticBox[1].y2 = 0.f; appSceneryParams.staticBox[1].z1 = 0.f; appSceneryParams.staticBox[1].z2 = 0.f; GTRACK_gatingParams appGatingParams; memset((void *)&appGatingParams, 0, sizeof(GTRACK_gatingParams)); appGatingParams.gain = 3.f; appGatingParams.limitsArray[0] = 10.f; appGatingParams.limitsArray[1] = 10.f; appGatingParams.limitsArray[2] = 2.f; appGatingParams.limitsArray[3] = 69.0f; GTRACK_stateParams appStateParams; memset((void *)&appStateParams, 0, sizeof(GTRACK_stateParams)); appStateParams.det2actThre = 3U; appStateParams.det2freeThre = 5U; appStateParams.active2freeThre = 10U; appStateParams.static2freeThre = 100U; appStateParams.exit2freeThre = 5U; appStateParams.sleep2freeThre = 0U; GTRACK_allocationParams appAllocationParams; memset((void *)&appAllocationParams, 0, sizeof(GTRACK_allocationParams)); appAllocationParams.snrThre = 100.f; appAllocationParams.snrThreObscured = 100.f; appAllocationParams.velocityThre = 0.01f; appAllocationParams.pointsThre = 2U; appAllocationParams.maxDistanceThre = 10.0f; appAllocationParams.maxVelThre = 2.0f; GTRACK_presenceParams appPresenceDetectionParams; memset((void *)&appPresenceDetectionParams, 0, sizeof(GTRACK_presenceParams)); appPresenceDetectionParams.pointsThre = 0U; appPresenceDetectionParams.velocityThre = 0.5f; appPresenceDetectionParams.on2offThre = 10U; appPresenceDetectionParams.numOccupancyBoxes = 1U; appPresenceDetectionParams.occupancyBox[0].x1 = -3.0f; appPresenceDetectionParams.occupancyBox[0].x2 = 3.0f; appPresenceDetectionParams.occupancyBox[0].y1 = 2.0f; appPresenceDetectionParams.occupancyBox[0].y2 = 6.0f; appPresenceDetectionParams.occupancyBox[0].z1 = 0.5f; appPresenceDetectionParams.occupancyBox[0].z2 = 2.5f; GTRACK_moduleConfig config; memset((void *)&config, 0, sizeof(GTRACK_moduleConfig)); config.stateVectorType = GTRACK_STATE_VECTORS_3DA; config.verbose = GTRACK_VERBOSE_WARNING; config.deltaT = 0.1f; config.maxRadialVelocity = 69.0f; config.radialVelocityResolution = 0.18f; config.maxAcceleration[0] = 10.0f; config.maxAcceleration[1] = 10.0f; config.maxAcceleration[2] = 0.0f; config.maxNumPoints = 800 config.maxNumTracks = 30; config.initialRadialVelocity = 0.0;
如何减少确定物体大小时出现的错误?
此致、
Dmitry