Dav*_* D. 8 camera android angle android-camera
我想知道相机的视角,就像在这个问题中,但使用android.hardware.camera2.如何使用新的camera2库重现下一个代码.
Camera.Parameters p = camera.getParameters();
double thetaV = Math.toRadians(p.getVerticalViewAngle());
double thetaH = Math.toRadians(p.getHorizontalViewAngle());
Run Code Online (Sandbox Code Playgroud)
有没有办法做同样的事情?
小智 6
我搜索谷歌一个人展示的可能性,他通过Camera2 api计算FOV
https://photo.stackexchange.com/questions/54054/calculating-the-field-of-view-for-a-nexus-5
并找到了等式
http://www.bobatkins.com/photography/technical/field_of_view.html
FOV(直线)= 2*arctan(帧尺寸/(焦距*2))
因此,我们需要知道帧大小和焦距
框架大小是相机的大小,你可以在下面的链接找到代码
另外,焦距你可以在下面链接找到
我把这样的代码组合起来
函数calculateFOV()计算FOV角度
https://github.com/pchan1401-ICIL/Camera2FOV
就我的研究而言,答案是否定的.使用camera2API,没有可以为您提供垂直和水平视角的通话.
但是,您无需使用camera2API来获取这些值.您可以使用原始cameraAPI获取垂直和水平视角,然后将camera2API用于应用程序的其余部分.
据我所知,相机和camera2API 之间的实际图像捕获固件没有变化.
你可以用数学方法来做。

你有:
L,物体的宽度d,到物体的距离您想要计算角度a(alpha),即视野。
做一些三角函数:
tan(a/2) = (L/2)/d
tan(a/2) = L/2d
a/2 = atan(L/2d)
a = 2*atan(L/2d)
Run Code Online (Sandbox Code Playgroud)
您可以这样做来计算水平视野。祝你好运!
| 归档时间: |
|
| 查看次数: |
5857 次 |
| 最近记录: |