彩色相机工作原理——bayer格式理解

早期,图像传感器只能记录光的强弱,无法记录光的颜色,所以只能拍摄黑白照片。

1974年,拜尔提出了bayer阵列,发明了bayer格式图片。不同于高成本的三个图像传感器方案,拜尔提出只用一个图像传感器,在其前面放置一个布满滤光点的滤光片。滤光点只能通过红、绿、蓝其中的一种颜色。

滤光点有规律地排布,每个绿点的四周,分布着2个红点、2个蓝点、4个绿点。这意味着,整体上,绿点的数量是其他两种颜色点的两倍。这是因为研究显示人眼对绿色最敏感,所以滤光层的绿点最多。

每个滤光点周围有规律地分布其他颜色的滤光点,那么就有可能结合它们的值,判断出光线本来的颜色。第一张图片中像素颜色空缺的值可以通过各种插值手段进行填充。

例如,黄光由红光和绿光混合而成,黄光通过滤光层后,红点和绿点下面的像素都会有值,但是蓝点下面的像素没有值。逆推可知,一个像素周围都是红色和绿色,且没有蓝色,则该像素原本颜色为黄色。

这种计算颜色的方法,称为"去马赛克"。原本图像只有四种颜色,红、绿、蓝、黑。

可以看出下半图像是四种颜色的小格子组合的,通过算法实现"去马赛克",得到上半图像,输出彩色图像。

参考文章:为什么数码相机可以拍出彩色照片? - 阮一峰的网络日志 (ruanyifeng.com)

相关推荐
呆呆的猫5 分钟前
【LeetCode】227、基本计算器 II
算法·leetcode·职场和发展
Tisfy7 分钟前
LeetCode 1705.吃苹果的最大数目:贪心(优先队列) - 清晰题解
算法·leetcode·优先队列·贪心·
余额不足1213828 分钟前
C语言基础十六:枚举、c语言中文件的读写操作
linux·c语言·算法
火星机器人life3 小时前
基于ceres优化的3d激光雷达开源算法
算法·3d
虽千万人 吾往矣3 小时前
golang LeetCode 热题 100(动态规划)-更新中
算法·leetcode·动态规划
arnold664 小时前
华为OD E卷(100分)34-转盘寿司
算法·华为od
ZZTC4 小时前
Floyd算法及其扩展应用
算法
lshzdq4 小时前
【机器人】机械臂轨迹和转矩控制对比
人工智能·算法·机器人
2401_858286115 小时前
115.【C语言】数据结构之排序(希尔排序)
c语言·开发语言·数据结构·算法·排序算法
猫猫的小茶馆5 小时前
【数据结构】数据结构整体大纲
linux·数据结构·算法·ubuntu·嵌入式软件