测量相机前面的相机和物体之间的距离

时间:2014-04-21 10:02:00

标签: android camera

由于已经提出这个问题,我没有得到任何明确的想法。所以我再次问这个问题。我正在努力两天。          我想计算我的设备的相机与相机前面的物体之间的距离。          我尝试使用传感器管理器,如下面link中所建议的那样,但我得到了错误的结果。

我使用了两个传感器加速度计磁场

我根据上述链接中的建议,根据设备的方向计算距离。

传感器侦听器中的onSensorChanged回调

@Override
    public void onSensorChanged(SensorEvent event) {

        if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER)
            gravity = event.values.clone();

        if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD)
            geoMagnetic = event.values.clone();

        if (gravity != null && geoMagnetic != null) {
            float R[] = new float[9];
            float I[] = new float[9];
            boolean success = SensorManager.getRotationMatrix(R, I, gravity,
                    geoMagnetic);
            if (success) {
                float orientation[] = new float[3];
                SensorManager.getOrientation(R, orientation);
                azimuth = 57.29578F * orientation[0];
                pitch = 57.29578F * orientation[1];
                roll = 57.29578F * orientation[2];

            }
        }


    }

肖像:

double dist = Math.abs((float) (1.4f * Math.tan(roll * Math.PI / 180)));

风景:

double dist = Math.abs((float) (1.4f * Math.tan(pitch* Math.PI / 180)));

请提供有关如何计算距离的信息。任何想法和建议都很明显, 提前谢谢。

0 个答案:

没有答案