android - 使用后置摄像头计算场景亮度

标签 android image-processing android-camera luminance

我正在使用 Samsung Galaxy Tab 10.1"在 Android 上构建应用程序。 我想使用设备的后置摄像头获取场景亮度值。

不幸的是,我无法找到直接访问设备背面的光传感器读数的方法。因此,我目前通过计算每个灰度帧的平均值来手动估计亮度。然而,由于帧曝光和白平衡的自动校正,这种方法并不准确。例如,如果您将相机指向非常亮的光源,相机将使整个图像变暗,并且灰度帧的平均值将太低(因为亮源之外的区域现在将非常暗)。

我搜索了允许我禁用我提到的自动更正的方法,但没有找到任何东西。

有没有一种方法可以让我使用后置摄像头获取场景亮度值?

最佳答案

遗憾的是,您的说法是正确的,目前无法从 Android 相机 API 获取此数据。

根据您的设备,您也许能够捕获图片,然后读取其中的 EXIF 数据。这可能会让您看到曝光(ISO 和快门速度)。这是 Tiny Light Meter 之类的应用程序的方法使用。问题是有些设备没有完全填充 EXIF 数据,因此这种方法是随机的。

关于android - 使用后置摄像头计算场景亮度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13144680/

相关文章:

c++ - 在 Objective-c (Cocoa) 中检测图像上的白色像素线

java - 如何更改相机保存路径?

java - OnFrameAvailable 回调未到来

android - 前后镜头同时录制后如何保存在同一个文件中?

android - Ionic5 电容器修复 AndroidManifest.xml 缺少 Activity 名称

android - 依赖项有什么问题?我正在使用 androidX

python - 在 OpenCV Python 中裁剪矩形

performance - 如何构建减少迭代次数的循环

android - Live Admob 广告无法加载

android - Android 中填充或边距的最佳做法是什么?