本文主要是介绍彩色相机工作原理——bayer格式理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
早期,图像传感器只能记录光的强弱,无法记录光的颜色,所以只能拍摄黑白照片。
1974年,拜尔提出了bayer阵列,发明了bayer格式图片。不同于高成本的三个图像传感器方案,拜尔提出只用一个图像传感器,在其前面放置一个布满滤光点的滤光片。滤光点只能通过红、绿、蓝其中的一种颜色。
滤光点有规律地排布,每个绿点的四周,分布着2个红点、2个蓝点、4个绿点。这意味着,整体上,绿点的数量是其他两种颜色点的两倍。这是因为研究显示人眼对绿色最敏感,所以滤光层的绿点最多。
每个滤光点周围有规律地分布其他颜色的滤光点,那么就有可能结合它们的值,判断出光线本来的颜色。第一张图片中像素颜色空缺的值可以通过各种插值手段进行填充。
例如,黄光由红光和绿光混合而成,黄光通过滤光层后,红点和绿点下面的像素都会有值,但是蓝点下面的像素没有值。逆推可知,一个像素周围都是红色和绿色,且没有蓝色,则该像素原本颜色为黄色。
这种计算颜色的方法,称为“去马赛克”。原本图像只有四种颜色,红、绿、蓝、黑。
可以看出下半图像是四种颜色的小格子组合的,通过算法实现“去马赛克”,得到上半图像,输出彩色图像。
参考文章:为什么数码相机可以拍出彩色照片? - 阮一峰的网络日志 (ruanyifeng.com)
这篇关于彩色相机工作原理——bayer格式理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!