【问题标题】:How to find the object length using camera in android如何在android中使用相机查找对象长度
【发布时间】:2012-11-28 21:47:42
【问题描述】:

我想使用相机查找对象长度。我搜索了很多,我找到了 距离和视角的关系。 公式角度= arctan(d/2f) 但我很沮丧,没有找到任何相关代码。所以请建议我工作 代码以使用相机查找对象高度。如果与物体的距离是 然后知道如何找到对象的长度 在此先感谢

【问题讨论】:

  • 你如何找到距离?你会如何调整视角?你需要更好地定义你的问题,否则我看不出你怎么能以一般的方式做到这一点。
  • 实际上距离是用户输入的,所以我知道距离,但透视部分我不清楚
  • 您需要知道物体离相机有多远。理论上,您可以自动对焦相机,然后读取焦距。但是,我从来没有找到在询问焦距时给出有意义答案的安卓相机。
  • 如果一个物体有一个角度,但直接朝向或远离相机倾斜怎么办?
  • 您还需要了解相机的视野。如果它有一个广角镜头,物体会显得更小。您可以使用 Camera.Parameters.getVerticalViewAngle() 来做到这一点。

标签: android


【解决方案1】:
verticalViewAngleDegrees = myCamera.getParameters().getVerticalViewAngle();
heightOfObjectFillingImage = 2 * userSpecifiedDistance * tan(toRadians(verticalViewAngleDegrees/2));
approxHeightOfObject = verticalPixelsOfObject / verticalPixelsOfWholeImage * heightOfObjectFillingImage;

我不相信三角函数是我能做到的最好的,但这是第一个近似值。

【讨论】:

  • 现在我试试这个代码,如果它有效,那么我接受它并感谢 emrys
  • 如何找到 'verticalpixelofobject' 和 'verticalpixelsof wholeimage' 请帮帮我
  • verticalPixelsOfWholeImage 是相机提供的整个图像的像素长度。 verticalPixelOfObject 是您要测量的对象占用的该图像的像素数。
猜你喜欢
  • 1970-01-01
  • 2016-07-20
  • 1970-01-01
  • 2017-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多