android 摄像头比例,Android camara参数getZoomRatio()值与预期不符

调用函数“ camera.getParameters().getZoomRatios()”似乎是获取相机缩放比例的最安全方法.嗯,是这样,但是-据我所知-它在每个Android设备上的行为方式都不相同.

我已经测试了不同设备上的缩放比例:在华硕上调用getZoomRatios()时,它返回了以下内容:

[100、125、150、175、200、225、250、275、300、325、350、375、400、425、450,

?475、500、525、550、575、600、625、650、675、700、725、750、775、800].

在这些缩放比例下,如果您在1倍变焦下测试6.0厘米,那么在2倍变焦下将得到3.0厘米.

但是,三星给我返回了以下列表:

[100、102、104、109、111、113、119、121、124、131、134、138、146、150、155,

159、165、170、182、189、200、213、222、232、243、255、283、300、319、364、400].

这些值有些奇怪,因为在1倍变焦下测试6.0厘米时,如果在2倍变焦下无法达到预期的3.0厘米,则这些值将不正确.当我在设备的标准相机应用程序上验证缩放系数时,我意识到缩放比例必须等距.我改用等距值生成了另一个缩放比例列表:[100、110、120、130、140、150、160、170、180、190、200、210、220、230、240、250、260、270, 280、290、300、310、320、330、340、350、360、370、380、390、400].

例如,如果我要将缩放比例设置为2倍,则将显示“ parameters.setZoom(20)”(请参阅??原始的三星列表),这实际上是一个错误,因为我将无法获得预期的2倍.缩放,但3倍缩放(请参见生成的列表).

如果不信任您的zoomRatios列表,请尝试生成您自己的zoomRatios列表,并假定正确返回了最小(1X)和最大缩放值,并计算两个连续缩放比率之间的距离.顺便说一句,缩放比例列表的大小也是正确的,因此要计算两个连续缩放比例值之间的差异,可以使用以下公式:(greatestZoomRatio-minimumZoomRatio)/ numberOfZoomRatioElements.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值