我正在使用Android Camera2 API开发自定义AE实现。目前的想法是将图像的平均亮度保持在某个灰度级(例如128)。所以算法可以这样描述:
calculate currentEV (using current shutterSpeed, currentISO and aperture);
calculate meanBrightness (using image data);
calculate desiredEV (using currentEV, currentMeanBrightness and desiredMeanBrightness);
calculate desiredShutterSpeed and desiredISO (using desiredEV)
这种迭代算法正在运行。但如果将它与内置相比,它看起来非常缓慢而且笨拙。 我在互联网和android源代码中搜索了关于Camera2 API中的3A例程的信息,但是找不到具体的东西。一些演讲提到了3A库。我想知道,对于所有Android设备,它是开源的还是标准的?或者我可以在哪里获得有关移动设备中自动曝光实施的信息?
答案 0 :(得分:3)
不幸的是,自动曝光算法通常是严密保密的秘密,我不知道任何包含开源自动曝光代码的Android相机HAL的实现。
内置自动曝光还可以使用硬件生成的统计数据并熟悉其运行的设备(算法通常针对每个设备进行定制,对于高端设备更是如此),这可以允许更短的反馈回路和更高效的操作。
由于这些统计数据/等因设备而异,因此目前没有相机2 API接口可以接收它们。