IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 第39讲 Android Camera2 API 通过ZoomRatio控制Zoom缩放 -> 正文阅读

[移动开发]第39讲 Android Camera2 API 通过ZoomRatio控制Zoom缩放

本讲是Android Camera专题系列的第39讲,我们介绍Android Camera2 API专题的通过Zoom Ratio控制Zoom缩放,包括如下内容:

  1. 为什么要在API Level 30引入Zoom Ratio来控制Zoom
  2. 通过Zoom Ratio控制Zoom
    • Zoom Ratio与Crop Region同时使用说明
    • Zoom Ratio对3A Region的影响
    • Zoom Ratio对Physical Camera影响

视频在线观看:

加入知识星球与更多Camera同学交流
– 星球名称:深入浅出Android Camera
– 星球ID: 17296815

为什么要在API Level 30引入Zoom Ratio来控制Zoom

  1. Crop Region都是整数,Zoom精度控制不够
    • 相比android.scaler.cropRegion控制Zoom,Zoom Ratio方式的精度更高
  2. Crop Region无法缩小到1倍以下
    • 通过Zoom Ratio可以Zoom到1倍以下(超广角Camera),android.scaler.cropRegion无法做到

但,Zoom Ratio仍然有他的缺点

  • 只能做CENTER_ONLY的Zoom,不支持FREEFORM的Zoom

  • 当使用Zoom Ratio来控制Zoom时,都是基于中心点不变的方式来Zoom,不支持FREEDOM方式进行Zoom。即使设置了FREEDOM的crop region也会被Camera Framework覆盖掉

Zoom Ratio与Crop Region同时使用说明

CaptureRequest#CONTROL_ZOOM_RATIO:App可以通过该Metadata以更简单的方式来控制Zoom,这里的Zoom包含了光学变焦和数字变焦

这里的光学变焦如何理解

  • 在Android手机上,可能会同时存在多个不同焦距的镜头,比如长焦Camera、广角Camera,超广角Camera

  • 使用Logical multi-cam时,当在这些Camera间切换时能产生不同的Zoom效果,这里的Zoom被认为是光学变焦

Zoom Ratio与Crop Region同时使用说明

  • 假设camera device的active array size为(2000,1500)
    • Active array size: 2000×1500 (3 MP, 4:3 aspect ratio)
    • Output stream #1: 640×480 (VGA, 4:3 aspect ratio)
    • Output stream #2: 1280×720 (720p, 16:9 aspect ratio)

Case #1: 4:3 crop region with 2.0x zoom ratio

  • Zoomed field of view: 1/4 of original field of view

  • Crop region: Rect(0, 0, 2000, 1500) // (left, top, right, bottom) (post zoom)

Case #1: 4:3 crop region with 2.0x zoom ratio

  • 640×480 stream source area: (0, 0, 2000, 1500) (与 crop region相等)

  • 1280×720 stream source area: (0, 187, 2000, 1312) (垂直裁剪)

Case #2: 16:9 crop region with 2.0x zoom

  • Zoomed field of view: 1/4 of original field of view

  • Crop region: Rect(0, 187, 2000, 1312)

Case #2: 16:9 crop region with 2.0x zoom

  • 640×480 stream source area: (250, 187, 1750, 1312) (水平裁剪)

  • 1280×720 stream source area: (0, 187, 2000, 1312) (与 crop region相等)

Case #3: 1:1 crop region with 0.5x zoom out to ultrawide lens

  • Zoomed field of view: 4x of original field of view (switched from wide lens to ultrawide lens)

  • Crop region: Rect(250, 0, 1750, 1500)

Case #3: 1:1 crop region with 0.5x zoom out to ultrawide lens

  • 640×480 stream source area: (250, 187, 1750, 1312) (垂直裁剪)

  • 1280×720 stream source area: (250, 328, 1750, 1172) (垂直裁剪)

从这些例子可以看出:

1.cropregion的坐标系统现在变成了有效的后变焦FOV3AFace看到的也是有效的后变焦FOV

2.在CaptureRequest中设置Zoom Ratio后,CaptureResult中,ZoomRatio表示Camera设备实际调整的倍数,Crop Region表示在Camera设备Zoom的基础上额外加上的Zoom倍数。

Zoom Ratio对3A Region的影响

举例:App想放大2倍,预览size为640×480,App想设置左上角1/4为3A ROI,有下面两种实现方式:

  • zoomRatio = 2.0, scaler.cropRegion = (0, 0, 2000, 1500)
    • android.control.aeRegions 需要设置为 (0, 0, 1000, 750)
  • zoomRatio = 1.0 (default), scaler.cropRegion = (500, 375, 1500, 1125)
    • android.control.aeRegions 需要设置为(500, 375, 1000, 750)

Zoom Ratio对Physical Camera影响

Zoom Ratio只会设置给Logical muti-camera,对Physical Camera不起作用.

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-01-04 13:32:50  更:2022-01-04 13:34:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:23:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码