我尝试编写一个App,可以实时检测设备摄像头捕获的光源的光频率(在50-200 hz之间)。最终目标是手动调整快门到特定的检测频率。
我目前正在使用Android NDK和Vulkan API。
我知道设备已经用内部的"反带算法"做了类似的事情。调整快门,去除/减少条带。
在logcat中甚至有一个调试输出来显示这个函数的运行情况。
# Logcat输出:
2022-07-11 11:26:54.027 26962-30674/? I/AntiBanding: FlickerSetDetectInfo(), flk : type = 1, freq = 0, m_f = 12, res = 91, var = 0.000000, avg = 9, dep = 100
我累了什么:
。使用设备内部的环境光传感器。不幸的是,我无法从传感器中获得超过3赫兹的采样率,我认为这是有意义的,因为这不是它的预期用途。
我不是一个真正的Android家伙,所以我的问题是:
- 有什么方法可以访问这个函数吗?
- 哪种传感器硬件用于反带检测?(目前测试设备:华为P40 Pro)
非常感谢!
你可能会对这个感兴趣:Android API为您的相机获得可用的抗带模式
我建议这样做,因为这可能会干扰您想要做的事情,所以我已经关闭了它…