【问题标题】:Camera API2-Control exposure level for a fixed region in cameraCamera API2-控制相机中固定区域的曝光级别
【发布时间】:2017-12-19 06:48:59
【问题描述】:
在探索 android camera2 api 时,我知道我们可以根据需要设置曝光级别,但问题是我想控制聚焦区域的曝光级别,例如,如果我们点击相机屏幕的任何部分,它将被聚焦,然后我们可以增加/减少该聚焦区域的曝光水平。由于我是 android 新手,如果您知道如何处理这个或任何对我有帮助的教程。
【问题讨论】:
标签:
android
android-camera
android-camera2
autoexposurecompensation
【解决方案1】:
这在硬件级别是不可能的。普通移动设备图像传感器对整个图像只有一个曝光值,因此无法让某个区域比其他区域具有更长的曝光时间。
您可以在后期处理中使某个区域变亮或变暗,但这只是数字乘法,因此对曝光不足或过度曝光的区域没有帮助。但如果你想这样做,你可以将图像发送到 GPU,例如,然后编写一个 OpenGL ES 着色器以使用乘法因子渲染图像的一部分。
【解决方案2】:
Eddy 建议的替代方法是在不同曝光下拍摄多张照片。然后尝试将每个图像的不同区域混合在一起——这或多或少是一些 HDR 算法所做的。但同样,这取决于您实际尝试执行的操作 - 如果您尝试实时执行此操作,请按照 Eddy 所说的进行。
“获取 HDR 图像的方法有很多种,但最常见的一种是使用不同曝光值拍摄的场景照片。” (more info)