我正在使用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)

这个迭代算法正在工作。但如果与内置的相比,它看起来相当缓慢和笨拙。
我在互联网上的camera2 api和android源代码中搜索了有关3A例程的信息,但找不到具体的内容。有些报告提到了3A图书馆。我想知道的是,它是开源和标准的所有Android设备?或者我在哪里可以得到有关移动设备中自动曝光实现的信息?

最佳答案

不幸的是,自动曝光算法通常是被严密保护的秘密,我不知道任何android相机hals的实现,包括开源的自动曝光代码。
内置的自动曝光还可以使用硬件生成的统计数据和对其运行的设备的熟悉程度(算法通常针对每个设备进行定制,对于高端设备更是如此),这样可以缩短反馈循环并提高操作效率。
由于这些统计信息/etc因设备而异,因此当前没有接收它们的camera2 api接口。

10-08 09:05