CameraX ImageAnalysis 输出帧大小设置

探讨了CameraX中ImageAnalysis模块的帧大小设置方法,包括setTargetAspectRatio和setTargetResolution函数的使用,以及在小米MIX3上的测试结果,发现无法获取1920x1080的完整分辨率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CameraX ImageAnalysis 输出帧大小设置

设置分析帧大小有以下两个函数,只能选择其一,否则运行会出错

//设置宽高比
ImageAnalysis.Builder().setTargetAspectRatio(AspectRatio.RATIO_16_9)

//设置实际的尺寸
ImageAnalysis.Builder().setTargetResolution(Size(1920, 1080))

Camex配置中有如下描述

用例内部界面分辨率输出数据分辨率
预览宽高比:使目标与设置最相符的分辨率。
默认分辨率:最高的预览分辨率,或与上述宽高比匹配的最高设备首选分辨率。
最大分辨率:预览大小,指的是与设备的屏幕分辨率或 1080p (1920x1080) 匹配的最佳尺寸(以较低者为准)。
内部界面分辨率。提供元数据以允许 View 针对目标宽高比进行剪裁、缩放和旋转。
图片分析宽高比:使目标与设置最相符的分辨率。
默认分辨率:默认目标分辨率设置为 640x480。同时调整目标分辨率和相应的宽高比会导致支持的最佳分辨率低于 1080p。
最大分辨率:CameraX 将其限制为 1080p。目标分辨率默认设置为 640x480;如果您希望分辨率大于 640x480,则必须使用 setTargetResolutionsetTargetAspectRatio 从支持的分辨率中选择最接近的一个。
内部界面分辨率。
图片拍摄宽高比:最适合设置的宽高比。
默认分辨率:最高的可用分辨率,或与上述宽高比匹配的最高设备首选分辨率。
最大分辨率StreamConfigurationMap#getOutputSizes 中 JPEG 格式的相机设备的最大输出分辨率
内部界面分辨率。

真机(小米 MIX3 参数)测试结果如下,测试代码 Gitee:CameraXBasic

  • setTargetAspectRatio(AspectRatio.RATIO_16_9),ImageAnalysis 最大只能输出1280x720,无法输出1920x1080
  • setTargetResolution(Size(1920, 1080)) ,ImageAnalysis 最大只能输出1600x1200,无法输出1920X1080

综上
如果要拿到Camera输出的1920X1080数据,CameraX的API不适合


相关连接

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清霜辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值