我正在尝试编写代码,计算相机正确曝光时间,以使图像亮度正确。
我有一台相机提供我原始数据(Bayer原始数据),我可以控制它的曝光时间。我希望控制曝光时间,使得当它捕获图像时,图像的亮度是正确的(不过度曝光或不欠曝光)。
我认为我需要类似这样的算法:
我有一台相机提供我原始数据(Bayer原始数据),我可以控制它的曝光时间。我希望控制曝光时间,使得当它捕获图像时,图像的亮度是正确的(不过度曝光或不欠曝光)。
我认为我需要类似这样的算法:
1-capture a sample image
2-calculate image brightness.
3-calculate correct exposure.
4-capture a new image,
5-check that the image brightness is correct if not go to step 3.
6- capture final image.
我的问题是:
- 如何计算图像亮度?
- 如果我计算了图像亮度,如何计算曝光?一种方法是进行搜索(例如从非常快的曝光时间开始逐渐增加直到获得正确的曝光,但这是非常耗时的,是否有更好的方法可以做到这一点?
- 要做到这一点,我可能需要校准我的相机(因为不同传感器之间的亮度和曝光时间之间的关系是不同的),我该怎么做?
我正在使用OpenCV,我可以使用OpenCV(c ++)中提供的算法。